1、 点阵液晶显示屏SG12864-01D应用实践 摘要:在应用实践的基础上,总结性地介绍了点阵液晶显示模块SG12864-OID的控制原理与应用技巧,给出了在模拟时序下的汇编驱动程序,最后提出了具有节约空间资源的应用方案。关键词:液晶显示:模拟时序;汇编程序TN141.9 :B引 言液晶显示模块可归结为字符型和点阵型两大类,点阵型又分为单色屏和彩色屏。字符型模块通常包含相应的字符库,点阵型模块包含有液晶显示控制器,显示内容没有任何限制,文字图片均可。液晶彩屏的技术含量最高,但在一般控制系统设计中,点阵单色屏已完全能够满足信息显示的需要。1 SG12864-OID模块应用参数与显示方式从模块的型号
2、可以看出,它在水平方向有128个点阵,竖直方向有64个点阵。通常汉字取模方式为1 61 6,显然模块汉字显示的个数为84:字符取模方式为8x16,因此字符显示的个数为16x4。模块的信息显示采用了分屏显示的方式进行,分为左半屏和右半屏,它是通过口线csi和CS2进行控制的,高电平有效,如图1所示。单屏信息的输入过程包括8个页进行写操作。自上而下为0-7页,通过设置第X页地址实现对该页信息的输入操作,如图1所示。由上可见,4行汉字需要8次输入操作,因此,每页信息仅仅是一行汉字的一半内容(上部或下部),如图1中的字符3。水平点阵地址用Y表示,数值在0 63之间。每页信息的输入可连续一次完成,取模方
3、式为自上而下,从左到右,如图1所示。2 SG12864-OID模块接口说明与外围限定电路模块外围有20个引脚,其中有4个引脚可以合二为一,1脚和20脚接地,2脚和1 9脚接5V电压。如表1所示。3脚和1 8脚与外围限定电路有关,它是用来调整背光亮度的,如图2所示。3脚Vo正常电位为负值,数值应该在7.2 - 7.5之间(实测),若数值过小,屏幕不会显示任何信息,若数值过大将会产生底灰,负电位是从模块1 8脚VOLour送出的,实测为-9.53V。7 -14引脚为8根数据线,1 7为开机复位引脚,1 5、16为左右半屏选通引脚。4、5、6为时序控制引脚,也是实施有效控制的关键部位。3 显示控制指
4、令集D/l与RAN对应的电平值是指令条件,DB7-DBO为8位数据线,既可以是数据也可以是命令参数。DB0与开关显示有关,1开0关,设置起始线命令数据参数通常为OCOH,即从左上角开始显示,如表2所示。“读状态”在程序设计中具有特殊的地位。DB7为BUSYB,若为1,系统不接收任何操作命令,意为系统忙,只有当判断为0时,才可以进行其它操作。DB5为显示ON/OFFO,它判断是否开启了显示,如果已开则为0,否则为1,因此在程序的前端必须增加开显示操作,否则屏幕上不会有字符显示。DB4R为复位情况指示,系统要求在上电后必须有一下复位操作,即当VDD为5V时,/RST必须有一个延迟低电平的过程,如果
5、有,该位则为0,意指系统处于正常工作状态。读、写数据指令每执行完一次,列地址就自动增1。注意,在进行读操作之前,必须有一个空读操作,接着再读才会读出所要读的单元中的数据。另外,任何一个操作之间都必须增加一个读忙信号,DB7是否为0,若为0再进入下一步。需要注意的是在SG12864-OID系列模块说明书中,有多处出现来自www.Lw5U.com过RS的字样,只要将其改为D/l即可。4 AT89C51 与 SG12864-OID电路连接设定电路连接方式决定了程序编写的细节,表3为AT89C51与模块具体连接情况,电路晶振频率为12MHzo5 SG12864-OID模拟时序SG12864-OID模拟
6、时序如图3所示。E使能信号具有一定的特点,读数据时为高电平,如图3中的Check Busy,读完需再变为低电平;送指令(或数据)时为低电平,然后必须变高,再回到低电平,至此才算完成整个操作过程。D/l只有在写数据时为高电平,在上述其它情形下皆为低电平。6字模提取字模提取采用PCtoLCD2002软件非常方便,点阵格式为“阴码”,取模方式为“列行式”,取模走向为“逆向”即可。7 汇编程序在屏幕的左上角显示一个“张”字,基本设定见以下程序。ORG OOOOHD1:CLR Pl.6 :/RST复位操作NOPNOPNOPSETB Pl.6 :/RST复位完成SETB Pl.0 :选左屏,=1SETB
7、Pl.1 :选右屏,=1LCALL D5:读状态:DB7.4MOV R7,#OCOH;设置起始线LCALL D8 :起始线操作MOV R7,#3FH;开显示LCALL D8 :开显示操作CLR Pl.1:关右半屏MOV DPTR,#TABLElCLR 7EHCLR 7FHMOV R7,#40H;设置Y地址LCALL D8MOV R7,#OB8H;设置X地址LCALL D8CLR AD2: MOV A,7EHMOVC A,A+DPTRMOV R7,ALCALL D4INC 7EHMOV A,7EHCJNE A,#OFH,D2MOV DPTR,#TABLE2MOV R7,#40H;设置Y地址LCA
8、LL D8MOV R7.#OB9H:设置X地址LCALL D8CLR AD3: MOV A,7FHMOVC A,A+DPTRMOV R7,ALCALL D4INC 7FHMOV A,7FHCJNE A,#OFH,D3JMP D9:数据仅写一次D4: LCALL D6 :读忙信号CLR Pl.5SETB Pl.3NOPMOV P2,R7SETB Pl.4NOPCLR Pl.4CLR Pl.3RETD5: CLR Pl.3 :读状态DB4.7SETB Pl.5SETB Pl.4MOV C,P2.7 :读BUSYMOV 20H.O,CMOVC,P2.4:读RESETMOV 20H.1,CNOPCLR
9、 Pl.4JB 20H.O,D5JB 20H.1,D5RETD6: CLR Pl.3 :读忙信号SETB Pl.5SETB Pl.4MOV C,P2.7MOV 20H.O,CNOPCLR Pl.4JNB 20H.O,D7NOPNOPSJMP D6D7: RETD8: LCALL D6 :读忙信号CLR Pl.5CLR Pl.3NOPMOV P2,R7SETB Pl.4NOPCLR Pl.4RETTABLE1:“张”上半部分DB 02H, OF2H, 12H, 12H, 1EH, OOH,DB 80H, 80H, OFFH, OAOH, 90H, 88H,DB 86H,84H,80H,OOHTABLE2:“张”下半部分DB OIH, 03H, 41H, 81H, 7FH, OOH,DB OOH, 40H, OFFH, 40H, 23H, OCH,DB lOH,60H,20H,OOHD9: NOPEND上述程序是在屏幕左上方显示了一个“张”字,数据仅传送了一次,结果发现,该显示屏来自wwW.lW具有信息“保持”功能。因此在实际应用中,对画面中的固定内容处理十分方便,只要考虑如何处理更改的内容即可,这样可以有效地节约系统空间资源。 -全文完-