Utilice el microcontrolador c51 para presionar el botón de matriz 4*4 y el tubo digital mostrará 0-F, que se puede mostrar normalmente. Sin embargo, los números 0 y 7 a veces cometen errores. Por favor, ayuden.
/****************************************** ******************
Tipo: Teclado matricial.
Fenómeno: después de presionar el teclado, el tubo digital muestra el número correspondiente 0-F
Declaración de que este programa es solo para aprendizaje y referencia, indique los derechos de autor y la información del autor cuando citando!
********************************************* *** *******************/
#includelt;reg52.hgt; //52 archivo de encabezado del microcontrolador, generalmente no lo cambie, contiene la definición de registros de funciones especiales
#define uchar unsigned char //Defina unsigned char como uchar para simplificar la entrada y la escritura. Mejore la velocidad de programación
#define uint unsigned int //Defina unsigned char como uint para simplificar la entrada y la escritura.
Mejora la velocidad de programación
sbit H1=P0^4; //Los cuatro bits superiores corresponden a P04-P07 respectivamente
sbit H2=P0^5;
sbit H3 =P0^6;
sbit H4=P0^7;
void main()
{
P2=0x00 ; / /Apaga el tubo digital, el tubo digital no muestra
while(1)
{
P0=0xfe
<; p> if(H1= =0){P2=0x3f;} //Presiona el teclado S1, muestra "0"if(H2==0){P2=0x06;} //Presiona el teclado S2 , muestra "1"
if(H3==0){P2=0x5b;} //Presiona S3 en el teclado para mostrar "2"
if(H4==0 ){P2=0x4f;} / /Presione S4 en el teclado, se muestra "3"
P0=0xfd;
if(H1==0){P2=0x66; } //Presione S5 en el teclado, se muestra "4"
if(H2==0){P2=0x6d;} //Presione S6 en el teclado para mostrar "5"
if(H3==0){P2=0x7d;} //Presione S7 en el teclado, se muestra "6"
if(H4==0){P2=0x07;} / /Presione S8 en el teclado, se muestra "7"
P0=0xfb ;
if(H1==0){P2=0x7f;} //Presione S9 en el teclado para mostrar "8"
if(H2==0){P2=0x6f } //Presione S10 en el teclado, se muestra "9"
if(H3== 0){P2=0x77;} //Presione S11 en el teclado, se muestra "A"
if( H4==0){P2=0x7c;} //Presione S12 en el teclado para mostrar "b"
P0=0xf7;
if(H1==0){P2=0x39 ;} //Presiona el teclado S13, se muestra "c"
if(H2==0){P2=0x5e;} //Presiona el teclado S14, se muestra "d"
if (H3==0){P2=0x79;} //Presiona S15 en el teclado para mostrar "E"
if(H4==0){P2=0x71;} //Presione S16 en el teclado para mostrar "F"
} p>
}
Debes dar puntos. ¡Quiero descargar algo y el programa debe estar bien! !