Programación de tiempo compartido
# include ltreg 51.h gt; función principal
Unsigned char tab[]={0xc0, 0xf9, 0xa4, 0xb0 , 0x99, 0x92, 0x82, 0xf8, 0x80, 0x 90}; Definir matriz 0-9
Variable definida int sin signo tmp
Retraso vacío (unsigned int xms) define la función de retraso .
{unsigned int j, I;
for(I = 0; i ltxmsi)
for(j = 0; j lt100; j); /p>
}
Void disp() define una subfunción.
{
p 1 = tmp
Retraso(1);
P2 = 0x ff; >tmp=tmplt. lt1;
}
void main()
{
Carácter sin signo z, s=00, m=00, h = 00 le da al reloj un valor inicial
while(1)
{
for(z = 0; z lt100; z )
{
tmp = 0x 01;
P2 = tab[h/10]; visualización de hora
disp();
P2 = tab[h 10];
disp();
P2 = tab[m/10]; Visualización de minutos
disp(); p>
p>
P2 = tab[m 10];
disp();
P2 = tab[s/10]; >
disp ();
P2 = pestaña[s 10];
disp();
}
s ;
Mientras(s==60) avanza un bit por segundo y se borra a 60.
{
m
s = 00
}
Mientras (m==60) cada uno El minuto avanza un dígito y se borra 60.
{
h
m = 00
}
Mientras(h==24) cada uno La hora avanza un dígito y se pone a cero a las 24 horas.
{
h=00
}
}
}