Red de conocimiento informático - Computadora portátil - -16 código fuente

-16 código fuente

#¿Incluir? <REGX51. H>

¿#Definición? ¿Uchar? ¿No firmado? Té

#Definición? uint? ¿No firmado? (Igual que las organizaciones internacionales) Organizaciones internacionales

Uchar? Bit=0, Diez=0, Cien=0, Mil=0;

Uchar? ¿Código? espectáculo de luces[10]={? 0x3F, /*0*/

0x06, /*1*/

0x5B, /*2*/

0x4F, /*3*/

0x66, /*4*/

0x6D, /*5*/

0x7D, /*6*/

0x07, /*7*/

0x7F, /*8*/

0x6F, /* 9 */};? //* * *Tubo digital Yin

Wuchal? ¿Código? jz_code[17]={0xff,

0xee, 0xed, 0xeb, 0xe7,

0xde, 0xdd, 0xdb, 0xd7,

0xbe, 0xbd, 0xbb , 0xb7,

0x7e, 0x7d, 0x7b, 0x 77 }; //Código de teclado

uint? ¿Código? Data_square[]={0,

1,4,9,16,

25,36,49,64,

81,100,121,144,

169,196,225,256};//Cuadrado

¿No es válido? retraso (¿sin firmar?char?a)? //Retraso

{

¿Sin firmar? ¿Ciel? i;

cuando(a -)

for(I = 100;i>0;i-);

}

Uchar? Kbscan(void)//Escaneo de teclado

{

¿Sin firmar? ¿Ciel? Colgar, mentir, clave;

p 1 = 0xf 0;

Retraso (5);

mentir = p 1;

p 1 = 0x0f;

retraso(5);

colgar = p 1;

for(clave = 16;clave & gt0;clave-)

{

? if(jz_code[clave]==(colgar|mentir))? Romper;

}

¿Regresar? (Punto clave);

}

¿No válido? data_bcd(nulo)? //El resultado después de la descomposición al cuadrado

{

Uchar? i;

I = kbs can();

if (i!=0)

{

bits = Datos _ cuadrado [Yo]% 10;? //Bit

diez =(Datos _ cuadrado[I]% 100)/10;? //Diez personas

Cientos = (Datos _ cuadrado[I]% 1000)/100; //Cientos

Miles = Datos _ cuadrado[I]/1000;? //Miles

}

}

¿No válido? Pantalla (vacío) // Pantalla de tubo digital, método de depuración: ¿función de fluctuación en el intervalo del tubo digital? Delay (5); el cuarto nivel es para bajar el volumen.

{

datos _ BCD();

P0 = espectáculo led[mil]

P2 _ 0 = 0; /p>

Retraso (5);

P2 _ 0 = 1;

P0 = espectáculo de led[cientos]; 0;

Retraso(5);

P2 _ 1 = 1;

P0 = show de led[Diez];

P2 _ 2 = 0;

Retraso(5);

P2 _ 2 = 1;

P0 = show de led[bit];

P2 _ 3 = 0;

Retraso (5);

P2 _ 3 = 1;

}

¿Nulo? principal (no válido)

{

P2 = 0x ff;

mientras(1)

{

mostrar();

}

}