Red de conocimiento informático - Material del sitio web - Reloj digital basado en STC89C58RD

Reloj digital basado en STC89C58RD

Este es el código fuente del experimento que hice originalmente y fue exitoso. (Original, sin distribución externa)

Si su experimento no tiene éxito, pregúntele a su instructor, el programa detectará uchar dis[]={0x20, 0x10, 0x08, 0x04, 0x02, 0x01}; interfaces mostradas por estos seis tubos digitales.

Si tienes alguna pregunta, ponte en contacto conmigo. ¡Te deseo éxito!

/Código fuente del experimento del reloj digital

#includelt;reg51.hgt;

#includelt;absacc.hgt;

#define ZX XBYTE[ 0xffDC]

#define uchar data num[6];

uchar disptab[]={0xc0, 0xf9, 0xa4, 0xb0, 0x99,

0x92, 0x82, 0xf8, 0x80, 0x90}; /* 0-9 */

uchar dis[]={0x20, 0x10, 0x08, 0x04, 0x02, 0x01};

uchar hora=0, minuto=0, segundo=0 , i, j;

void time0(); /* programa de temporizador*/

void bcchange(); * conversión de decenas de dígitos*/

void disp() /* programa de visualización*/

void time0() interrupción 1 uso 3 /* programa de temporizador*/

{

TL0 =0XB7;

TH0=0X3C;

contar--;

{

cuenta=10

segundo

}

si( segundo==60)

{

minuto

segundo=0

}

if(minuto==60)

{

hora

minuto=0

}

if(hora==24)

{

hora=0

}

}

}

void bcchange() /* Conversión de decenas* /

{

num[5]=segundo10

num[4]=segundo/10; /p>

num[3] =minuto10;

num[2]=minuto/10

num[1]=hora10; núm[0]=hora/10;

}