1、 数码管基本知识及其驱动2009年12月14日 星期一 10:27数码管是一种半导体发光器件,其基本单元是发光二极管。1 实物参照图2 原理图一、数码管的分类数码管按段数分为七段数码管和八段数码管,八段数码管比七段数码管多一个发光二极管单元(多一个小数点显示) ;按能显示多少个“8”可分为1位、2位、4位等等数码管;按发光二极管单元连接方式分为共阳极数码管和共阴极数码管。共阳数码管是指将所有发光二极管的阳极接到一起形成公共阳极(COM)的数码管。共阳数码管在应用时应将公共极 COM 接到+5V,当某一字段发光二极管的阴极为低电平时,相应字段就点亮。当某一字段的阴极为高电平时,相应字段就不亮。共
2、阴数码管是指将所有发光二极管的阴极接到一起形成公共阴极(COM)的数码管。共阴数码管在应用时应将公共极 COM 接到地线 GND 上,当某一字段发光二极管的阳极为高电平时,相应字段就点亮。当某一字段的阳极为低电平时,相应字段就不亮。二、数码管的驱动方式数码管要正常显示,就要用驱动电路来驱动数码管的各个段码,从而显示出我们要的数字,因此根据数码管的驱动方式的不同,可以分为静态式和动态式两类。1. 静态显示驱动:静态驱动也称直流驱动。静态驱动是指每个数码管的每一个段码都由一个单片机的 I/O 端口进行驱动,或者使用如 BCD 码二-十进制译码器译码进行驱动。静态驱动的优点是编程简单,显示亮度高,缺
3、点是占用 I/O端口多,如驱动5个数码管静态显示则需要5840根 I/O 端口来驱动,要知道一个89S51单片机可用的 I/O 端口才32个呢:) ,实际应用时必须增加译码驱动器进行驱动,增加了硬件电路的复杂性。2. 动态显示驱动:数码管动态显示接口是单片机中应用最为广泛的一种显示方式之一,动态驱动是将所有数码管的8个显示笔划“a,b,c,d,e,f,g,dp“的同名端连在一起,另外为每个数码管的公共极 COM 增加位选通控制电路,位选通由各自独立的 I/O 线控制,当单片机输出字形码时,所有数码管都接收到相同的字形码,但究竟是那个数码管会显示出字形,取决于单片机对位选通 COM 端电路的控制
4、,所以我们只要将需要显示的数码管的选通控制打开,该位就显示出字形,没有选通的数码管就不会亮。通过分时轮流控制各个数码管的的 COM 端,就使各个数码管轮流受控显示,这就是动态驱动。在轮流显示过程中,每位数码管的点亮时间为12ms,由于人的视觉暂留现象及发光二极管的余辉效应,尽管实际上各位数码管并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示数据,不会有闪烁感,动态显示的效果和静态显示是一样的,能够节省大量的 I/O 端口,而且功耗更低。三、数码管参数8字高度:8字上沿与下沿的距离。比外型高度小。通常用英寸来表示。范围一般为0.25-20英寸。长*宽*高:长数码管正放时,水平方
5、向的长度;宽数码管正放时,垂直方向上的长度;高数码管的厚度。时钟点:四位数码管中,第二位8与第三位8字中间的二个点。一般用于显示时钟中的秒。四、数码管应用数码管是一类显示屏,通过对其不同的管脚输入相对的电流会使其发亮,从而显示出数字。能够显示、时间、日期、温度等所有可用数字表示的参数。由于它的价格便宜,使用简单,在电器,特别是家电领域应用极为广泛:空调、热水器、冰箱等等。绝大多数 水器用的都是数码管,其他家电也用液晶屏与荧光屏。1. 数码管使用的电流与电压电流:静态时,推荐使用10-15mA;动态时,16/1动态扫描时,平均电流为4-5mA,峰值电流50-60mA。电压:查引脚排布图,看一下每
6、段的芯片数量是多少?当红色时,使用1.9V乘以每段的芯片串联的个数;当绿色时,使用2.1V 乘以每段的芯片串联的个数。2. 恒流驱动与非恒流驱动对数码管的影响 显示效果:由于发光二极管基本上属于电流敏感器件,其正向压降的分散性很大, 并且还与温度有关,为了保证数码管具有良好的亮度均匀度,就需要使其具有恒定的工作电流,且不能受温度及其它因素的影响。另外,当温度变化时驱动芯片还要能够自动调节输出电流 的大小以实现色差平衡温度补偿。 安全性:即使是短时间的电流过载也可能对发光管造成永久性的损坏,采用恒流驱动电路后可防止 由于电流故障所引起的数码管的大面积损坏。另外,我们所采用的超大规模集成电路还具有
7、级联延时开关特性,可防止反向尖峰电压对发光二极管的损害。超大规模集成电路还具有热保护功能,当任何一片的温度超过一定值时可自动关断,并且可在控制室内看到故障显示。3. 为什么数码管亮度不均匀关于亮度一致性的问题是一个行业内的常见问题。有二个大的因素影响到亮度一致性。一是使用原材料芯片的选取,一是使用数码管时采取的控制方式。 原材料-芯片的 VF 和亮度和波长是一个正态分布,即使筛选过芯片,VF和亮度和波长已在一个很小的范围了,生产出来的产品还是在一个范围内,结果就是亮度不一致。 要保证数码管亮度一样,在控制方式选取上也有差别最好的办法是恒流控制,流过每一个发光二极管的电流都是相同的,这样发光二极
8、管看起来亮度就是一样的了。如恒压控制,则导致 VF 不相同的发光二极管分到的电流不相同,所以亮度也不同。当然以上二个条件是相辅相成的。4. 怎样测量数码管引脚,分共阴和共阳找公共共阴和公共共阳:首先,我们找个电源(3到5伏)和1个1K(几百欧的也行)的电阻,VCC 串接个电阻后和 GND 接在任意2个脚上,组合有很多,但总有一个 LED 会发光的,找到一个就够了,然后 GND 不动,VCC(串电阻)逐个碰剩下的脚,如果有多个 LED(一般是8个) ,那它就是共阴的了。相反用 VCC 不动,GND 逐个碰剩下的脚,如果有多个 LED(一般是8个) ,那它就是共阳的。也可以直接用数字万用表,红表笔是电源的正极,黑表笔是电源的负极。5.数码管的驱动共阳的数码管,公共端可以用9012驱动;共阴的数码管,公共端可以用9013驱动。小尺寸的数码管每段只要一个 LED,压降大概1.8V,也就是说只要电压大于1.8V就可以点亮;大尺寸的数码管每段有多个 LED 串联组成,所以压降比较高,具体压降要看尺寸(例如,9cm 左右的数码管要9V 以上电压才能点亮) 。要注意 LED是电流型器件,电流不能过高,10mA 左右就够了。当数码管显示数字8时需要的功率最大,若驱动功率不足,则不会显示数字8。此问题的解决办法是减小数码管上的限流电阻阻值以增大驱动电流。