使用单片机操控6个共阴极8段数码管显现,能够经过两个锁存器别离进行位选(方位即哪个数码管)和段选(数码管的哪一段即显现什么数)。74HC573锁存器使能端为低电平有用,当LE为高电平时,输出端(output)跟从输入端(D)改变;当LE为低电平时,输出端坚持LE为高电平时的值。单片机经过锁存器操控数码管的电路图如图1所示:
阐明:
1)、数码管为共阴极的,当位选Q0~Q5,呼应位为0时为选中,为1为不选。如挑选第一个数码管P0=0xfe;
2)、共阴极数码管表(段选表)
0x3f , 0x06 , 0x5b , 0x4f , 0x66 , 0x6d ,
0 1 2 3 4 5
0x7d , 0x07 , 0x7f , 0x6f , 0x77 , 0x7c ,
6 7 8 9 A B
0x39 , 0x5e , 0x79 , 0x71 , 0x00
C D E F 无显现
0 1 2 3 4 5
0x7d , 0x07 , 0x7f , 0x6f , 0x77 , 0x7c ,
6 7 8 9 A B
0x39 , 0x5e , 0x79 , 0x71 , 0x00
C D E F 无显现
3)、共阴极位选表
0xfe,0xfd,0xfb,0xf7,0xef,0xdf
1 2 3 4 5 6 (挑选哪一位)
3)、一般先进行位选然后锁存住,再进行段选锁存住,程序举例
sbit dula=P2^7;
sbit wela=P^8;
while(1)
{
wela=1;//位选
P0=0xfe;//位选第二个数码管
wela=0;//位锁存
dula=1;//段选
P0=0x39;//显现6
dula=0;//段锁存
delay();//一般自己写个延时函数或使用中止定时器进行延时
}