P22=1;}
if(min>,0xF8,0x80;
P23=0程序如下,0xF9,0xA4;
display(e);}
if(sec>8;
}
void display1(unsigned char e)
{P24=1;//59)
{min=0;
hour++;
display1(b);
display(f);
timer2();
while(1)
{b=sec%10;
c=sec/10,0xB0,0x99;定时器模式
CP_RL2=0; //,放在一起动态显示就不行了,还有display函数一放在主函数的while(1)中protues CPU就显示load 80%~90%,唉。
#include
void display2(unsigned char f)
{P23=1; //
void timer2()
{
RCAP2L=0xDC;
P24=0;}
if(hour>
unsigned char b,0x92,0x82;
k=k<<1;
P20=1;
}
P22=0;定时器2中断允许
EA=1;j++)
{
P20=0;
P21=k&0x80,0x90};
k=a[_data];
for(j=0;j<
unsigned char k;
unsigned char c;59)
{sec=0;
min++;23)
{hour=0;}
}
void display(unsigned char _data)
{int j;
TR2=1;T2溢出标志位必须软件清零
if(i==16)
{i=0;
sec++;定时器2开启
}
void zhongduan0() interrupt 5
{i++;
TF2=0; ////
RCAP2H=0x0B;
C_T2=0;自动重装
ET2=1;
unsigned char a[10]={0xC0;electronic watch.h>
#include<}
main()
{
P2=0x00;
display2(c)