下图所示是4位LED数码管, 它有两排共12个引脚, 其内部LED有共阳极和共阴极两种连接方式,
如下图所示,12 、 9、 8、 6脚分别为各位数码管的公共极,11 、7、 4、 2、 1、 10、 5、 3脚同时接各位数码管的相应段, 称为段极。
多位LED数码管的显示既可采用直接控制各段发光的静态显示方式, 也可采用动态驱动方式, 又称扫描显示方式。 为了让大家理解扫描显示原理, 这里以在第一图所示的4位LED数码管上显示“1278”为例来说明, 假设其内部LED为图(b) 所示的连接方式。
先给数码管的12脚加一个低电平(⑨、 ⑧、 ⑥脚为高电平) , 再给⑦、 ④脚加高电平(11 、 ②、 ①、 ⑩、 ⑤脚均为低电平) , 结果第1位的B、 C段LED点亮, 第1位显示“1”, 由于⑨、 ⑧、 ⑥脚均为高电平, 故第2、 3、 4位中的所有LED均无法导通而不显示; 然后给⑨脚加一个低电平( 12、 ⑧、 ⑥脚为高电平) , 给 11、 ⑦、 ②、 ①、 ⑤脚加高电平(④、 ⑩脚为低电平) , 第2位的A、 B、 D、 E、 G段LED点亮, 第2位显示“2”, 同样原理, 在第3位和第4位分别显示数字“7”、 “8”。
多位数码管的数字虽然是一位一位地显示出来的, 但人眼具有视觉暂留特性(所谓视觉暂留特性是指当人眼看见一个物体后, 如果物体消失, 人眼还会觉得物体仍在原位置,这种感觉保留约0.04s的时间) , 所以当数码管显示到最后一位数字“8”时, 人眼会感觉前面3位数字还在显示, 故看起来好像是一下子显示“1278”4位数。
下图所示是一个4位LED数码管显示电路。
ATmega8为8位AVR单片机, 它除了从PC1~PC4引脚输出位扫描信号外, 还分别从MOSI、 SCK引脚输出串行数据和时钟信号。
74HC164为串入并出芯片, 它在CLK引脚输入的时钟信号控制下, 将A、 B引脚输入的串行数据转换成并行数据, 即数据从A、 B引脚一位一位输入74HC164, 经转换后从Q0~Q7端同时输出8位数据, 送到4位LED数码管的A~G、 DP端, 数码管以扫描方式显示4位数。
单片机输出的位扫描信号和串行显示数据由编写的程序来决定。
联系客服