基于LPC2214的LED显示屏控制系统硬件设计
2012-01-10陈希,勾荣,李农
陈 希,勾 荣,李 农
传统的大屏幕显示技术以简单的8位或者16位单片微控制器为核心,其运算速度、内存容量、存储空间和通讯方式等方面存在着很大的局限性,难以实现高难度图文动态特技显示和高灰度级显示的功能,无法满足信息容量大和处理速度很高的。
笔者提出基于LPC2214的控制系统的硬件设计。该系统以ARM为核心,将上位机发送的内容保存在存储芯片内,通过系统处理显示在LED屏上,实现全彩LED显示屏的异步控制,且画质稳定,色彩分辨率高,刷新频率高。
一、LED显示屏工作原理
1.LED工作原理
LED显示屏利用发光二极管点阵模块或像素单元组成的平面式显示屏幕。[1]每一个显示模块由一组二极管矩阵排列并进行封装而成。
由于LED不能直接用电源供电,一般采用扫描驱动的方式,该显示方式利用人眼的特性[2],LED以高频率的电流脉冲进行驱动时,人眼感受的是有效亮度的平均值。理论上,LED采用1∶16的方式驱动,脉冲电流应为恒流值的16倍,能得到相同的亮度效果。
2.异步全彩LED显示屏系统组成
LED显示屏由8×4个显示模块组成64×32的点阵,通过MOS管、3-8线译码器、单稳态触发器以及电流驱动芯片,实现对显示屏的控制。对外有CLK、STR、G1、G2、R1、R2、A、B、C等9个输入端。其功能如表1所示。
为了显示更多的内容,LED显示屏预留了级联端,可以64×32点阵为基数,扩展成更多点阵的显示屏。
表1 LED显示屏对外接口功能表
二、系统组成及硬件设计
1.系统组成
本系统选用的是NXP公司的LPC2214芯片,该芯片很适合终端类产品的开发。[3]LPC2214芯片引脚配置如图1所示。
图1 LPC2214芯片引脚配置图
本系统由ARM处理器LPC2214完成数据的接收控制,显示屏系统完成LED显示屏的驱动以及数据缓存,系统组成框图如图2所示。
图2 系统组成框图
2.电源电路
电源系统为整个系统提供能量,是整个系统工作的基础,具有极其重要的地位。对于LPC2214微控制器,只需要两组3.3V和1.8V,[4]原理图如图3和图4所示。另外部分器件需要5V直流稳压电源。
图3 输出3.3V电源电路
图4 输出1.8V电源电路
LPC2214微控制器1.8V电源消耗电流的极限值为70mA。为了保证可靠性并为以后升级留下余量,则电源系统1.8V能够提供的电流应当大于300mA。
整个系统在3.3V上消耗的电流与外部条件有很大的关系,这里假设电流不超过200mA,这样,电源系统3.3V能够提供600mA电流即可。分析得到以下参数:3.3V电源设计最大电流为600mA;1.8V电源设计最大电流为300mA。
3.FLASH存储器接口电路
FLASH存储器是一种可在系统进行在线擦写,掉电后信息不丢失的存储器。它具有低功耗、大容量、擦写速度快、可整片或分扇区在系统编程、擦除等特点。[5]与传统的ROM和EPROM相比,它可以通过与之相连的微处理器在线编程和擦除。作为一种非易失性存储器,FLASH在系统中通常用于存放一些在系统掉电后需要保存的用户数据等。
本系统中选用的FLASH存储器为SST39VF160,其工作电压为2.7V~3.6V,单片存储器容量为IM字节,16位数据宽度,采用48脚TSOP封装,可以以8位(字节模式)或16位(字模式)数据宽度的方式工作。该器件提供了70ns、90ns、120ns读取时间,无需高速微处理器插入等待状态进行速度匹配。
FLASH存储器在系统中用于存放需要显示的文字与图形信息,将LPC2214的PI.0/CS0与SST39VF160的片选信号CE端相连。此外,应将FLASH配置为16位数据宽度的工作方式。其接口线为:
数据线部分:LPC2214的低16位数据总线[P2.0/D0-P2.15/D15]与SST39VF160的[DQO-DQ15]相连。
地址线部分:LPC2214的[P3.1/A1-P3.20/A20]与SST39VF160的[A0-A19]相连。LPC2214的P1.0/CS0接至SST39VF160的片选端CE。
控制线部分: SST39VF160的读写线OE、WE分别与LPC2214的P1.1/OE、P3.27/WE相连。
图5 FLASH接口电路示意图
4.SRAM存储器接口电路
除了高校自行创作艺术文化作品以外,还有受到地方政府或国家政策扶持的艺术文化作品创作。以河北农业大学为例,2017年继李保国教授去世后,电影《李保国》、电视连续剧《太行赤子李保国》在河北农业大学相继开始拍摄。在拍摄过程中,我校学生通过参与影片的拍摄以及对李保国教授所带来的影响的学习和感受,使得学校众多学生,对李保国精神有了更深层次的理解,对“太行山精神”“太行山道路”与我校的联系有了更深刻的认识和感触。
SRAM不具有掉电保持数据的特性,但其存取速度远远高于FLASH存储器,且具有读/写的属性,同时利用ARM微处理器存储器接口提供的SRAM控制器接口。因此,本设计采用SRAM用于数据存储空间。[7]当系统启动时,CPU首先从复位地址0×0处读取启动代码,在完成系统的初始化后,所有的代码在片内FLASH中运行。同时,系统及用户堆栈则放在片内SRAM中。SRAM的容量是根据全局数据的最大数而确定的,本系统中使用的SRAM是IS61LV25616,单片存储容量为256K字节,16位数据宽度,工作电压为3.3V,访问速度为10ns,采用44脚TS0P封装。
图6 SRRAM接口电路示意图
三、总体设计
本设计采用C语言和汇编语言嵌套的方式,对时间有严格要求的任务切换函数、中断入口和出口程序采用汇编语言编写,作为启动代码的一部分。而由于主程序实现功能较多,而且对时间要求不太严格,因此采用可读性和移植性很强的C语言编写。
1.GPIO配置
屏体部分独立供电,有CLK、STR、G1、G2、R1、R2、A、B、C等9个输入端,可利用LPC2214的GPIO口来控制。
LPC2214的GPIO为全双向I/O口,可以独立控制每一根I/O口线的状态是输入还是输出。每个作为GPIO功能的引脚受到4个寄存器控制,分别为控制方向的IOxDIR、控制输出电平状态的IOxSET和IOxCLR、反映引脚电平状态的IOxPIN。[6]这4个寄存器构成一组,而一组寄存器控制着一个端口(P0、P1、P2或P3)。
为了便于控制,本设计采用P1口与显示屏系统进行连接。具体连接方式为:
#define G1 0x00010000
#define G2 0x00020000
#define C 0x00200000
#define B 0x00400000
#define A 0x00800000
#define STR 0x00100000
设置引脚值寄存器PINSEL1 = 0x00000000; 控制方向寄存器IO1DIR= 0x01FF0000;
2.显示代码
利用数组对显示数据进行操作,可实现显示内容的循环。
if( (word1&0x00008000)!=0)
{if ((16*j+clock-k)<0) point1[16*j+clock-k+64]=1;
else point1[16*j+clock-k]=1;
}
else
{if ((16*j+clock-k)<0) point1[16*j+clock-k+64]=0;
else point1[16*j+clock-k]=0;
}
word1=word1<<1;
四、设计结果与分析
字符显示采用16×16点阵,即每一个汉字均由16行16列的点阵组成显示。[7]经字符提取软件,将需显示的汉字转换为相应的字模。编写GPIO口的相关代码,进行调试后,将目标代码下载至LPC2214片内FLASH,验证显示信息是否正常。实践证明,显示屏显示信息,达到设计要求,系统验证成功。由此,该系统可显示任意内容,单屏可显示2行4列,共8个汉字。通过显示屏的级联端,可以显示更多的内容。通过改变代码,可以实现汉字的滚屏显示。由于LPC2214指令执行速度快,存储容量大,该系统的刷新频率高,显示内容稳定清晰。
本文重点探讨了基于LPC2214的LED显示屏系统的硬件设计,主要解决GPIO口与LED屏体的接口问题。在此基础上,通过软件设计,使LED显示屏在显示功能上实现各类动态图形处理。采用高性能的32位ARM微处理器替代传统的8/16位单片机,利用FLASH、SRAM设计的全彩LED显示屏控制系统,具有更强大的功能和实时处理能力。LPC2214丰富的GPIO口可根据实际需要进行功能扩展,能满足异步全彩LED显示屏在显示高灰度、高复杂性、高速度和大容量数据传输的显示要求,使显示内容更加丰富,展现了很好的显示效果,在同类产品中具有较高的技术含量和市场竞争力。
[1]李秀忠.基于单片机的LED显示屏控制电路设计[J].现代电子技术,2010(15):200-202.
[2]于慧.基于ARM和CPLD的LED彩屏显示系统的研究[D].西安:西北工业大学,2007:4-12.
[3]广州周立功单片机发展有限公司.LPC2214中文手册[EB/OL].[2012-02-02].http://wenku.baidu.com/view/607fbd00de80d4d8d15a4f34.html.
[4]周立功.ARM嵌入式系统实验教程(二)[M].北京:航空航天大学出版社,2005:4-9.
[5]尤永.基于ARM的全彩LED显示屏控制系统的设计[J].灯与照明,2009(1):47-49.
[6]周立功.ARM嵌入式系统基础教程[M].2版.北京:航空航天大学出版社,2008:179-187.
[7]南京洛普公司.LED显示屏的检测方法[J].现代显示,2001(1):51-58.