本帖最后由 雷一刀 于 2018-1-29 16:04 編輯
4位共陰極,首位0不顯示
uchar num[] ={0,0,0,0};
uchar code T_COM[]={0xfe,0xfd,0xfb,0xf7};
uchar code leddata[]={ 0x3F,0x06, 0x5B, 0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F};
void Delay_Ms(uint z)
{
uint x,y;
for(x = z;x > 0;x--)
for(y = 114;y > 0;y--);
}
void Display(uint a)
{
uchar i;
num[0] = a/1000%10;
num[1] = a/100%10;
num[2] = a/10%10;
num[3] = a/1%10;
for(i = 0;i < 3;i++)
{
if(num != 0) break;
}
for(;i < 4;i++)
{
P0 = 0xff;
we = 1;
P0 = T_COM;
we = 0;
du = 1;
P0 = leddata[num];
du = 0;
Delay_Ms(3);
}
}
|