虽然一开始是用的共阳数码管的段码表,但使用时取了反,就相当于在使用共阴数码管的段码表。
unsigned char const Tab[11]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff}; //共阳数码管段码表
PORTA=~Tab[k/10]; //取反了
可以直接在Tab数组中写共阴数码管的段码表,但我是复制的共阳数码管的段码表,懒得改,所以就直接在Tab[k/10]前面加~取反。
另外关闭数码管要用0x00,而不是0xff。0xff是共阳的才用的。
//关闭所有数码管
void close_led()
{
//共阴要用0x00
PORTA=0x00;
PORTB=0x00;
}
每显示完一个数码管完成后要关闭所有数码管,否则就会出现红影