Red de conocimiento informático - Conocimiento informático - Espero que los expertos puedan ayudarme a resolver este problema.

El diseño del reloj digital requiere un diagrama de circuito más detallado. Envíe el diagrama de circuito a mi correo electrónico 961571181@qq.com.

Espero que los expertos puedan ayudarme a resolver este problema.

El diseño del reloj digital requiere un diagrama de circuito más detallado. Envíe el diagrama de circuito a mi correo electrónico 961571181@qq.com.

#includelt;reg51.hgt;

#define?uchar?unsigned?char

#define?uint?unsigned?int

sbit?le=P1^0;

sbit?key1=P3^7;

sbit?key2=P3^6;

sbit?key3= P3^5;

uchar?hora, minuto, segundo, t0, a8, a7, a5, a4, a2, a1

void?init();

void?display(uchar?a8, uchar?a7, uchar?a5, uchar?a4, uchar?a2, uchar?a1);

uchar?discode[]={0x3f, 0x06, 0x5b, 0x4f, 0x66, 0x6d, 0x7d, 0x07, 0x7f, 0x67};

void?delay(uint?z)

{ uint?x, y; 0; xlt; z (); mientras(1) {? si(clave1==0)?

{? > si(clave1== 0)?

?{

si(clave1==0)?

segundo ;?

si(segundo==60 )?

?{

si(segundo==60)?

segundo=0;?

?}

?

a1=segundo10;?

a2=segundo/10

?} while(clave1== 0);?

?}? si(clave2==0)?

retraso(10);

si(clave2==0)?

{?

minuto ;?

si(minuto==60)?

{?

}?

a4=minuto10;?

a5=minuto/10;?

}mientras(clave2==0) ; }?

if(key3==0) {?

retraso(10);

if(key3==0)

{?

p>

hora ;?

if(hora==24)

{? ;?

}

a7=hora10;?

?a8=hora/10;

}mientras(clave3==0 } } } mostrar(a8, a7, a5, a4, a2, a1 }

}

}

void?init()

{ hora= 12;< TMOD=0x01; TH0=(65536

-50000)/256; TL0=(65536-50000)256; EA=1; ET0=1;

}

void?timer0()?interrupción?

{ TH0=(65536-50000)/256; TL0=(65536-50000)256; si(t0==20) {

?t0=0;

segundo ;

if(segundo==60)

{

segundo=0;

minuto ;

if(minuto==60)

{

?minuto=0

?hora; > ?if (hora==24)

?{

? hora=0

?}

}

}

a2=segundo/10

a1=segundo10

a5=minuto/10; =minuto10;

a8=hora/10;

a7=hora10;?10;?

}?

}

void?display(uchar?a8, uchar?a7, uchar?a5, uchar?a4, uchar?a2, uchar?a1)

{ P2=0x7f; =discod[a8];? le=0; retraso(1);

P2= 0xdf; le=1; P0=0x40; < le=0; P2=0xf7; 1; P0=discode[a4]; le=0;?retraso(1);

P2=0xfb; le=0x40; p>

p>

P2=0xfd; le=1; P0=descodificar[ a1]; =0; retardo( 1);

}?

Nota: J16 está conectado al puerto P2 del microcontrolador y J12 está conectado al puerto P0 del microcontrolador.