《中文模块液晶图文显示器1.doc》由会员分享,可在线阅读,更多相关《中文模块液晶图文显示器1.doc(9页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、附录一 中文液晶图文显示器中文模块液晶图文显示器使用说明书北京理工达盛科技有限公司产品简介 OCMJ中文模块系列液晶显示器内含 GB 2312 16*16点阵国标一级简体汉字和 ASCII8*8(半高)及8*16(全高)点阵英文字库,用户输入区位码或 ASCII 码即可实现文本显示。 OCMJ中文模块系列液晶显示器也可用作一般的点阵图形显示器之用。提供有位点阵和字节点阵两种图形显示功能,用户可在指定的屏幕位置上以点为单位或以字节为单位进行图形显示。完全兼容一般的点阵模块。 OCMJ中文模块系列液晶显示器可以实现汉字、ASCII 码、点阵图形和变化曲线的同屏显示,并可通过字节点阵图形方式造字。
2、本系列模块具有上/下/左/右移动当前显示屏幕及清除屏幕的命令。一改传统的使用大量的设置命令进行初始化的方法,OCMJ 中文模块所有的设置初始化工作都是在上电时自动完成的,实现了“即插即用”。同时保留了一条专用的复位线供用户选择使用,可对工作中的模块进行软件或硬件强制复位。规划整齐的10个用户接口命令代码,非常容易记忆。标准用户硬件接口采用REQ/BUSY 握手协议,简单可靠。 1)表1:OCMJ2X8(128X32)引脚说明引脚名称方向说明引脚名称方向说明1VLED+I背光源正极(LED+5V)8DB1I数据12VLED-I背光源负极(LED-OV)9DB2I数据23VSSI地10DB3I数据
3、34VDDI(+5V)11DB4I数据45REQI请求信号,高电平有效12DB5I数据56BUSYO应答信号=1:已收到数据并正在处理中 =0:模块空闲,可接收数据13DB6I数据67DB0I数据014DB7I数据7硬件接口接口协议为 请求/应答(REQ/BUSY) 握手方式。应答BUSY 高电平(BUSY =1) 表示 OCMJ 忙于内部处理,不能接收用户命令;BUSY 低电平(BUSY =0)表示 OCMJ 空闲,等待接收用户命令。发送命令到 OCMJ可在BUSY =0 后的任意时刻开始,先把用户命令的当前字节放到数据线上,接着发高电平REQ 信号(REQ =1)通知OCMJ请求处理当前数
4、据线上的命令或数据。OCMJ模块在收到外部的REQ高电平信号后立即读取数据线上的命令或数据,同时将应答线BUSY变为高电平,表明模块已收到数据并正在忙于对此数据的内部处理,此时,用户对模块的写操作已经完成,用户可以撤消数据线上的信号并可作模块显示以外的其他工作,也可不断地查询应答线BUSY是否为低(BUSY =0?),如果BUSY =0,表明模块对用户的写操作已经执行完毕。可以再送下一个数据。如向模块发出一个完整的显示汉字的命令,包括坐标及汉字代码在内共需5个字节,模块在接收到最后一个字节后才开始执行整个命令的内部操作,因此,最后一个字节的应答BUSY 高电平(BUSY =1)持续时间较长,具
5、体的时序图参见 图-1,对应的具体时间参数说明参见 表-1图1:对模块写汉字时序图四、电性能参数1)表1模块时间参数表编号名称单位值说 明最小值最大值1TruS0.4-数据线上数据稳定时间2TbuS220最大模块响应时间3TrtuS11-最小REQ保持时间4Ts1uS2045最大数据接收时间5Ts2mS-0.130*最大命令指令处理时间*:不同命令所占用的时间各不相同,具体时间在命令表中给出2)表2模块主要电气参数表编号名称单位值说 明2X84X85X101电源工作电压V5552电源电流mA2353输入引脚电压V5554最大输入电压建立时间uS1115最小复位电压持续时间uS666RES端高电
6、平时间6复位内部处理时间mS151515此时模块不接收命令7背光电压V5558标称背光电流mA1201802509外接灰度调节电位器5K20010K用户命令 用户通过用户命令调用 OCMJ 系列液晶显示器的各种功能。命令分为操作码及操作数两部分,操作数为十六进制。共分为 3 类10 条。分别是:一)、字符显示命令:1、显示国标汉字;2、显示8X8 ASCII字符;3、显示8X16ASCII字符;二)、图形显示命令:4、显示位点阵;5、显示字节点阵;三)、屏幕控制命令:6、清屏;7、上移;8、下移; 9、左移;10、右移;(以下所示取值范围分别为:2X8、4X8、5X10的取值范围)1)显示国标
7、汉字 命令格式: F0 XX YY QQ WW 该命令为5字节命令(最大执行时间为1.2毫秒,Ts2=1.2mS),其中 XX:为以汉字为单位的屏幕行坐标值,取值范围00到07、02到09、00到09 YY:为以汉字为单位的屏幕列坐标值,取值范围00到01、00到03、00到04QQ WW:坐标位置上要显示的GB 2312 汉字区位码2) 显示8X8 ASCII字符 命令格式:F1 XX YY AS 该命令为4字节命令(最大执行时间为0.8毫秒,Ts2=0.8mS),其中XX:为以ASCII码为单位的屏幕行坐标值,取值范围00到0F、04到13、00到13YY:为以ASCII码为单位的屏幕列坐
8、标值,取值范围00到1F、00到3F、00到4FAS:坐标位置上要显示的ASCII 字符码3) 显示8X16 ASCII字符 命令格式:F9 XX YY AS 该命令为4字节命令(最大执行时间为1.0毫秒,Ts2=1.0mS),其中XX:为以ASCII码为单位的屏幕行坐标值,取值范围00到0F、04到13、00到13YY:为以ASCII码为单位的屏幕列坐标值,取值范围00到1F、00到3F、00到4FAS:坐标位置上要显示的ASCII 字符码4) 显示位点阵 命令格式: F2 XX YY 该命令为3字节命令(最大执行时间为0.1毫秒,Ts2=0.1mS),其中XX:为以1*1点阵为单位的屏幕行
9、坐标值,取值范围00到7F、20到9F、00到9F YY:为以1*1点阵为单位的屏幕列坐标值,取值范围00到40、00到40、00到405) 显示字节点阵 命令格式: F3 XX YY BT 该命令为4字节命令(最大执行时间为0.1毫秒,Ts2=0.1mS),其中XX:为以1*8点阵为单位的屏幕行坐标值,取值范围00到0F、04到13、00到13YY:为以1*1点阵为单位的屏幕列坐标值,取值范围00到1F、00到3F、00到4F BT:字节像素值,0 显示白点,1 显示黑点 (显示字节为横向)6) 清屏 命令格式:F4 该命令为单字节命令(最大执行时间为11毫秒,Ts2=11mS),其功能为将
10、屏幕清空。7) 上移 格式:F5 令为单字节命令(最大执行时间为25毫秒,Ts2=25mS),其功能为将屏幕向上移 一个点阵行。8) 下移 命令格式:F6 该命令为单字节命令(最大执行时间为30毫秒,Ts2=30mS),其功能为将屏幕向下移动一个点阵行。9) 左移 命令格式:F7 该命令为单字节命令(最大执行时间为12毫秒,Ts2=12mS),其功能为将屏幕向左移动一个点阵行。10) 右移 命令格式: F8 该命令为单字节命令(最大执行时间为12毫秒,Ts2=12mS),其功能为将屏幕向右移动一个点阵行。外部接口连接图2: 8051与OCMJ4X8模块连接图其他说明1)复位 OCMJ 中文模块
11、所有的设置初始化工作都是在上电时自动完成的,因此,在大多数情况下,复位端可经一电阻接在电源上。在确实需要复位操作的应用中,将该线拉低(RES=0)并保持10微秒即可使模块复位。正常的复位功能包括清屏在内,占用时间不大于15毫秒,用户在此其间应禁止对模块进行操作,以免数据丢失,复位后的操作应在确保BUSY=0之后开始。2)背光模块电源VDD与LED背光电源最好取两组电源分开供电,以免背光源功耗相对大而影响模块显示。另外,LED+/LED-为背光源引脚,在模块背面,PCB板上的电路连接线途经两焊盘(断开),是空开两个贴片电阻位置,由用户接上相应的电阻调整LED背光亮度,电阻阻值在10欧-30欧之间
12、。该电阻不可短路,以免烧坏背光源或PCB板过热而烧坏模块IC。3)灰度调节4X8及5X10模块的引出脚RT1/RT2为外接灰度调节电位器接脚(2X8模块的引出脚在线路板背面右上脚有TEST3标注的焊盘处),出厂前该电阻已被固定电阻(模块上的R6)所代替,如用户确系要调整屏幕灰度,可在引出脚RT1/RT2间接电位器即可,如果屏幕灰度没有变化或变化不大,可将模块背面右上角的贴片电阻R6(即和RT1、RT2并联的电阻)断开,再调整电位器。典型应用程序示例 -用 8051 为MPU1) 写模块子程序(双线应答方式)-该程序使用REQ及BUSY两条控制线的握手方式对模块进行写操作。 SUB1:JBBUS
13、Y,SUB1 ;确信模块空闲(BUSY=0)MOV P1,A ;向总线送数NOP;等待数据总线稳定SETB REQ ;置模块REQ端为高电平(REQ=1),向模块发请求命令 HE3:JNB BUSY,HE3 ;等待模块响应(BUSY =1) CLR REQ ;撤消REQ请求信号,数据输入结束RET ;返回2) 写模块子程序(单线延时方式)-该程序仅使用REQ一条控制线方式对模块进行写操作。在MPU 的 I/O口短缺的情况下非常适用。 SUB2:MOV P1,A ;向总线送数NOP;等待数据总线稳定SETB REQ ;置模块REQ端为高电平(REQ=1),向模块发请求命令 LCALL DALEY
14、1 ;调延时子程序DALEY1等待模块响应 *1 CLR REQ ;撤消REQ请求信号,数据输入结束 LCALL DALEY2 ;调延时子程序DALEY2等待模块内部处理完成 *2RET ;返回注:*1、延时时间参照表4中的Tb及Trt*2、延时时间参照表4中的Ts1及Ts23) 写汉字程序-该程序显示一个汉字“啊”(区位码为1001H )MOV A,#0F0H ;选显示汉字命令字ACALL SUB1 ;调用写子程序MOV A,#02H ;O2H,XX,16*16点阵为单位的屏幕坐标ACALL SUB1 ;调用写子程序MOV A,#00H ;00H,YY,16*16点阵为单位的屏幕坐标ACAL
15、L SUB1;调用写子程序MOV A,#10H ;10H,QQ,GB2312汉字区位码高位ACALL SUB1;调用写子程序MOV A,#01H ;01H,WW,GB2312汉字区位码低位ACALL SUB1;调用写子程序4) 写8*16 ASCII码程序 -该程序显示一个8*16 ASC码 “A” :MOV A,#0F9H ;选显示8*16 ASCII字符命令字ACALL SUB1 ;调用写子程序MOV A,#04H ;04H,XX,8*8点阵为单位的屏幕坐标值XACALL SUB1MOV A,#00H ;00H,YY,1*1点阵为单位的屏幕坐标值YACALL SUB1MOV A,#41H
16、;AS,ASCII字符代码“A”ACALL SUB1注:X坐标(本例中的 #04H)与ASC码中规定的相同,Y坐标(本例中的 #00H)以点阵单元为单位。5) 写8*8 ASCII码程序 -该程序显示一个8*8 ASC码 “A” :MOV A,#0F1H ;选显示8*8 ASCII字符命令字ACALL SUB1 ;调用写子程序MOV A,#04H ;04H,XX,8*8点阵为单位的屏幕坐标值XACALL SUB1MOV A,#00H ;00H,YY,1*1点阵为单位的屏幕坐标值YACALL SUB1MOV A,#41H ;AS,ASCII字符代码“A”ACALL SUB16) 绘图一点(1*1
17、点阵)程序MOV A,#0F2H ;选显示位点阵命令字ACALL SUB1 ;调用写子程序MOV A,#20H ;20H,XX,以1*1点阵为单位的屏幕坐标值XACALL SUB1MOV A,#00H ;00H,YY,以1*1点阵为单位的屏幕坐标值YACALL SUB17) 绘图一横线(1*8点阵)程序MOV A,#0F3H ;选显示字节点阵命令字ACALL SUB1 ;调用写子程序MOV A,#04H ;04H,XX,以1*8点阵为单位的屏幕坐标值XACALL SUB1MOV A,#00H ;00H,YY,以1*1点阵为单位的屏幕坐标值YACALL SUB1MOV A,#0FH ;OFH,为
18、输入字节数据,1为黑点,0为白点ACALL SUB18) 清屏程序MOV A,#0F4H ;选清屏指令命令字ACALL SUB1 ;调用写子程序9) 初始化程序ORG000H ;程序首址LJMP 100H ;跳过中断区ORG100H MOVSP,#60H ;设堆栈CLRREQ ;REQ=0SETBBUSY ;BUSY=110) 汉字内码转换成区位码程序 -该程序将外部数据(如上位机)中的汉字内码转换成区位码以便模块直接显示。 R5-存放机内码高位;R6-存放机内码低位 SUB7:PUSH A;把机内码高位放到A累加器 CLR C ; MOV A,R5; SUBB A,#0A0H;机内码减A0H为国标区码 MOV R5,A;把转换好的区码放回R5 CLR C MOV A,R6;把机内码低位放到A累加器 SUBB A,#0A0H;机内码减A0H为国标位码 MOV R6,A;把转换好的位码放回R6 POP A RET显示窗口坐标关系以上列表为汉字、ASC码显示屏幕坐标(ASC码Y坐标一点阵坐标为准)如显示图形点阵,则以128*64(OCMJ4X8)或128*32(OCMJ2X8)点阵坐标为准,可在屏幕任意位置显示。外型尺寸图OCMJ2X8模块尺寸图