LED显示屏的的工作原理及驱动电路
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
LED点阵显示控制
1原理与方案
1.1原理
对于点阵型LED显示可以采用共阴极或共阳极,本系统采用共阳极,其硬件电路如图1所示。当行上有一正选通信号时,列选端四位数据为0的发光二极管便导通点亮。这样只需要将图形或文字的显示编码作为列信号跟对应的行信号进行逐次扫描,就可以逐行点亮点阵。只要扫描速度大于24 Hz,由于扫描时间很快,人眼的视觉有暂留效应,就可以看到显示的是完整的图形或文字。
图1 硬件电路
本次设计要完成基于单片机的LED点阵显示控制的设计,总体方案是以单片机为控制核心,通过行列驱动电路,在LED点阵屏上以左移方式显示文字。在设计过程中驱动电路运用动态扫描显示,动态扫描简单地说就是逐行轮流点亮,这样扫描驱动电路就可以实现多行(比如16行)的同名列共用一套列驱动器。由于静态扫描显示(并行传输)的局限性,故采用动态扫描显示(串行传输),显示模式用LED点阵屏模块作显示屏。
1.2 总体方案
本次设计单片机采用AT89C51,行电路使用逐行扫描的方式,列电路使用串入并出的数据传输方式,显示屏使用由16x16的点阵LED组成的点阵模块。使用到的芯片4线-16线译码器74LS154和三极管8550。总体设计框图如图2所示。
2.3 复位电路
AT89C51的复位引脚(RESET)是第9脚,当此引脚连接高电平超过2个机器周期时,即可产生复位的动作。以24 MHz的时钟脉冲为例,每个时钟脉冲为05μs,两个机器周期为1 μs,因此,在第9脚上连接1个2μs的高电平脉冲,即可产生复位动作。最简单的就是只有1个电阻跟1个电容就可构成可靠复位的电路,电阻选择10 kΩ,电容选择10μF,如图4所示。
图4 复位电路
2.4 点阵显示驱动电路设计
采取分立元件三极管作驱动电路,驱动电路如图5所示。
图5 点阵显示驱动电路
3 系统软件设计
显示屏软件的主要功能是向显示屏提供显示数据,并产生各种控制信号,使屏幕按设计的要求显示。
根据软件分层次设计的原理,可把显示屏的软件系统分成两大层:第一层是底层的显示驱动程序,第二层是上层的系统应用程序。显示驱动程序负责向点阵屏传送特定组合的显示数据,并负责产生行扫描信号和其他控制信号,配合完成LED显示屏的扫描显示工作。显示驱动程序由显示子程序实现;系统环境设置(初始化)由系统初始化程序完成;显示效果处理等工作,则由主程序通过调用子程序来实现。
3.1 显示驱动程序
显示驱动程序在进入中断后首先要对定时器T0重新赋初值,以保证显示屏刷新率的稳定。16行扫描格式的显示屏刷新率(帧频)的计算公式如下:
其中:F为晶振频率;T为定时器T0初值(工作在16位定时器模式)。
其次,显示驱动程序查询当前点亮的行号,从显示缓存区内读取下一行的显示数据,并通过串口发送给移位寄存器。
为消除在切换行显示数据时产生的拖尾现象,驱动程序先要关闭显示屏,即消隐,等显示数据输入输出锁存器后,再输出新的行号,重新打开显示。图6所示为显示驱动程序(显示屏扫描函数)流程图。
图6 显示驱动程序流程图
3.2 系统主程序
系统主程序开始以后,首先是对系统环境初始化,包括设置串口、定时器、中断、端口。然后以“卷帘出”效果显示文字或图案,停留几秒钟,接着向上滚动显示汉字或图形,停留几秒后,再左移显示汉字或图形、右移显示等。最后以“卷帘入”效果隐去文字。图7所示为系统主程序的流程图。
图7 系统主程序的流程图
4 软件仿真与硬件实现
4.1 软件仿真
本设计的核心单元是单片机AT89C51,所以选用单片机仿真软件Proteus 7.O和Keil对整体设计进行软件仿真。
运行Proteus中的ISIS模块对设计好的原理图进行布图,仿真电路如图8所示。
图8 仿真电路
将完整的源程序Copy到Keil仿真开发环境里,运行调试。把编译好的源程序加载到仿真电路图中,运行程序,在点阵显示屏上按设计的显示效果依次以“卷帘入”、“左卷帘”、“右卷帘”、“卷帘出”显示结果正确。
4.2 硬件实现
软件仿真通过后,充分证明了方案的正确性与可行性。按照设计方案进行硬件电路的搭建并进行调试。结果正确如下图9所示。
图9 硬件实物图
5 结束语
本文通过设计基于单片机的LED点阵显示控制的设计,对LED显示模块单元如何进行行列信号控制及信号传输中的驱动问题进行了研究。给出了硬件的原理以及连接的方法,软件的设计流程以及部分代码,并给出了完整的电路图,结果可以正常显示汉字、图片信息,并且可动态显示。