51/AVR单片机技术驿站!  <在线翻译>     便利工具    特色网址   无弹窗、无插件的绿色站点...  英才招聘   学历查询  喜欢>>收藏我站 

当前位置:首页 > 单片机技术文章 > 51单片机 > 详细内容
也谈LED驱动(转载)
发布时间:2009/6/29  阅读次数:1890  字体大小: 【】 【】【

作者:未知        文章来源:www.mcusy.cn  

       LED(Lite Emit Diode)显示是项目开发中经常遇到的一种显示方法,其具有亮度高、全视角、使用寿命长、驱动简单等特点,因而在一些高端和大型的器材和设备上使用较为广泛。下面就常用的LED显示及驱动方法作一说明:

       LED:本文所说的LED主要是指下列几种:


     7-段数码LED,分共阴和共阳两种,原理图见1和2;

       常用nxm LED点阵:如8x8 LED 点阵模块、5x7 LED点阵模块等,其也分为共阴和共阳两种;


       单个LED管。


       所谓共阴极,即是将所有LED的阴极连接到一起,而共阳极则相反,所有的阳极被连接到了一起。但不管哪种结构,其显示设计的原理基本相同,唯一的是其驱动的电路的设计有所差异,一般共阴极采用推(Push)电流的方式来驱动,而共阳极结构则采用拉(Pull)电流的方式来驱动。


       根据LED显示的硬件设计方法的不同,LED显示驱动分为静态法和动态法两大类,其具体的说明和编程方法分述如下:


1.  静态显示驱动法:


       所谓静态显示驱动法,即是指每一个LED灯分别对应一个独立的IO驱动口;其点亮和关闭由该IO来对其进行控制,互不干扰,见图3(注:对于IO驱动能力弱的MCU,必须增加外部的驱动芯片或驱动三极管等器件)。此种设计一般应用在对单个LED的驱动或LED数量较少,且所选的MCU IO比较充裕的情况下。比如一些项目的LED指示灯、产品的设计中只有一个7-段LED码需要显示等。
       由于每一个LED均由独立的IO口来控制,因此此种显示驱动的软件设计比较简单明了,无需特别的处理,在需要点亮和关闭时设置相应的IO输出口的电平即可(即“0”或“1”,具体须根据驱动电路的设计来决定)。

图 3


       优点:电路设计简单,编程简单,而且LED的亮度控制容易,只需在驱动端增加相应的电流调节电阻即可方便地实现亮度的调节(对于存在独立驱动的设计,还可以通过调整驱动电压来达到亮度的调节)。
       缺点:由于每一个LED灯需要一个IO口,因此对IO口的需求较大,不易实现大数量的LED驱动和显示,扩展性能差。


2. 动态的显示驱动法:

        与静态显示方法不同,动态LED显示的设计方法是将不同LED模块的所有的LED的驱动端一对一地连接到一起,见图4,而将其公共极(阴极或阳极)分别由不同的IO口来驱动(主要针对7-段码和LED点阵模块)。在此,我们称其公共极为扫描线或地址线(因此种连接方法类似于存储器的内部连接,每个LED点相当与Memory中的一个Bit),不同的LED模块(类似于Memory中的一个Byte)用不同的扫描线地址线来进行选定。

下图看不全可另存为下载:

     由于所有的LED模块公用了驱动端,因此LED的驱动不再像静态法一样为每个LED所独享,因此其驱动的设计方法也与静态法完全不同,需要采用分时扫描(也称动态扫描)方法来实现对所有LED的显示驱动,其原理如下(以图4为例):


a.      将A0设置为高电平,也即允许第一组LED显示,同时将A2,A3,A4设置为低电平,也即关闭该阴极所对应的LED组的显示;


b.      在P0口输出A0组对应的显示数据(也称为Pattern),如字符点阵数据,7-段码对应的数字的数据等,该数据可以通过ROM表的形式来预先定义;


c.      保持一定的时间T,该时间即为所设定定时器的中断时间;


d.      将A0口设置为低电平,关闭A0组LED的显示;


e.      将A1设置为高电平,其他几个设置为低电平,开启A1组对应的LED的显示;


f.        在P0口输出A1组对应的显示数据(也称为Pattern,意义同上);


g.      重复以上步骤,直到所有组被扫描一遍,然后又从A0组开始下一个循环,如此周而复始,实现所有LED的动态显示。


       该方法的原理利用了人眼对物体的视觉延迟来达到所有LED的同时显示,实际上,在每一个时刻,只有一组LED是处于显示的状态,而其他LED组均为关闭状态。理论上,若两次显示之间的时间间隔小于32ms时,人眼即无法分辨,因此,为了达到此要求,LED的扫描频率一般可按照下式计算得出:


f = 32 * N
式中,


         f为扫描的频率,对应为定时器的定时时间(T=1/f);
       32 则是由32ms换算而来,32ms对应的频率刚好为 32Hz;
         N则是总的LED的组数(此例中为N=4)。

我要评论
  • 匿名发表
  • [添加到收藏夹]
  • 发表评论:(匿名发表无需登录,已登录用户可直接发表。) 登录状态:未登录
最新评论
所有评论[0]
    暂无已审核评论!

网站导航 管理登陆 ┊ 免责声明 问题反馈  友链说明
本站部分内容来自网络共享资源,如有冒犯您的权利请来信告之删除或纠正!
不得对本站进行复制、盗链或镜像,转载内容须获得同意或授权;欢迎友情链接、站务合作!

    我要报警 Alexa
 mcusy_cn#126.com (请把#改成@) 交流:522422171
本站学习交流群:138..158(高级群1-)、77930286(高级群2)、61804809(群3)
Copyright© MCUSY All Rights Reserved
本站网警备案号: WZ36040002485
  ICP备案证书号:粤ICP备09034963号