5.2.4.1 数码管显示基本原理
数码管其实就是若干个发光二极管有机组合在一起的。常见的是7段数码管,它是由8个发光二极管按一定方式组合在一起的。7段数码管分为共阳极和共阴极两种,如图5-4所示。
图5-4 数码管基本的结构
共阳极数码管是将数码管中所有发光二极管的阳极短接在一起,对应二极管的阴极为低时点亮,为高时熄灭;共阴极数码管是将数码管中所有发光二极管的阴极短接在一起,对应二极管的阳极为高时点亮,为低时熄灭。如果要显示字符“8”,对共阴极数码管而言,h段熄灭(阳极输入低电平“0”),a~g段都必须点亮(对应阳极输入高电平“1”),见表5-3。
表5-3 共阴极数码管显示字符8编码
可见,要让共阴极数码管显示字符“8”,段码h~a对应的十六进制是0x7f。对共阳极而言,请读者完成表5-4。
表5-4 共阳极数码管显示字符8编码
动一动
请读者结合上面的描述,给出显示数码0~9对应的数码管段码值。
想一想
要显示同样的字符,共阳极数码管和共阴极数码管的段码值有何关系?
5.2.4.2 数码管引脚的识别(www.xing528.com)
前面我们说过,数码管本质上是发光二极管的有序组合,下面我们先来学习1位数码管。它是用7个发光二极管排列成一个8字,外加1个发光二极管作为小数点。从外观上看,1位数码管有10个引脚,上下各5个,外观如图5-5所示。
图5-51 位数码管外观
一般地,1位数码管的引脚分布如图5-6所示。
图5-61 位数码管的引脚分布
图5-6中,COM为公共端,若是共阳极数码管则COM接电源VCC,若是共阴极数码管则COM接GND,其他各段有序接在控制引脚。这里有两点需要特别提示。
➢为方便编程,一般数码管的8个段应有序连接控制引脚,如使用P2口控制数码管,则P2.0接a段,其余类推,直到P2.7接dp段。这样的好处是明显的,对共阴极数码管而言,你往P2口写数据0x7f,则数码管显示数字“8”。而如果8个段码与P2口的8个位是“乱序”连接的,用户只能对8个段逐一控制,这种情况将十分烦琐。
➢与控制发光二极管一样,在各个段之间,请注意使用“限流电阻”。
我们知道根据,数码管可以显示0~9之间任意数字,并且还能显示小数点。当我们使用单片机来控制数码管时,几乎毫无例外地使用了“数组查表法”。即根据共阳极或共阴极数码管,构建一个存储器类型为code的一维数组,程序根据需要进行查表操作即可。
例如,对共阴极数码管,定义数组如下:
当要显示0~9之间的任意数字时,我们只要简单使用语句:P2=Tab[x],其中x为需要显示的0~9之间的数字。
动一动
假设数码管是共阳极的,请读者定义可显示数码0~9的数组,要求:数据类型为无符号字符型、存储器类型为code、数组名为Table、带有小数点显示。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。