二、模块引脚说明128X64引脚说明引脚名称方向说明引脚名称方向说明1VSS-GND(0V)11DB4I数据42VDD-SupplyVoltageForLogic(+5v)12DB5I数据53VO-SupplyVoltageForLCD13DB6I数据64RS(CS)OH:DataL:InstructionCode14DB7I数据75R/W(SID)OH:ReadL:Write15PSBOH:ParallelModeL:SerialMode6E(SCLK)OEnableSignal16NC-空脚7DB0I数据017/RSTOResetSignal低电平有效8DB1I数据118NC-空脚9DB2I数据219LEDA-背光源负极(LED-0V)10DB3I数据320LEDK-背光源正极(LED+5V)外形尺寸ITEMNOMINALDIMENUNIT模块体积93×78×12.5mm视域70.7×38.8mm行列点阵数128×64dots点距离0.52×0.52mm点大小0.48×0.48mm三、液晶硬件接口1、逻辑工作电压(VDD):4.5~5.5V2、电源地(GND):0V3、工作温度(Ta):0~60℃(常温)/-20~75℃(宽温)4、电气特性见附图1外部连接图(参考附图2)模块有并行和串行两种连接方法(时序如下):1、8位并行连接时序图MPU写资料到模块VVIH1IL1RSR/WEDB0-DB7ASAHAHPWDSWHRCTTTTTTTTValiddataMPU从模块读出资料VVIH1IL1RSR/WEDB0-DB7ASAHAHPWDDRHRCTTTTTTTTValiddata2、串行连接时序图四、用户指令集1、指令表1:(RE=0:基本指令集)指令指令码说明执行时间(540KHZ)RSRWDB7DB6DB5DB4DB3DB2DB1DB0清除显示0000000001将DDRAM填满“20H”,并且设定DDRAM的地址计数器(AC)到“00H”4.6ms地址归位000000001X设定DDRAM的地址计数器(AC)到“00H”,并且将游标移到开头原点位置;这个指令并不改变DDRAM的内容4.6ms进入点设定00000001I/DS指定在资料的读取与写入时,设定游标移动方向及指定显示的移位72us显示状态开/关0000001DCBD=1:整体显示ONC=1:游标ONB=1:游标位置ON72us游标或显示移位控制000001S/CR/LXX设定游标的移动与显示的移位控制位元;这个指令并不改变DDRAM的内容72us功能设定00001DLX0REXXDL=1(必须设为1)RE=1:扩充指令集动作RE=0:基本指令集动作72us设定CGRAM地址0001AC5AC4AC3AC2AC1AC0设定CGRAM地址到地址计数器(AC)72us设定DDRAM地址001AC6AC5AC4AC3AC2AC1AC0设定DDRAM地址到地址计数器(AC)72us读取忙碌标志(BF)和地址01BFAC6AC5AC4AC3AC2AC1AC0读取忙碌标志(BF)可以确认内部动作是否完成,同时可以读出地址计数器(AC)的值0us写资料到RAM10D7D6D5D4D3D2D1D0写入资料到内部的RAM(DDRAM/CGRAM/IRAM/GDRAM)72us读出RAM的值11D7D6D5D4D3D2D1D0从内部RAM读取资料(DDRAM/CGRAM/IRAM/GDRAM)72us指令表—2:(RE=1:扩充指令集)指令指令码说明执行时间(540KHZ)RSRWDB7DB6DB5DB4DB3DB2DB1DB0待命模式0000000001将DDRAM填满“20H”,并且设定DDRAM的地址计数器(AC)到“00H”72us卷动地址或IRAM地址选择000000001SRSR=1:允许输入垂直卷动地址SR=0:允许输入IRAM地址72us反白选择00000001R1R0选择4行中的任一行作反白显示,并可决定反白与否72us睡眠模式0000001SLXXSL=1:脱离睡眠模式SL=0:进入睡眠模式72us扩充功能设定000011X1REG0RE=1:扩充指令集动作RE=0:基本指令集动作G=1:绘图显示ONG=0:绘图显示OFF72us设定IRAM地址或卷动地址0001AC5AC4AC3AC2AC1AC0SR=1:AC5—AC0为垂直卷动地址SR=0:AC3—AC0为ICONIRAM地址72us设定绘图RAM地址001AC6AC5AC4AC3AC2AC1AC0设定CGRAM地址到地址计数器(AC)72usHS12864-12串口接线方式:备注:1、当模块在接受指令前,微处理顺必须先确认模块内部处于非忙碌状态,即读取BF标志时BF需为0,方可接受新的指令;如果在送出一个指令前并不检查BF标志,那么在前一个指令和这个指令中间必须延迟一段较长的时间,即是等待前一个指令确实执行完成,指令执行的时间请参考指令表中的个别指令说明。2“RE”为基本指令集与扩充指令集的选择控制位元,当变更“RE”位元后,往后的指令集将维持在最后的状态,除非再次变更“RE”位元,否则使用相同指令集时,不需每次重设“RE”位元。具体指令介绍:1、清除显示CODE:RWRSDB7DB6DB5DB4DB3DB2DB1DB0LLLLLLLLLH功能:清除显示屏幕,把DDRAM位址计数器调整为“00H”2、位址归位CODE:RWRSDB7DB6DB5DB4DB3DB2DB1DB0LLLLLLLLHX功能:把DDRAM位址计数器调整为“00H”,游标回原点,该功能不影响显示DDRAM3、位址归位CODE:RWRSDB7DB6DB5DB4DB3DB2DB1DB0LLLLLLLHI/DS功能:把DDRAM位址计数器调整为“00H”,游标回原点,该功能不影响显示DDRAM功能:执行该命令后,所设置的行将显示在屏幕的第一行。显示起始行是由Z地址计数器控制的,该命令自动将A0-A5位地址送入Z地址计数器,起始地址可以是0-63范围内任意一行。Z地址计数器具有循环计数功能,用于显示行扫描同步,当扫描完一行后自动加一。4、显示状态开/关CODE:RWRSDB7DB6DB5DB4DB3DB2DB1DB0LLLLLLHDCB功能:D=1;整体显示ONC=1;游标ONB=1;游标位置ON5、游标或显示移位控制CODE:RWRSDB7DB6DB5DB4DB3DB2DB1DB0LLLLLHS/CR/LXX功能:设定游标的移动与显示的移位控制位:这个指令并不改变DDRAM的内容6、功能设定CODE:RWRSDB7DB6DB5DB4DB3DB2DB1DB0LLLLHDLX0REXX功能:DL=1(必须设为1)RE=1;扩充指令集动作RE=0:基本指令集动作7、设定CGRAM位址CODE:RWRSDB7DB6DB5DB4DB3DB2DB1DB0LLLHAC5AC4AC3AC2AC1AC0功能:设定CGRAM位址到位址计数器(AC)8、设定DDRAM位址CODE:RWRSDB7DB6DB5DB4DB3DB2DB1DB0LLHAC6AC5AC4AC3AC2AC1AC0功能:设定DDRAM位址到位址计数器(AC)9、读取忙碌状态(BF)和位址CODE:RWRSDB7DB6DB5DB4DB3DB2DB1DB0LHBFAC6AC5AC4AC3AC2AC1AC0功能:读取忙碌状态(BF)可以确认内部动作是否完成,同时可以读出位址计数器(AC)的值10、写资料到RAMCODE:RWRSDB7DB6DB5DB4DB3DB2DB1DB0HLD7D6D5D4D3D2D1D0功能:写入资料到内部的RAM(DDRAM/CGRAM/TRAM/GDRAM)11、读出RAM的值CODE:RWRSDB7DB6DB5DB4DB3DB2DB1DB0HHD7D6D5D4D3D2D1D0功能:从内部RAM读取资料(DDRAM/CGRAM/TRAM/GDRAM)12、待命模式(12H)CODE:RWRSDB7DB6DB5DB4DB3DB2DB1DB0LLLLLLLLLH功能:进入待命模式,执行其他命令都可终止待命模式13、卷动位址或IRAM位址选择(13H)CODE:RWRSDB7DB6DB5DB4DB3DB2DB1DB0LLLLLLLLHSR功能:SR=1;允许输入卷动位址SR=0;允许输入IRAM位址14、反白选择(14H)CODE:RWRSDB7DB6DB5DB4DB3DB2DB1DB0LLLLLLLHR1R0功能:选择4行中的任一行作反白显示,并可决定反白的与否15、睡眠模式(015H)CODE:RWRSDB7DB6DB5DB4DB3DB2DB1DB0LLLLLLHSLXX功能:SL=1;脱离睡眠模式SL=0;进入睡眠模式16、扩充功能设定(016H)CODE:RWRSDB7DB6DB5DB4DB3DB2DB1DB0LLLLHHX1REGL功能:RE=1;扩充指令集动作RE=0;基本指令集动作G=1;绘图显示ONG=0;绘图显示OFF17、设定IRAM位址或卷动位址(017H)CODE:RWRSDB7DB6DB5DB4DB3DB2DB1DB0LLLHAC5AC4AC3AC2AC1AC0功能:SR=1;AC5~AC0为垂直卷动位址SR=0;AC3~AC0写ICONRAM位址18、设定绘图RAM位址(018H)CODE:RWRSDB7DB6DB5DB4DB3DB2DB1DB0LLHAC6AC5AC4AC3AC2AC1AC0功能:设定GDRAM位址到位址计数器(AC)五、显示坐标关系1、图形显示坐标2、汉字显示坐标X坐标Line180H81H82H83H84H85H86H87HLine290H91H92H93H94H95H96H97HLine388H89H8AH8BH8CH8DH8EH8FHLine498H99H9AH9BH9CH9DH9EH9FH3、字符表代码(02H---7FH)六、显示步骤1、显示资料RAM(DDRAM)显示资料RAM提供64×2个位元组的空间,最多可以控制4行16字(64个字)的中文字型显示,当写入显示资料RAM时,可以分别显示CGROM、HCGROM与CGRAM的字型;ST7920A可以显示三种字型,分别是半宽的HCGROM字型、CGRAM字型及中文CGROM字型,三种字型的选择,由在DDRAM中写入的编码选择,在0000H—0006H的编码中将自动的结合下一个位元组,组成两个位元组的编码达成中文字型的编码(A140—D75F),各种字型详细编码如下:1、显示半宽字型:将8位元资料写入DDRAM中,范围为02H—7FH的编码。2、显示CGRAM字型:将16位元资料写入DDRAM中,总共有0000H,0002H,0004H,0006H四种编码。3、显示中文字形:将16位元资料写入DDRAMK,范围为A1A1H—F7FEH的编码。绘图RAM(GDRAM)绘图显示RAM提供64×32个位元组的记忆空间,最多可以控制256×64点的二维也纳绘图缓冲空间,在更改绘图RAM时,先连续写入水平与垂直的坐标值,再写入两个8位元的资料到绘图RAM,而地址计数器(AC)会自动加一;在写入绘图RAM的期间,绘图显示必须关闭,整个写入绘图RAM的步骤如下:1、关闭绘图显示功能。2、先将水平的位元组坐标(X)写入绘图RAM地址;3、再将垂直的坐标(Y)写入绘图RAM地址;4、将D15——D8写入到RAM中;5、将D7——D0写入到RAM中;6、打开绘图显示功能。绘图显示的记忆体对应分布请参考表2、游标/闪烁控制ST7920A提供硬体游标及闪烁控制电路,由地址计数器(addresscounter)的值来指定DDRAM中的游标或闪烁位置。