新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 大尺寸数码管的动态驱动和保护电路设计

大尺寸数码管的动态驱动和保护电路设计

作者:时间:2016-03-03来源:网络收藏

  引言

本文引用地址:http://www.eepw.com.cn/article/201603/287783.htm

  LED是单片机系统常用的显示器件,1英寸以上的LED的每个字段都是由多个发光二极管串、并联组成,在此称为大尺寸。大尺寸数码管虽然不能显示汉字等复杂字符,但数字显示效果好,可视距离远,成本低,符合人的视觉习惯,有着广泛的用途。其结构特性要求驱动电路提供较高的电压和电流,可用动态和静态方式驱动。笔者设计的“广电播控机房大尺寸综合显示器”就是用大尺寸数码管的方式实现的,本文给出的都是实际使用的电路。

  1 大尺寸数码管特性

    

 

  图1 大尺寸数码管的字段组成

  图1是深圳佳美公司JMS40011D 4英寸共阳高亮红色数码管各字段的组成。A~G 7个段都是由8只发光二极管串、并联而成;DP是小数点,由2只发光二极管串联而成。单个发光二极管的极限和光电参数如表1所列。

    

 

  图2 电路形式1

    

 

  表1 大尺寸数码管单个发光二极管的参数

  正向电流If(20 mA)是长时间静态驱动时的电流最大值,如果超过此值,将导致数码管寿命下降,甚至损坏。峰值电流Ipeak(100 mA)是时的脉冲电流最大值。JMS40011D的A~G字段的导通电压为7.2~8V,单管脉冲电流一般选50 mA,超过50 mA后其亮度就不与电流成比例增加了。

  2 动态驱动电路设计2例

  动态扫描驱动利用人眼的特性,分时进行LED数码管驱动,人眼感受的是有效亮度的平均值。其优点是驱动芯片少,电路简单,成本低。

  扩充电压、电流的驱动电路形式很多。图2、图3是“广电播控机房大尺寸综合显示器”显示部分的主要电路,由6只4英寸高亮红色共阳数码管(N1~N6)组成,主控单片机为美国Atmel公司的AVR系列ATmega16。主控单片机通过数码管驱动电路在大尺寸数码管上以一定时长分时显示“时、分、秒”、“年”、“月、日”、“温度”、“湿度”等信息。

  2.1 单片机完成扫描的动态驱动电路

  图2电路中,单片机ATmega16完成译码、动态扫描等功能。74LS07是6同相电平转换电路,输出级是集电极开路的晶体管,耐压30 V,驱动电流30 mA,在ATmega16PA0~PA5口电平控制下驱动Q1~Q6 PNP达林顿功率管TIP127,实现6只共阳数码管的字驱动。ULN2803是8位NPN达林顿阵列,耐压50 V,驱动电流500 mA,这里用于ATmega16 PC0~PC7口数码管段驱动的扩充。任一时刻,只有1个数码管得电,数码管的阳极接SA1~SA6,用于驱动电压取样。

  R1~R8是大尺寸数码管A~G字段的限流电阻,电阻值和功率根据以下因素计算:

  ◆ 大尺寸数码管的供电电压,各段的导通电压;

  ◆ TIP127和ULN2803的导通压降;

  ◆ 组成大尺寸数码管的单个发光二极管的驱动电流。

    

 

  图3 动态驱动电路形式2

    

 

  图4 保护电路

  本设计中,单个发光二极管的驱动电流为45 mA,供电电压12 V,限流电阻选用33 Ω,0.5 W规格。

  本电路占用单片机的I/O口较多,单片机要完成数码管的译码、扫描等任务,负担较重,但对一些小应用来说是不错的选择。

  2.2 专用芯片完成扫描的动态驱动电路

  后续设计中,系统增加了很多功能,单片机负担加重,大尺寸数码管显示时出现闪烁现象。增加专用芯片完成数码管的扫描驱动、按键检测等功能,以减轻单片机的资源占用,简化程序设计,效果很好,如图3所示。

  数码管显示驱动和键盘扫描控制芯片很多,作者选用的是南京沁恒电子有限公司生产的CH452L,其性价比较高。CH452L内置时钟振荡电路,可以动态驱动1英寸以下的8 位共阴数码管或者64 只LED,具有BCD 译码、闪烁、移位、段位寻址、光柱译码等功能;同时还可以进行64键的键盘扫描。CH452L 通过可以级联的4 线串行接口或者2 线串行接口与单片机等交换数据。这里使用4 线串行接口与ATmega16连接,具有编程简单、稳定可靠的特点。CH452L的第17脚(H3L2)是接口模式选择,接高电平为4线模式。

  CH452L也不能直接驱动4英寸数码管,必须进行扩充,扩充电路就是图1。单片机将显示的数据送给CH452L即可,由CH452L代替单片机完成译码和数码管的动态扫描等任务。

  3 保护电路设计

  3英寸以上的数码管,单块价格已超过单片机芯片。由于动态扫描驱动电路的特点,为了达到需要的亮度,每个LED所加的脉冲电流远大于静态驱动时的极限电流值。如果驱动电路有故障,长时间将大电流加在数码管上,将导致数码管烧伤、亮度严重衰减、寿命缩短、甚至损坏,因此要加必要的保护电路,如图4所示。

  3.1 驱动电路故障和危害

  在上述驱动扩充电路中,如果段驱动电路ULN2803损坏,只会出现显示混乱现象,对大尺寸数码管不造成伤害;如果字驱动达林顿管TIP127断路,只是相应位的数码管不显示,也无伤害;如果74LS07某位断路,TIP127不会导通,数码管也不会长时间过流。

  如果字驱动达林顿管TIP127短路或者74LS07的某位对地短路,相应位的大尺寸数码管将一直得电,造成数码管长时间过流损伤,因此必须避免这种情况发生。在扫描空隙时,检测数码管的阳极电压,就能发现这种故障。

  3.2 故障检测和保护

  如图4所示,在每个大尺寸数码管的阳极进行驱动电压取样,任一时刻只有1个数码管的字驱动被扫描选中,即TIP127导通。取样电压约为数码管的供电电压(这里是12 V),未选中的为0 V(TIP127截止后的漏电流极小,相当于完全关断)。通过ULN2803进行电平转换,送入单片机的PB口检测。所有大尺寸数码管通过继电器K1的常闭触点供电,K1受控于单片机的PA0口。

  对于图2电路,在每一轮数码管显示扫描程序开始前加上以下监测和保护代码:

  //显示扫描函数开始

  //监测和保护的关键代码示意,只用于说明取样、保护、报警的

  //编程思路

  VoltSampling=PINB;//读取PB口值,与取样电压相关

  //注意,ULN2803是反相的

  VoltSampling=~(VoltSampling&0x3F);//取低6位并反相

  If (VoltSampling>0){//不为0,说明有数码管一直得电,

  //字驱动电路有故障

  PORTA=PORTA&0xFE;//PA0,输出0,保护电路动作,

  //K1吸合切断所有数码管供电

  PORTA=PORTA&0xFD;//PA1,输出0,故障指示灯

  //LED1亮,报警

  }

  //原有数码管扫描代码开始

  //选通第一位数码管,输出相应代码

  对于图3电路,由于CH452L的第8个数码管字选位DIG7未用,因此用DIG7作为取样触发信号(SSTART)触发ATmega16的中断INT0,在中断程序中加入上述监测和保护代码,即可完成采样和保护功能。

  3.3 几个要点

  ① 如果不具备图2、图3电路的取样时机条件,可采取随机读取的方式。需要明确,任何时刻只有1个数码管得电工作,多于1个即可认为驱动电路有致命故障发生。

  ② 抗干扰:在取样电路并接小容量电容,滤除杂波干扰;软件采取多次采样、表决方式,防止保护电路误动作。

  ③ 取样电路的电平转换可以采取晶体管、光耦,甚至是电阻分压的方式。

  ④ 如果单片机I/O口数量不足,可以用74LS165(并行输入转串行输出)等电路进行取样电路扩展。

  ⑤ 对于由单片机完成扫描的动态驱动电路,要注意防止因程序设计不合理或者死机对大尺寸数码管造成的长时间过流损伤。专用数码管显示驱动和键盘扫描控制芯片多由纯硬件逻辑实现,不会出现死机现象。

  结语

  本文提及的大尺寸数码管动态驱动和保护电路,笔者经过产品实际验证过,价格低廉、性能可靠。其他类型的大尺寸数码管驱动、保护电路可参照此思路设计。在此抛砖引玉,希望对大家有所帮助。



关键词: 数码管 动态驱动

评论


相关推荐

技术专区

关闭