数码管内部其实是由多个LED灯(发光二极管)构成的“8”字型,如图(单个数码管):。
就发光二极管而言,体型小,制造方便;这样就使得数码管的价格也就比较低廉,结构组成也相对比较简单。由于引脚所连接的方式不同,可将其分为 共阴极连接、共阳极连接。?
?在上图中,a图是单个数码管内部的简略构造,b图是共正极连接,c图是共阴极连接。a~g、DP编号使得数码管可控,能够根据自己所需展示不同的数字。每一段内部可由多个LED构成,并不意味只有一个LED灯。引脚对应到数码管的编号,进行排列组合可以形成0~9数字。
每四个 单个数码管排列组合到一起,形成的就是四位一体数码管。如图:
?四位一体数码管的功能更加强大,比四个 单个数码管单独排列的引脚更少。电路图也更加简单明了,不如单个数码管的单独排列复杂难懂?。
上图所示是共阳极连接四位一体数码管的引脚示意图,共阴极可以类比单个数码管的引脚。由上图中电路可知(也是四位一体单片机的“缺陷”),每次在同一时刻只能够显示一个数字,不能够显示多个数字。可以利用人的视觉暂留来打破这一“缺陷”,在很快的速度切换数字,即可在同一时刻完成多个数字显示。
四位一体数码管也并不完全相连,共阳极分成了四个,在简单的51单片机中,数码管由两个四位一体数码管组成。要想实现单个数码管控制需要用到电器元件译码器。在单片机中使用的是74HC138译码器。实现对八个数码管的分别控制。下面左图为74HC138译码器的电路图,下面右图为译码器的真值表。当然也离不开单片机的核心微控制单元(MCU),单片机其实是一个微型的计算机。对于A、B、C,A为二进制的最低位,C为最高位。
?下图是51单片机中数码管的电路图。当有LED灯的基础时,学习数码管才会轻轻松松。VCC表示电源的正极,GND表示接地(电源的负极)。上图中的LED编号可对应到下图中的LED编号。
?
?单片机还离不开C语言,是由C语言编码而成的。下面是关于数码管的一个数字显示的快捷C语言函数,这样就不用每次去找线路来实现数字的显示。当在数码管上得心应手时,就可以创作出自己想创作的数字内容。
?