SPLC501液晶显示模组为128X64点阵,面板采用STN(Super Twisted Nematic)超扭曲向列技术制成并且由128 Segment和64 Common组成,LCD非常容易通过接口被访问。 内置SPLC501点阵式图形液晶显示模块由液晶驱动控制器SPLC501,LCD显示器和与外部设备的接口等几部分组成,液晶驱动控制器SPLC501集行,列驱动器,显示数据存储器(DDRAM,Display Data RAM)和控制器于一体,具有65个行驱动输出和132个列驱动输出,内置65*132位DDRAM,实际上只用到64个行驱动输出和128个列驱动输出和64*128位DDRAM,DDRAM中的每1位数据控制液晶屏上一个象素的亮暗状态(1:表示亮,0:表示暗)。SPLC501点阵式图形液晶显示模块的管脚排列如图1所示,其管脚描述如下表1所示。
3 SPLC501与SPCE061A单片机的硬件接囗设计
在程序设计方面,凌阳十六位单片机还具有易学易用的效率较高的一套指令系统和集成开发环境。在此环境中,支持标准C语言,可以实现C语言与凌阳汇编语言的互相调用。
SPLC501与SPCE061A单片机的硬件接囗电路见图2。当SPLC501液晶显示模块的VCC端外接+5V电源时其接囗须通过约470Ω电阻(300~510Ω)连接,以使电平匹配。图2中采用并行通信方式,单片机的IOA8~IOA15与液晶模块的DB0~DB7囗相连作为数据输入输出用;IOB4~IOB6、IOB9囗与液晶模块的AOP、、EP和相连作为单片机对液晶的控制囗。
图2硬件接囗电路
4显示程序设计:
在液晶上显示整屏字符或图像有两种方法:一是在屏幕上指定位置进行单独显示;一是将所要显示的字模数据一次性送到显示RAM中。两种方法都是在控制器空闲条件下进行操作的,因而在操作之前是需要判断控制器是否处于忙状态。程序设计主要有主程序和几个子程序块:液晶模组初始化、液晶显示屏选择,LCD显示及若干控制子程序。主程序通过调用这些子程序来实现对液晶显示器操作控制。凌阳单片机有两种常用的编程语言:汇编语言和C语言。由于C语言的可读性和可移植性远远超过汇编语言,并且C语言还可用嵌入汇编来解决高时效性的代码编写问题,同时其开发周期通常小于汇编语言。因而在设计时选择C语言,以下为实现字符显示控制程序。
main()
{
Init_irq5(); //中断IRQ5设置
Init_sys(); //系统时钟初始化
FG_InitGraphic(); //初始化I/O和SPLC501
while (1) {
FG_ClearScreen(1); //以全黑清屏,即整屏点亮
F_Delay(); //延时3秒
FG_PutStr("NANGUANGQUN",3,100,60);
F_Delay(); //延时3秒
FG_PutStr("HuangShiLiGong",3,90,20); //送字串
F_Delay(); //延时3秒
}
}
五 结束语
介绍了SPCE061A单片机驱动内置式SPLC501液晶显示模块。利用SPCE061A单片机丰富的I/O囗资源驱动液晶模块,简化了电路设计。
参考文献
[1]薛钧义.《凌阳十六位单片机原理及应用》[M].北京:北京航空航天大学出版社,2003.
[2]张平均,陈志华.SPCE061A单片机与液晶显示模块HS12864-1的接囗及其编程[J].微计算机信息,2005.21(5):117-118.
[3]SPLC501DataSheet www.unsp.com.cn