不同的驅動,程序寫法不同。
如果直接用I/O口驅動,8位數碼管就這樣寫:
wei=位選
duan=段選
//斷碼表
uchar
code
shuzi[12]={0xc0,0xf9,0xa4,0xb0,0x99,//0,1,2,3,4,
0x92,0x82,0xf8,0x80,0x90,//5,6,7,8,9,
0x00,0xff};
void
led_scan(void)
{
uchar
i,j;//***陽數碼管
wei=0xff;
j=0x01;
for(i=0;i<8;i++)
{
duan=shuzi[i];
wei=!j;
delay(200);
j<<=1
}
wei=0xff;
}