uchar code table[]={0xc0,0xf9,0xa4,0xb0,0x99,
0x92,0x82,0xf8,0x80,0x90};开头这里就是段码定义,下面这里是显示子程序,把时和分的寄存器里的内容分成个十百千位,把对应段码定义里的数值发送到p1口。
void display()
{
P1=0xff;//消隐
ge=0;
shi=1;
bai=1;
qian=1;
P1=table[m%10];//gewei
delay(2);
P1=0xff;
ge=1;
shi=0;
bai=1;
qian=1;
P1=table[m/10];//shiwei
delay(2);
P1=0xff;
ge=1;
shi=1;
bai=0;
qian=1;
P1=table[h%10];//baiwei
delay(2);
P1=0xff;
ge=1;
shi=1;
bai=1;
qian=0;
P1=table[h/10];//qianwei
delay(2);
md=c%2;
delay(2);
}
|