基于ARM的LED点阵屏实时控制电路设计

2015-07-02 16:57覃日娜
广西教育·C版 2015年6期

【摘 要】详细介绍基于ARM7 LPC2148芯片作为处理器的大屏幕LED点阵屏实时控制电路的基本原理与实现方案。该控制电器由LED点阵屏、驱动电路、屏列控制、屏行控制、掉电保护、串口通信和CPU总控制等构成。经过实践,电路实现了实时控制、多显示的功能,解决了手写传媒的操作烦琐、传媒效果不佳等问题。

【关键词】实时控制电路 LED ARM7处理器 VC上位机软件

【中图分类号】 G 【文献标识码】 A

【文章编号】0450-9889(2015)06C-0176-03

大幕布点阵LED屏是一种大角度、高亮度、节能环保、低成本、寿命长、易于数字化控制及环境适应能力强的公用信息发布系统,已广泛应用于商场、车站、银行、企事业单位等公共场所。本文将以大幕布点阵LED屏通用控制器作为研究内容,实现对大屏幕LED显示屏的实时控制与显示。

一、大屏幕LED屏通用控制器总体设计思路

(一)分析显示驱动方案。驱动可以选用静态驱动或动态驱动。静态驱动是指每列LED都由一个单片机的I/O端口进行驱动,如驱动16×64LED灯进行静态显示则需要16×64=1024根I/O端口来驱动。而实际应用中,很少器件拥有这么多根I/O端口,就需要增加锁存器进行驱动,如此就增加了硬件电路的复杂性,不符合现实。动态驱动是将一列LED的阳极端连接在一起,需使用64根I/O端口和LED的阳极端连在一起,这样显然不合适,改选用一个串转并的芯片与64个LED阳极相连,这样只需要少量的I/O端口就可以控制64个LED阳极端了。另外,再将一行LED阴极端连在一起,那么就要16根I/O端口线,为了减少I/O端口的使用量,可选用一块译码芯片来进行阴极的位选通控制,由单片机的I/O控制位选通来间接控制位选信号。当单片机输出字模数据时,同一列LED都收到相同的字符信号,但究竟是哪行显示,取决于单片机对位选通端电路的控制,使用者只需将显示的一排LED的位选通控制打开,该排就会显示出一排数据,没有选通的其他排就不会亮。通过分时分行显示,就能显示整个屏幕的数据。

(二)确定掉电保护方式。在测量、控制等领域的应用中,常要求单片机内部和外部RAM中的数据在电源掉电时不丢失,重新加电时,RAM中的数据能够保存完好,这就要求对单片机系统加接掉电保护电路。在此,采用EEPROM来保存数据。其根据实际需要,掉电时保存一些必要的数据,使系统在电源恢复后,能够继续执行程序,经济实用。同时,EEPROM既具有ROM掉电不丢失数据的特点,又有RAM随机读写的特点。

(三)确定与上位机通信方式。常用的与上位机通信方式有三种方法:一是并口通信;二是串口通信;三是USB通信。在此,选用的是目前使用较多的串口通信方式。

(四)选用合适的芯片。本控制系统以LPC2148为总控制CPU,使用串入并出器件74HC595器件作为LED屏列控制,4线—16线编码器74HC154为LED屏行控制,AT24C02为掉电保护,MAX3232为串口通信,以及VC上位机软件,实现大屏幕LED的实时控制,如图1至图5所示。

二、硬件电路设计

(一)电路硬件设计图。根据电路需要实现的功能及选用的芯片特点,设计出电路硬件设计图,如图6所示。再根据LPC2148的各个管脚功能,连接电路。其中LPC2148的P00口和P01口有UART0串行口通信功能,所以MAX3232的TXDIN(10脚)端口连接P00口上,RXDOUT(9脚)端口连接到P01口上,而TXDOUT(7脚)端口则连接到9针“D”连口的2脚上,RXDIN(8脚)端口连接到管3脚上;P02、P03端口据有I2C的功能,所以AT24C02可以连接在这两个管脚上,P02端口接到AT24C02 SCL(6脚)的管脚上,并接一个10K欧的上拉电阻,P03端口接到AT24C02 SDA(5脚)的管脚上,并接一个10K欧的上位电阻,AT24C02的地址A0、A1、A2接地,表示从器件的地址为0,WP接地,关闭写保护,让器件具有读写的功能;LPC2148的四个I/O端口P05、P06、P07、P08与74HC154的4线控制端口相连接,74HC154的16个输出端口按顺序分别与LED行共阴极连接;再根据电路的置线方便,使P013、P011、P09端口分别接在74HC595的SCLK(11脚)、ENABLE(13脚)、RCLK(12脚)上,P015端口接到最右边的74HC595的SI(14脚)上;16块8×8的LED点阵块接图连成16行、64列的点阵块。电源由LPC2148的核心板提供,这里就不做介绍。这样就完成了电路原理图的连接。

(二)总控电路Protel原理图和PCB图。由于篇幅原因,LED屏的Protel原理图和PCB图在此省略,只列出总控电路的Protel原理图和PCB图,如图7和图8所示。

三、软件程序设计

(一)软件流程序图。软件流程序图如图9所示。

(二)软件整合。整合程序的思想为:首先程序进入main主函数,先初始化各个模块,包括LPC2148初始化、各管脚的功能设置;74HC595管脚初始化;内部定时器初始化;I2C初始化;串口通信UART0初始化。然后显示标题,标题为4个汉字即可,延时显示一段时间,接着从AT24C02中读出掉电保护的数据,数据的存贮依照是否为新数据显示来保存的,即有从上位机软件发来的数据,触发UART0串口中断,接收发过来的数据,而后调用发送程序把数据存贮到AT24C02中覆盖上次的数据,并保存起来,更新显示。其中从上位机发送过来的数据中含有显示方式信息、显示移动速度信息,方便显示效果的调整。最后是一个while死循环,里面就是显示子程序,最终完成整个程序的整合。

四、VC上位机软件

VC是一个windows操作系统的面向对象编程的软件。可以编写本次设计所需的上位机软件。可以编写一个对话框,通过按钮来控制输入框的字符的操作,以ASCⅡ的形式发送字符出去。

(一)上位机软件流程图。上位机软件流程图如图10所示。

图10 上位机软件流程图

(二)上位机软件的实现。在软件中,定义了一个char形的数组用于缓冲待发送的数组,当点击显示方式按钮时,则把显示方式的控制字放入缓冲数组中;当点击移动速度按钮时,则把移动速度控制字放入缓冲数组的另一个的地方;当点击发送按钮时,则把编辑框中的内容以及控制字发送出去。

(三)上位机软件的使用方法。打开上位机软件,可以看到上面有操作的步骤,第一步选择显示方式,有三个选项,一个是左移,一个是上移,一个是不移动,使用者可根据自己的需要进行选择;第二步选择移动速度,有五个选项,分别是很快、快、中、慢、很慢。使用者可自行选择;第三步写入发送数据,待发送的数据可以通过字模生成软件得到,复制过来,粘贴到编辑框,点击发送,即可完成数据的发送。

五、电路板和PC上位机软件的联机使用

通过以上的所有工作,现在已可以使电路板与PC机相连。使用一根串口数据线,其中一端接到PC机的串口上,另外一端接到电路板的串口,使电路板接上电源,打开PC上位机软件,等待标题显示完毕,即实现实时控制大屏幕LED显示屏的数据显示。

六、结论

通过实践,本系统完成了通用控制的功能,而且做到了硬件电路与上位机软件的基本稳定,其最终实现的功能如下:一是显示4个汉字或8个英语字符,显示方式和移动速度可以选择;二是显示方式有三种:左移、上移、不移动;三是显示移动速度有五种:很快、快、中、慢、很慢;四是具有掉电保护功能;五是通过串口与PC机相连,可以通过上位机软件对显示字符、显示方式、显示移动速度进行实时控制。

带上位机软件的大屏幕点阵LED屏通用控制器系统的开发研究,解决了手写传媒的操作繁琐、传媒效果不佳等问题,本系统优点在于具有实时控制、多显示方式效果。

【参考文献】

[1]张玉杰,马立云,张贺艳.基于ARM 和FPGA的LED 显示屏控制系统的设计[J].计算机测量与控制,2009(12)

[2]马忠梅,马广云,等.ARM嵌入式处理器结构与应用基础[M].北京:北京航空航天大学出版社,2002

[3]王卫东.模拟电子电路基础[M].西安:西安电子科技大学出版社,2003

[4]江国强.现代数字逻辑电路[M].北京:电子工业出版社,2002

[5]何立明,等.单片机原理及应用教程[M].北京:电子工业出版社,2003

[6]郭宝增,邓淳苗.基于FPGA 的LED 显示屏控制系统设计[J].液晶与显示,2010(3)

【作者简介】覃日娜(1983- ),女,壮族,广西柳江人,柳州职业技术学院电子信息工程专业助教,天津职业技术师范大学在读研究生,研究方向:电工与电子技术、现代信号处理。

(责编 黎 原)