Red de conocimiento informático - Aprendizaje de código fuente - Programación de teclas de control

Programación de teclas de control

# incluir & ltreg 51 . h & gt;

#Definir carácter sin firmar uchar

uchar sec, min, num

sbit led1=p1^0; /p>

sbit led2=p1^1;

sbit key=p3^2;

indicador de bits;

Retraso no válido (uchar x )

{

uchar i,j;

for(I = 0;i<x;i++)

for(j = 0; j<120;j++);

}

void t0isr() interrupción 1

{

TH0 =(65536 -50000)/256 ;

TL0 =(65536-50000)% 256;

num++;

if(num & gt;=20)

p>

{

núm = 0;

seg++;

if(seg>59)

{

seg = 0;

min++;

Interruptor (mínimo)

{

Caso 0: led 1 = 0 ;Romper;

caso 1:if(bandera){ led 1 = 0; min = 0; bandera = 0;}

Romper;

Caso 4 :led 1 = 1 ; led 2 = 0; romper

Caso 8: led 2 = 1

Por defecto: romper

}

if(min & gt;= 20)min = 0;

}

}

}

void text0() interrupción 0

{

Retraso(30);

if(clave==0)

{

mientras (!key);

bandera = 1;

seg = 0;

min = 0;

num = 0; /p>

led 1 = 1;

led 2 = 1

}

}

Principal()

{

TMOD = 0x 01;

TH0 = (65536-50000)/256

TL0 = (65536-50000) % 256;

ET0 = 1;

EA = 1;

EX0 = 1;

IT0 = 1; >

TR0 = 1;

led 1 = 0;

led 2 = 1;

bandera = 0;

p>

mientras(1);

}