“小何选手”通过精心收集,向本站投稿了9篇串行接口中文图形点阵液晶显示模块的应用,以下是小编为大家整理后的串行接口中文图形点阵液晶显示模块的应用,仅供参考,欢迎大家阅读。

篇1:串行接口中文图形点阵液晶显示模块的应用
串行接口中文图形点阵液晶显示模块的应用
摘要:介绍一种具有4位/8位并行、2线/3线串行多种接口方式,内部含有国标一级、二极简体中文字库的图形点阵液晶显示模块;利用该模块灵活的接口方式和简单、方便的操作指令,可构成全中文人机交互图形界面。介绍模块的性能特点、操作指令及接口方式;以AT89C2051单片机及2线串行接口方式为例,给出相应的硬件电路及显示子程序。关键词:串/并接口 液晶模块 中文字库
引言
液晶显示器件由于具有显示信息丰富、功耗低、体积小、质量小、无辐射等优点,得到了广泛的应用;但液晶显示模块复杂的硬件接口和软件编程却令产品设计人员生畏,因而限制了该模块在某些领域的应用。本文介绍一种具有串/并多种接口方式,且内部含有GB2312一级、二级简体中文字库的图形点阵液晶模块,使用该模块可构成具有全中文人机交互图形界面的液晶显示系统。
(本网网收集整理)
1 性能特点
OCM4X8C是具有串/并接口,具内部含有中文字库的图形点阵液晶显示模块。该模块的控制/驱动器采用台湾矽创电子公司的ST7920,因而具有较强的控制显示功能。OCM4X8C的液晶显示屏为128×64点阵,可显示4行、每行8个汉字。为了便于简单、方便地显示汉字,该模块具2Mb的中文字型CGROM,该字型ROM中含有8192个16×16点阵中文字库;同时,为了便于英文和其它常用字符的显示,具有16Kb的16×8点阵的ASCII字符库;为便于构造用户图形,提供了一个64×256点阵的GDRAM绘图区域,且为了便于构造用户所需字型,提供了4组16×16点阵的造字空间。利用上述功能,OCM4X8C可实现汉字、ASCII码、点阵图形、自造字体的同屏显示。为便了和多种微处理器、单片机接口,模块提供了4位并行、8位并行、2线串行、3线串行多种接口方式。
该模块具有2.7~5.5V的宽工作电压范围,且具有睡眠、正常及低功耗工作模式,可满足系统各种工作电压及便携式仪器低功耗的要求。液晶模块显示负电压,也由模块提供,从而简化了系统电源设计。模块同时还提供LED背光显示功能。除此之外,模块还提供了画面清除、游标显示/隐藏、游标归位、显示打开/关闭、显示字符闪烁、游标移位、显示移位、垂直画面旋转、反白显示、液晶睡眠/唤醒、关闭显示等操作指令。
2 模块引脚定义和用户指令集
OCM4X8C的引脚说明,如表1所列。
表1 OCM4X8C引脚说明
引 脚名 称方 向说 明1VSS-GND(0V)2VDD-逻辑电源(+5V)3V0-LCD电源(悬空)4RS(CS)OH:数据,L:指令5R/W(SID)OH:读,L:写6E(SCLK)O使能7DB0I数据08DB1I数据19DB2I数据210DB3I数据311DB4I数据412DB5I数据513DB6I数据614DB7I数据715PSBOH:并行,L:串行16NC-空脚17RSTO复位(低电平有效)18NC-空脚19LEDA-背光源正极(LED+5V)20LEDK-背光源负极(LED-0V)用户使用液晶模块时是通过用户命令来执行相应的显示或控制功能的。OCM4X8C的用户命令分为基本命令集和扩充命令集,分别如表2、表3所列。
表2 OCM4X8 基本命令集
指 令指令码说 明执行时间/μs(540kHz)RSRWDB7DB6DB5DB4DB3DB2DB1DB0清除显示0000000001将DDRAM填满“20H”,并设定DDRAM的地址计数顺(AC)到“00H”4.610 -3地址归位000000001X设定DDRAM的地址计数器(AC)到“00H”,并且将游标移到开头原点位置4.610 3进入点设定00000001I/OS指定在资料的读取与写入时,设定游标移动方向及指定显示的移位72显示状态开/关0000001DCBD=1:整体显示ON;C=1:游标ON;
B=1:游标位置ON72游标或显示移位
控制000001S/CR/LXX设定游标的移动与显示的移位控制位元。这个指令并不改变DDRAM的内容72功能设定00001DLX0REXXDL=1(必须设为1);RE=1:扩充指令集动作;RE=0:基本指令集动作72设定CGRAM
地址0001AC5AC4AC3AC2AC1AC0设定CGRAM地址到地址
计数器(AC)72设定DDRAM
地址001AC6AC5AC4AC3AC2AC1AC0设定DDRAM地址到地址
计数器(AC)72读取标志(BF)和地址01BFAC6AC5AC4AC3AC2AC1AC0读取忙标志(BF)可以确认内部动作是否完成,同时可以读出地址计数器(AC)的值0写资料到RAM10D7D6D5D4D3D2D1D0写入资料到内部的RAM(DDRAM/CGRAM/IRAM/GDRAM)72读出RAM的值11D7D6D5D4D3D2D1D0从内部RAM读取资料(DDRAM/CGRAM/IRAM/GDRAM)72
表3 OCM4X8C 扩充指令集
指 令指 令 码说 明
执行时间/μs(540kHz)RSRWDB7DB6DB5DB4DB3DB2DB1DB0待命模式0000000001将DDRAM填满“20H”,并设定DDRAM的地址计数器(AC)到“00H”;72卷动地址或IRAM地址选择000000001SRSR=1:允许输入垂直卷动地址;SR=0:允许输入IRAM地址72反白选择00000001R1R0选择4行中的任一行作反白显示,并可决定反白与否72睡眠模式0000001SLXXSL=1:脱离睡眠模式;
SL=0:进科睡眠模式72扩充功能设定000011X1
REG0RE=1:扩充指令集动作;RE=0基本指令集动作;G=1:绘图显示ON;G=0:绘图显示OFF72设定IRAM地址或卷动地址0001AC5AC4AC3AC2AC1AC0SR=1:AC5AC0为垂直卷动地址
SR=0:AC3AC0为ICONIRAM地址72设定绘图RAM地址001AC6AC5AC4AC3AC2AC1AC0设定CGRAM地址到地址计数器(AC)72
3 字符显示
OCM4X8C按照每个中文字符16×16点阵将显示屏分类4行8列,共32个区。每个区可显示1个中文字符或2个16×8点阵全高ASCII码字符,即每屏最多可实现32个中文字符或64个ASCII码字符的显示。OCM4X8C内部提供128×2字节的字符显示RAM缓冲区(DDRAM)。字符显示是通过将字符显示编码写入该字符显示RAM实现的。根据写入内容的不同,可分别在液晶屏上显示CGROM(中文字库)、HCGROM(ASCII码字库)及CGRAM(自定义字形)的内容。三种不同字符/字型的选择编码范围为:0000~0006H显示自定义字型,02H~7FH显示半宽ASCII码字符,A1A0H~F7FFH显示8192种GB2312中文字库字形。字符显示RAM在液晶模块中的地址80H~9FH。字符显示的RAM的地址与32个字符显示区域有着一一对应的关系,其对应关系如图1所示。
4 应用说明
用OCM4X8C显示模块时应注意以下几点:
①欲在某一个位置显示中文字符时,应先设定显示字符位置,即先设定显示地址,再写入中文字符编码。
②显示ASCII字符过程与显示中文字符过程相同。不过在显示连续字符时,只须设定一次显示地址,由模块自动对地址加1指向下一个字符位置,否则,显示的字符中将会有一个空ASCII字符位置。
③当字符编码为2字节时,应先写入高位字节,再写入低位字节。
④模块在接收指令前,向处理器必须先确认模块内部处于非忙状态,即读取BF标志时BF需为“0”,方可接受新的指令。如果在送出一个指令前不检查BF标志,则在前一个指令和这个指令中间必须延迟一段较长的时间,即等待前一个指令确定执行完成。指令执行的时间请参考指令表中的指令执行时间说明。
⑤“RE”为基本指令集与扩充指令集的选择控制位。当变更“RE”后,以后的指令集将维持在最后的状态,除非再次变更“RE”位,否则使用相同指令集时,无需每次均重设“RE”位。
图2 OCM4X8C的2线串行工作模式操作时序
5 接口方式与时序
OCM4X8C具有串/并多种接口方式,方便了模块与各种单片机、微处理器的连接。
(1)4/8位并行接口方式
当模块的PSB脚接高电平时,模块即进入并行接口模式。在并行模式下可由功能设定指令的“DL”位来选择8位或4接口方式,主控制系统将配合“RS”、“RW”、“E”DB0~DB7来完成指令/数据的传送,其操作时序与其它并行接口液晶显示模块相同。
(2)2/3线串行接口方式
当模块的PSB脚接低电平时,模块即进入串行接口模式。串行模式使用串行数据线SID与串行时钟线SCLK来传送数据,即构成2线串行模式。
OCM4X8C还允许同时接入多个液晶显示模块以完成多路信息显示功能。此时,要利用片选端“CS”构成3线串行接口方式,当“CS”接高电位时,模块可正常接收并显示数据,否则模块显示将被禁止。通常情况下,当系统仅使用一个液晶显示模块时,“CS”可连接固定的高电平。
模块2线串行工作操作时序如图2所示。
由图2可以看出,单片机与液晶模块之间传送1字节的.数据共需24个时钟脉冲。首先,单片机要给出数据传输起始位,这里是以5个连续的“1”作数据起始位,如模块接收到连续的5个“1”,则内部传输被重置并且串行传输将被同步。紧接着,“RW”位用于选择数据的传输方向(读或写),“RS”位用于选择内部数据寄存器或指令寄存器,最后的第8位固定为“0”。在接收到起始位及“RW”和“RW”的第1个字节后,下一个字节的数据或指令将被分为2个字节来串行传送或接收。数据或指令的高4位,被放在第2个字节串行数据的高4位,其低4位则置为“0”;数据或指令的低4位被放在第3个字节的高4位,其低4位也置为“0”,如此完成一个字节指令或数据的传送。需要注意的是,当有多个数据或指令要传送时,必须要等到一个指令完成执行完毕后再传送下一个指令或数据,否则,会造成指令或数据的丢失。这是因为液晶模块内部没有发送/接收缓冲区。
图3 AT89C2051与OCM4X8C的2线串行接口电路
6 OCM4X8C应用实例
使用OCM4X8C的2线串行接口方式可大大简化液晶显示模块与单片机之间的接口设计;同时,也使液晶显示模块显示汉字变得极为容易,从而改变过去单片机系统人机界面不够友好的弊端。AT89C2051单片机与OCM4X8C的接口电路如图3所示。下面给出相应显示程序。
;位定义
SID BIT P1.0 ;串行数据线
SCLK BIT P1.1 ;串行时钟线
;内存数据定义
START EQU 30H ;起始字节
COM EQU 31H ;命令/数据
HDATA EQU 32H ;命令/数据字节高位
LDATA EQU 33H ;命令/数据字节低位
ASC EQU 34H ;ASCII数据单元
初始化子程序:
INILCM:LCALL DL40MS ;延时等待内部复位
MOV COM,#30H ;使用8位控制界面
LCALL WRITE
MOV COM,#30H ;使用基本指令集
LCALL WRITE
MOV COM,#0CH
LCALL WRITE ;整体显示ON
MOV DL1MS
MOV COM,#01H ;清屏
LCALL WRITE
LCALL DL40MS
MOV COM,#06H ;显示右移
LCALL WRITE
LCALL DL1MS
RET
模块写入子程序:
WRITE:MOV A,COM ;送待发数据命令A
MOV A,#0F0H ;屏蔽低4位
MOV HDATA,A ;将高4位送HDATA单元
MOV A,COM ;取低4位
SWAP A ;高低4位互换
MOV A,#0F0H
MOV LDATA,A ;将低4位送LDATA单元
MOV A,START ;取起始字节
LCALL SENDBYTE ;发送
LCALL DL1MS ;延时1ms
MOV A,HDATA
LCALL SENDBYTE
LCALL DL1MS
MOV A,LDATA
LCALL SENDBYTE
LCALL DL1MS
RET
显示汉字子程序:
HZDISP:
MOV START,#0F08H 写入命令
MOV COM,#80H 设定显示位置
LCALL WRITE
MOV DPTR,#TABLE 指向文字型代码表
MOV A,#00H 取汉字代码低位
LOOP2:MOVC A,A+@DPTR
CJNE A,#0,DISP ;遇“0”结束显示
RET 写完一行则结束
DISP:MOV START,#0FAH ;写数据
MOV COM,A
LCALL WRITE ;写入显示模块
INC DPTR ;取汉字代码高位
AJMP LOOP2 ;未显示完则继续
TABLE:DB“中文图形点阵”,0;汉字代码表
DB“液晶显示模块”,0;
串行字节数据发送子程序:
SENDBYTE:MOV R7,#08H ;发送8位
LOOP1:RLC A
MOV SID,C ;数据送数据线
CLR SCLK ;产生同步时钟
SETB SCLK
DJNZ R7,LOOP1 ;未发送完8位继续
RET
结语
由该模块构成的液晶显示方案与同类型的图形点阵液晶显示模块相比,不论硬件电路结构或显示程序都要简洁得多,且该模块的价格也略低于相同点阵的图形液晶模块。
篇2:串行接口中文图形点阵液晶显示模块的应用
串行接口中文图形点阵液晶显示模块的应用
摘要:介绍一种具有4位/8位并行、2线/3线串行多种接口方式,内部含有国标一级、二极简体中文字库的图形点阵液晶显示模块;利用该模块灵活的接口方式和简单、方便的操作指令,可构成全中文人机交互图形界面。介绍模块的性能特点、操作指令及接口方式;以AT89C2051单片机及2线串行接口方式为例,给出相应的硬件电路及显示子程序。关键词:串/并接口 液晶模块 中文字库
引言
液晶显示器件由于具有显示信息丰富、功耗低、体积小、质量小、无辐射等优点,得到了广泛的应用;但液晶显示模块复杂的硬件接口和软件编程却令产品设计人员生畏,因而限制了该模块在某些领域的应用。本文介绍一种具有串/并多种接口方式,且内部含有GB2312一级、二级简体中文字库的图形点阵液晶模块,使用该模块可构成具有全中文人机交互图形界面的液晶显示系统。
1 性能特点
OCM4X8C是具有串/并接口,具内部含有中文字库的图形点阵液晶显示模块。该模块的控制/驱动器采用台湾矽创电子公司的ST7920,因而具有较强的控制显示功能。OCM4X8C的液晶显示屏为128×64点阵,可显示4行、每行8个汉字。为了便于简单、方便地显示汉字,该模块具2Mb的中文字型CGROM,该字型ROM中含有8192个16×16点阵中文字库;同时,为了便于英文和其它常用字符的显示,具有16Kb的16×8点阵的.ASCII字符库;为便于构造用户图形,提供了一个64×256点阵的GDRAM绘图区域,且为了便于构造用户所需字型,提供了4组16×16点阵的造字空间。利用上述功能,OCM4X8C可实现汉字、ASCII码、点阵图形、自造字体的同屏显示。为便了和多种微处理器、单片机接口,模块提供了4位并行、8位并行、2线串行、3线串行多种接口方式。
该模块具有2.7~5.5V的宽工作电压范围,且具有睡眠、正常及低功耗工作模式,可满足系统各种工作电压及便携式仪器低功耗的要求。液晶模块显示负电压,也由模块提供,从而简化了系统电源设计。模块同时还提供LED背光显示功能。除此之外,模块还提供了画面清除、游标显示/隐藏、游标归位、显示打开/关闭、显示字符闪烁、游标移位、显示移位、垂直画面旋转、反白显示、液晶睡眠/唤醒、关闭显示等操作指令。
2 模块引脚定义和用户指令集
OCM4X8C的引脚说明,如表1所列。
表1 OCM4X8C引脚说明
引 脚名 称方 向说 明1VSS-GND(0V)2VDD-逻辑电源(+5V)3V0-[1] [2] [3] [4] [5] [6] [7]
篇3:可视化编程串行控制中文字库液晶显示模块VLCM30
可视化编程串行控制中文字库液晶显示模块VLCM320240
摘要:VLCM320240是一款具有可视化编程图形界面、采用串行控制、内含GB2312简体中文字库及64kB自造图库的液晶图形显示模块。该模块采用台湾EDT公司的蓝膜负显EW32F10BCW?具有320×240的点阵分辨率和CCFT背光源。文中介绍了该模块的性能特点、接口管脚说明、用户命令及主要参数,同时给出了VLCM320240与单片机的接口电路及相应显示程序。关键词:可视化编程;串行控制;中文字库;单片机
1引言
图形点阵液晶显示模块由于具有显示信息丰富、功耗低、体积小、重量轻、寿命长、不产生电磁辐射污染等优点而成为单片机系统中理想的显示器件,并被广泛应用于单片机控制的智能仪器仪表、工业控制领域、通信器材和家用电器中。但普通图形点阵液晶显示模块用于显示图形界面时是非常困难的,首先图形显示要占用大量的用户ROM空间。以320×240点阵液晶模块为例,显示一幅图片(全屏幕)占用的ROM空间为?320×240?/8=9.6kByte,这对片内仅有几k字节的FLASH闪存单片机来说是不可能的;其次,显示图片过程极其复杂,应根据待显示的图形计算好各点阵的位置,再以字节为单位写入数据来控制各点阵的亮灭。如果显示多幅图片,复杂程度更加令人生畏。
另外,图形点阵液晶显示模块在显示汉字时也存在着占用ROM容量大、与单片机的硬件接口电路复杂以及接口时序复杂,软件编程繁复等问题。
正是由于上述几点不足限制了图形点阵液晶显示模块在生成复杂精美的中文人机界面时的应用。而中文界面及图形显示又是电子产品人机界面发展的必然趋势。实际上任何一种显示界面本质上都是由若干像素排列组合生成,若能将图形点阵液晶模块显示控制的底层操作集成在模块内的单片机中,并将生成显示界面中所用到的各种图形界面和标准汉字库预先存入模块中,用户使用时就可以仅通过串口向其发送简单的控制命令以生成图文显示界面,从而使得复杂的图形界面生成变得简单容易,最终解决电子产品开发过程中难以生成精美的人机界面的难题。
VLCM320240即是一款具有上述功能的图形点阵液晶模块。该模块是由深圳研安佳公司推出的。
2VLCM320240性能特点
VLCM320240图形点阵液晶显示模块具有如下主要特点:
●该液晶显示模块采用台湾EDT公司的蓝膜负显EW32F10BCW?它具有320×240的点阵分辨率和CCFT背光源;
●内部含有台湾华邦公司生产的高速单片机W78E516BP;
●内含GB231216×16点阵国标一级、二级简体字库,字库中的汉字可显示在液晶屏的任意位置;
●内含ASCⅡ8×16点阵英文字库;
●内含64kB自造图库或美术字库、显示资料现场可在线编程FLASH;
●内含SED1330FLCD控制器及32kB显示缓冲区;
●配套VisualLCM仿真调试软件可在电脑上独立完成显示界面的编辑、资料下载及界面生成;
●具有标准RS232串行通信控制,可方便地由上位计算机或单片机进行控制;
●具有最小的硬件资源占用,使用单片机做上位机时,可使用两根I/O口线模拟串口,而使用TTL电平控制时,仅需一根I/O口线。
VLCM320240留给用户的接口有两个,即电源口POWER和RS232通信口。
其中电源口包括以下几个端口:
●+9V电源:稳压后供给单片机;
●GND:模块电源地;
●+5V电源:供逆变器使用。
RS232口定义如下:
●BUSY:忙标志输出,低电平时为忙;
●RX:控制命令输入,其中有8位数据位,1个起始位,一个停止位;
●GND:信号地。
3用户命令
在具体使用时,可通过上位机的用户命令来控制VLCM320240的显示.
汉字或ASCII字符显示命令中的参数为所显示汉字的两个字节国标码或ASCII字符代码。
4具体应用
VLCM320240可视化
编程液晶显示模块可广泛应用于显示信息内容丰富或显示信息容量巨大的应用场合,如信息家电,通信器材、工业控制、智能仪器仪表等领域,模块在使用时可分为显示界面生成及实时显示两个步骤。
4.1显示界面的模拟生成
显示界面的生成在上位计算机上完成,利用可视化编程软件VisualLCM可将系统设计中用到的各种图形或文字进行归纳并编辑成图案,但图案的大小不得超过320×240像素,同时图案必须选为黑白两色。然后将编辑好的图案下载到模块ISPFLASH存储器中,图案的数量应小于256幅。对于显示较多的文字信息,也应尽量生成美观的`艺术字体并保存为图案。这样可大大加快文字信息的显示速度。图案下载到模块后,可通过串口发送BMP命令以便将任意一张图片在液晶模块的任意位置上显示。
4.2实时信息显示
由上位计算机生成的各种图形信息最终要在单片机的控制下实现相应信息的显示。图1所示是以AT89C52为例给出的单片机与VLCM320240的接口电路。
在图1所示的电路中,AT89C52的RXD端与VLCM320240RS232通信口的BUSY端相连,而将单片机TXD端与模块RX端相连,为保证波特率的准确性,应将AT89C52的晶振选取为11.0592MHz。此外,在编制相应的显示控制软件时,还应注意以下几点:
●串行口模式应设为模式1(1个起始位,8个数据位,1个停止位);
●波特率设应当为19200(TH1=TL1=0FDH,SMOD=1);
●在发送命令之前应检测模块为闲态(BUSY=1)?否则所发的命令可能失效;
●串口发送的必须是完整命令的ASCII码(汉字为其机内码,ASCII字符为其ASCII码),如命令“BMP0B000C0D”,实际由串口发送的内容是“424D503042303030433044”,顺序为:
“B→M→P→0→B→0→0→0→C→0→D”;
●在每条命令的首末还要加上命令结束码“回车键"的ASCII码“0DH”,以表明该命令的结束。
●若单片机AT89C52的串口已被占为它用,那么用一根口线来摸拟生成一个通讯协议为(19200,N,8,1)的软串口发送命令即可。
下面给出与上述电路配套的显示控制子程序:
;位定义
BUSYBITP3;定义忙信号线
;数据字节定义
XVEQU30H;定义参数x
XHVEQU31H;定义参数xH
YVEQU32H;定义参数y
NUBEREQU33H;定义参数n
WIDTHEQU34H;定义参数w
HIGHTEQU35H;定义参数h
ASCXHEQU36H;定义参数x高四位
ASCXLEQU37H;定义参数x低四位
ASCXHHEQU38H;定义参数xH高四位
ASCXHLEQU39H;定义参数xH低四位
ASCYHEQU3AH;定义参数y高四位
ASCYLEQU3BH;定义参数y低四位
ASCNHEQU3CH;定义参数n高四位
ASCNLEQU3DH;定义参数n低四位
ASCWHEQU3EH;定义参数w高四位
ASCWLEQU3FH;定义参数w低四位
ASCHHEQU40H;定义参数h高四位
ASCHLEQU41H;定义参数h低四位
;初始化子程序
INITSIO:MOVSCON,#50H;串行口方式1
MOVTMOD,#21H
MOVTH1,#0FDH;波特率=19200?
MOVTL1?#0FDH
ORLPCON?#80H;SMOD=1
SETBTR1;启动T1
RET
;设置汉字或ASCII字符显示首地址命令
ORDERHZA:MOVA?XV
MOVR0?#REGASCXH
LCALLHASC;将参数x转换为
两个字节的ASCII码
MOVA?XHV
MOVR0?#REGASCXHH
LCALLHASC;将参数xH转换为
两个字节的ASCII码
MOVA?YV
MOVR0?#REGASCYH
LCALLHASC;将参数y转换为
两个字节的ASCII码
LCALLBUSYCK
MOVA?#“H”;发送命令码HZA
的ASCII码
LCALLSENDBYTE
MOVA?#“Z”
LCALLSENDBYTE
MOVA?#“A”
LCALLSENDBYTE
MOVR0?#REGASCXHH
LCALLSENDCS;发参数H的ASCII码
MOVR0?#REGASCXH
LCALLSENDCS;发参数x的ASCII码
MOVR0?#REGASCYH
LCALLSENDCS;发参数y的ASCII码
LJMPORDEREND
;显示汉字串子程序
ORDERHZ?LCALLBUSYCK;检测模块闲状态
MOVA?#“H”
LCALLSENDBYTE
MOVA?#“Z”
LCALLSENDBYTE
MOVA?#“D”
LCALLSENDBYTE
NEXTHZ:CLRA;取汉字的高八位内码
MOVCA,@A+DPTR
INCDPTR;调整内码指针
LCALLSENDBYTE
CLRA;取汉字的低八位内码
MOVCA,@A+DPTR
INCDPTR;调整内码指针
LCALLSENDBYTE
DJNZR7,NEXTHZ
MOVA,#0DH;命令结束
LCALLSENDBYTE
RET
;显示ASCII字符串子程序
ORDERASCII:
LCALLBUSYCK
MOVA,#“H”;
LCALLSENDBYTE
MOVA,#“Z”
LCALLSENDBYTE
MOVA?#“D”
LCA
LLSENDBYTE
NEXTASCII?CLRA?取ASCII码
MOVCA?@A+DPTR
INCDPTR
LCALLSENDBYTE
DJNZR7?NEXTASCII
MOVA?#0DH
LCALLSENDBYTE
RET
;清屏子程序
ORDERCLR:LCALLBUSYCK
MOVA,#“C”
LCALLSENDBYTE
MOVA?#“L”
LCALLSENDBYTE
MOVA?#“R”
LCALLSENDBYTE
LJMPORDEREND
;显示下载到模块内图形子程序
ORDERBMP:MOVA,XV
MOVR0,#REGASCXH
LCALLHASC;将参数x转换为两个
字节的ASCII码
MOVA,XHV
MOVR0?#REGASCXHH
LCALLHASC;将参数xH转换为两
个字节的ASCII码
MOVA,YV
MOVR0,#REGASCYH
LCALLHASC;将参数y转换为两个
字节的ASCII码
MOVA,NUBER
MOVR0?#REGASCNH
LCALLHASC;将参数n转换为两
个字节的ASCII码
LCALLBUSYCK;检测模块闲状态
MOVA,#“B”;先发送命令码
BMP的ASCII码
LCALLSENDBYTE
MOVA,#“M”
LCALLSENDBYTE
MOVA?#“P”
LCALLSENDBYTE
MOVR0,#REGASCNH
LCALLSENDCS;发参数n的ASCII码
MOVR0,#REGASCXHH
LCALLSENDCS;发参数xH的ASCII码MOVR0,#REGASCXH
LCALLSENDCS;发参数x的ASCII码
MOVR0,#REGASCYH
LCALLSENDCS;发参数y的ASCII码
ORDEREND:MOVA,#0DH;发送命令结标
志“0DH”
MOVSBUF,A
JNBTI,$
CLRTI
RET
;结束上次命令子程序
BUSYCK:MOVA,#0DH
MOVSBUF,A
JNBTI,$
CLRTI
JNBBUSY?$
RET
;发送参数子程序
SENDCS:MOVA,@R0
LCALLSENDBYTE
INCR0
MOVA,@R0
LCALLSENDBYTE
RET
;发送字节数据子程序
SENDBYTE:MOVSBUF,A
JNBTI,$
CLRTI
RET
TABHZ:DB“汉字内码表”
TABASCII:DB“ASCII字符表”
5结束语
VLCM320240可视化编程液晶显示模块由于可将系统中用到的画面预置到液晶显示模块内部,因而使得图形界面与中文界面的生成变得非常容易,因此,该模块无疑将是显示信息要求较高的应用领域中理想的显示器件选择之一。

篇4:COM串行通讯接口
简称串行口(RS-232-C),是电脑与其它设备传送信息的一种标准接口,
COM串行通讯接口
,
现在的电脑至少有两个串行口COM1和COM2。
篇5:ADμC812的串行外设接口SPI及其应用
ADμC812的串行外设接口(SPI)及其应用
摘要:ADμC812是一种新型的集成12位数据采集系统。它的串行外设接口SPI(serial peripheral interface)可进行主机和多片从外围器件的信息传递,即主机对从机的控制及从机向主机提供各种信息等,从而实现系统之间的各种控制和操作。关键词:ADμC812 串行通信 SPI串行端口
概述
ADμC812是一种全集成的12位数据采集系统。它在单个芯片内包含了高性能的自校准多通道ADC、2个12位DAC以及可编程的8位MCU(与8051兼容)。为便于MCU与各种外围设备进行通信,ADμC812提供了3种串行I/O端口:UART接口、I2C兼容的串行接口和串行外设接口(SPI)。其中,SPI接口是工业标准的同步串行接口,是一种全双工、三线通信的系统。它允许MCU与各种外围设备以串行方式(8位数据同时、同步地被发送和接收)进行通信。在SPI接口中,数据的传输需要1个时钟信号和两条数据线。
SPI可工作在主模式或从模式下。在主模式,每一位数据的发送/接收需要1次时钟作用;而在从模式下,每一位数据都是在接收到时钟信号之后才发送/接收。1个典型的SPI系统包括1个主MCU和1个或几个从外围器件。SPI接口可设置成在发送/接收1个字节的结束时产生1次中断。
主时钟可以通过编程而成为不同的状态,既可编程为4种不同主波特率的任一种,又可对时钟的极性和相位进行编程。
SPI也可用于那些需要比微控制器上的并行I/O端口更多输入或输出端的场合中。SPI提供了一种扩展I/O功能的最简单的办法,只需使用最少的微控制器引脚。
(本网网收集整理)
一、工作原理
1.SPI的信号说明
SPI系统使用4条线可与多种标准外围器件直接接口:串行时钟线(SCLOCK)、主机输入/从机输出数据线MISO、主机输出/从机输入数据线MOSI和低电平有效的从机选择线SS。
SCLOCK是主机的时钟线,为MISO数据的发送和接收提供同步时钟信号。每一位数据的传输都需要1次时钟作用,因而发送或接收1个字节的数据需要8个时钟的作用。主机的时钟是通过主机的硬件设置的,并和各个从机的SCLOCK相连。时钟的波特率、极性、相位是由SPICON(SPI控制寄存器)来设置的。
MISO是主机的输入/从机的输出数据线。主机的MISO应与从机的MISO相连进行高位在前的数据交换。
MOSI是SPI接口的SPI主机输出/从机输入数据引脚。这一引脚应当连接主微控制器的数据输出和从微控制器的数据输入端MOSI,进行高位在前数据的交换。
SS只在从方式中用于低电平选中从。SS对应的是P1.5,在初始化时P1口被设置为模拟输入,因而通过清除P1.5可将其设置为数据输入,才可完成主、从机的通信。
2.SPI的寄存器
SPI有2个相关寄存器:SPICON和SPIDAT,其中SPICON包含各种标志位、使能位、方式位及时钟位。各位都是可寻址的,如表1及表2所列。
表1 SPICON寄存器
ISPIWCOLSPESPIMCPOLCPHASPR1SPR0FFH 0FEH 0FDH 0FCH 0FBH 0FAH 0F9H 0F8H 0R/WR/WR/WR/WR/WR/WR/WR/W表2 SPICON各位功能
位功 能ISPI中断标志位。当发送和接收1字节数据完毕时自动置全。该位也可以通过软件控制。当于中断时,应当打开中断EA,将IE2.0置位。当执行中断服务程序时,硬件自动清除该位WCOL写冲突错误标志位。
当SPI正进行数据交换时,若向SPIDAT中写数据将产生写冲突错误,写入的数据将无效,原有交换继续执行。必须由软件清除SPESPI使能位。
SPE=0,I2C串口使能,SPI串口禁止;
SPE=1,I2C串口禁止,SPI串口使能SPIM主模式选择位。
SPIM=0,SPI工作于从模式;
SPIM=1,SPI工作于主模式CPOL时钟极性选择位。
CPOL=0,主机时钟有高到低的跳变读取数据,数据字节之间传输时,时钟处于高电平空闲状态;
CPOL=1,主机时钟有低到高的跳变读取数据,各数据字节之间传输时时钟处于低电平空闲状态(见图1)CPHA时钟相位选择位。
CPHA=0,传输数据的高位MSB在SS的降沿出现,在时钟第1个前沿读入;之后下一数据位在时钟后沿出现,在下一个前沿读入;直到8位数据读完。
CPHA=1,数据在时钟前沿出现,在同一时钟周期的后沿读入(见图1)。
读位还可控制从机的同步方式SPR1
SPR0SPI波行选择位。
SPR1 SPR0 波特率
0 0 fosc/4
0 1 fosc/8
1 0 fosc/32
1 1 fosc/64
注:从方式下这两位都清零
另一个SPI寄存器是SPIDAT。对这一寄存器的写操作会产生从高位开始的一位位的数据发送。如果写操作发生在其他数据正在传递的过程中,那么WCOL将置位。如果写操作进行时没有其他数据在传递,SPIDAT中的数据将自动锁存到移位寄存器中,移位寄存器从高位开始发送数据,发送结束后输入的字节将锁存到SPIDAT中,可进行软件读出。
3.主模式
发送和接收可以同时工作在主模式下。主模式的显著特征是不论是发送还是接收始终有SCLOCK信号,SS信号不是必需的。因为SPI串口只能有一片主机,因而不存在主机的选择问题。
发送操作是由向SPIDAT中写数据而触发的。在主模式下,时钟信号的1次作用对应一位数据的发送(MISO)和另一位数据的接收(MOSI)。如图2所示,在主机中数据从移位寄存器中自左向右发出送到从机(MOSI),同时从机中的数据自右向左发到主机(MISO),经过8位时钟周期完成1个字节的发送。输入字节保留在移位寄存器中,此时ISPI自动置位(如果有中断设置,则产生中断),移位寄存器的数据将被锁存到SPIDAT中,此后对SPIDAT的读操作将把数据读出。
将主机的SS和从机SS的相连的方式没有意义,因为P1.5只可作输入,所以主机的SS不能为从机的SS提供选通信号。为了解决这一问题,可利用主机其他输入/输出口线与从机的SS相连,实现选通控制,可以有多根口线控制多个从机。如果要读取主机SS的状态,需要将主机的SS与主机上另一根输入/输出口线相连,通过对该口线读操作获取主机SS的状态。
4.从模式
发送和接收可以同时工作在从模式下。从模式的显著特征是:不论是发送还是接收始终必须在SCLOCK信号作用下进行,并且SS信号必须有效。SS在初始化之后,要设置为数字输入(CLR P1.5),当SS信号无效时,数据的发送无法进行并且输入的数据视为无效。这是因为输入的时钟信号是与SCLOCK的逻辑与操作,而SCLOCK信号是SS的反转。这样当SS为高时,就没有时钟信号输入。
当CPHA=1时,SS始终置地;当CPHA=0时,在从机接收到第1个时钟之前SS必然置低,在接收完毕之后必然置高。数据的发送和接收的过程见图2,与主模式下基本相似,只是移位寄存器的数据移出和输入方向与之相反。从模式下的SS信号也须通过连接其他口线来读取状态。
5.从模式下的时钟同步
通过设置CPHA位可以获得从模式下的两种同步方式。由于SCLOCK信号线可能存在干扰脉冲,如果这些干扰脉冲大到一定程序,从机时就会误认为收到了时钟信号,将导致接收数据错误。这样依靠同步结构的SPI将失去同步的意义。
CPAH=1时,如果有其他脉冲的干扰,ADμC812将无法与主机获得同步。选择这种方式,当SS为低时,时钟计数器才开始工作。每经过8个时钟同周期,ISPI将置位(如果中断设置正确将产生中断),并且移位寄存器的数据锁存到SPIDAT中。SS保持低电平不会使时钟计数器复位。
CPHA=0时,如果有其他脉冲的干扰,ADμC812也可与主机获得同步。在这种方式下,从机通过SS信号获得的,而不是通过时钟信号获得的。当SS信号变低时,时钟计数器复位,数据位在此后的每一个时钟发送和接收;当SS变高时,ISPI位置位(如果中断设置正确,将产生中断),并且移位寄存器的'数据锁存到SPIDAT中。ISPI置位与数据的锁存始终与时钟计数值无关,因此当SS的触发在多于或少于8个时钟时,在SS返回高电平瞬间,ADμC812将产生中断,并且收到或发送的数据将不可靠。在这种方式下,SS不可始终置低,如果始终置低,那么从机将始终发送00。
当了与主机获得同步,从机SS的下降沿必然由主机控制。当SS变低时,从机产生外部中断,中断服务中SPE位由软件清除,然后重新置位。SPE位的置位将使时钟计数器复位到零。须注意的一点是这一中断必须有比其他中断更高的优先级,才可使从机在主机第1个时钟到来之间获得同步。主机程序必须为从机中断执行中断服务提供足够的时间,以对SPE进行操作。典型的操作是在清除SS和向SPIDAT中写数据之间用12~15个NOP指令。
二、实际应用
图3所示为1个主机和1个从机典型的电路连接图。注意主、从机要有公共的地。
根据图3的连接情况及前面分析的主、从机工作工程,绘制流程图如图4所示。
主机程序:
SET EA ;打开中断允许
SET IE2.0 ;打开SPI中断
MOV SPICON,#30H ;送SPI控制字
MASTER:CLR P3.5 ;置SS为低
NOP ;等待从机中断执行完毕
NOP
NOP
NOP
MOV SPIDAT,#DATA;向SPIDAT中写数据
LCALL DELAY ;根据选择的分频比算出数据传输的时间,确定DELAY子程序的延时时间(也可用中断方式)
SETB P3.5 ;将SS置高
LJMP MASTER ;送下一个数
从机程序:
ORG 0013H ;外部中断INT0入口
CLR SPE ;SPE位清除
SETB SPE ;与主机时钟获得同步
SETB P3.2 ;撤销中断
RETI
……
SETB EA ;打开中断允许
SETB IE2.0 ;打开SPI中断
SETB EX0 ;打开外部中断
MOV SPICON,#20H ;送SPI控制字
CLR P1.5 ;设置为数字输入
JB P3.1$ ;判断P3.1是否为低
CLR P3.2 ;产生INT0中断
CLALL DELAY ;等待数据传送完毕
MOV A,SPIDAT ;读取数据
通过以上程序可以实现从主机向从机中发送数据的操作。在某些情况下,从微控制器所完成的功能较少,如果采用ADμC812会产生资源和经济的浪费,为此可以采用MCS-51系列的微控制器作为从机。这样不仅实现了必要的功能又节约了资源。由于MCS-51没有SPI串口,所以采用MCS-51作为从机需要模拟SPI的工作模式来完成数据的传送。下面给出模拟SPI接收数据的电路连接图(见图5)和相关程序。
ADμC812作为主机的程序与前面相同。8051模拟SPI串口接收数据程序如下:
ORG 0013H
INT0:MOV R0,#8 ;移位计数值
INT0':JB P3.4,INT0 ;输入时钟位高电平时等待
MOV C,P3.3 ;输入时钟下降沿接收数据
RLC A ;将数据存入A中
DJNZ R0,INT0' ;8位是否传送完
SETB P3. ;8位数据接收完毕,关中断
MOV @R1,#DATA ;将接收数据存到内部RAM
INC R1 ;指向下一个内部RAM单元
CJNE R1,#00H,REC
MOV R1,#80H
RETI
……
SETB EA
SETB EX0
MOV R1,#80H ;内部存储器80H~FFH单元存储接收的数据
……
通过对SPI串口原理的介绍,SPI串行接口可以在短距离内进行主机与从机的数据传送,并且具有多种可调的传输方式、连接电路简单、使用方便等优点。为实现主机和从机及从外围设备的通信提供了一种简单、易行的方案。
篇6:加速图形接口
AGP(AccelerateGraphicalPort),加速图形接口,随着显示芯片的发展,PCI总线日益无法满足其需求。英特尔于7月正式推出了AGP接口,它是一种显示卡专用的局部总线。严格的说,AGP不能称为总线,它与PCI总线不同,因为它是点对点连接,即连接控制芯片和AGP显示卡,但在习惯上我们依然称其为AGP总线。AGP接口是基于PCI2.1版规范并进行扩充修改而成,工作频率为66MHz。AGP总线直接与主板的北桥芯片相连,且通过该接口让显示芯片与系统主内存直接相连,避免了窄带宽的PCI总线形成的系统瓶颈,增加3D图形数据传输速度,同时在显存不足的情况下还可以调用系统主内存。所以它拥有很高的传输速率,这是PCI等总线无法与其相比拟的,
由于采用了数据读写的流水线操作减少了内存等待时间,数据传输速度有了很大提高;具有133MHz及更高的数据传输频率;地址信号与数据信号分离可提高随机内存访问的速度;采用并行操作允许在CPU访问系统RAM的同时AGP显示卡访问AGP内存;显示带宽也不与其它设备共享,从而进一步提高了系统性能。AGP标准在使用32位总线时,有66MHz和133MHz两种工作频率,最高数据传输率为266Mbps和533Mbps,而PCI总线理论上的最大传输率仅为133Mbps。目前最高规格的AGP8X模式下,数据传输速度达到了2.1GB/s。AGP接口的发展经历了AGP1.0(AGP1X、AGP2X)、AGP2.0(AGPPro、AGP4X)、AGP3.0(AGP8X)等阶段,其传输速度也从最早的AGP1X的266MB/S的带宽发展到了AGP8X的2.1GB/S。
篇7:液晶显示模块MGLS240128在图形显示中的应用
液晶显示模块MGLS240128在图形显示中的应用
摘要:MGLS240128是香港精电公司生产的内藏T6963C控制器液晶显示模块。文中介绍了MGLS240128的原理及功能,给出了该显示模块与单片机的接口方法。同时给出了用C51语言编制的图形显示应用程序。关键词:液晶模块;单片机;图形显示;C51
1引言
在目前诸多的显示器件中,液晶显示器以其具有工作电压低、功耗低、显示信息量大、寿命长、不产生电磁辐射污染、可以显示复杂的文字及图形等优点,而在各种仪器仪表、电子设备、移动通讯及家用电器中得到了广泛的应用。本文介绍MGLS240128T图形液晶显示模块就是香港精电公司生产的、内藏T6963C控制器的液晶显示模块。
2模块工作原理
2.1基本功能
MGLS240128T图形液晶显示模块由控制器T6963C、列驱动器T6A39、行驱动器T6A40以及与外部设备的接口等几部分组成,它既能显示字符(包括中文和西文字符),又能显示图形,还能够将字符与图形混合显示。其主要参数如下:
●点阵数:240×128;
●点尺寸:0.4×0.4mm;
●视屏尺寸:114×64mm;
●汉字字体:8×8,8×6;
●背光:LED或EL;
●电源:+5V;
●工作温度范围:-20~+70℃。
2.2引脚功能
MGLS240128T图形液晶显示模块的引脚说明如表1所示。该模块对液晶显示的控制和驱动都由模块内部的芯片及电路来完成,因此它与外部的连接只有数据线和控制线。主控CPU通过这些数据线和控制线来设置所需要的显示方式,其它功能均由模块自动完成。
表1MGLS240128T模块的引脚功能
管脚号管脚名称
功能描述
1FG框架地2GND电源地3VCC电源电压4NC未用5WR写控制信号,低电平有效6RD读控制信号,低电平有效7CS片选信号,低电平有效8C/D通道选通信号,C/D1为表示指令,C/D为0表示数据通道9RST复位信号,低电平有效10~17DB0~7数据总线,三态18FS字体选择,FS为0选择8×8字体,FS为1选择8×6字体
2.3指令系统
MGLS240128T图形液晶显示模块本身内藏控制器T6963C,它最大的特点是具有独特的硬件初始设置功能,由于显示驱动所需的参数(如占空比系数、驱动传输的字节数/行以及字符的字体选择等)均由引脚电平来设置,因此T6963C的初始化在上电时就已基本设置完成。除此之外,它还具有很强的软件控制能力,也就是由主控CPU通过接口写入液晶模块的指令来实现模块控制。软件控制主要集中于显示功能的设置上。该模块的常用指令如表2所列。
表2MGLS240128T模块的常用指令设置
指令名称控制状态指令代码CDRDWRD7D6D5D4D3D2D1D0读状态字111S7S6S5S4S3S2N1S0地址指令设置11000100N2N1N0显示区域设置110010000N1N0显示方式设置1101000CGN2N1N0显示状态设置1101001N3N2N1N0光标自动读写设置11011000N2N1N0数据自动读写设置110101100N1N0数据一次读写设置11011000N2N1N0屏读(一字节)设置11011100000屏读(一行)设置11011101000位操作1101111N3N2N1N0数据写操作010数据数据读操作001数据
3液晶模块的应用
3.1与单片机的接口连接
MGLS240128T液晶显示模块与计算机的接口时序采用Inter8080时序。下面以8031单片机为例说明其接口方法。它与单片机的接口方法分为直接访问方式和间接控制方式。
直接访问方式是把液晶模块作为存储器接在CPU的数据线、地址线和控制线上,同时把它的数据总线接在8031的P0口上,片选以及寄存器选择信号线由P2口提供,读写操作由单片机的.读写操作信号控制。这种方式是以访问存储器的方式访问液晶显示模块,具体连接如图1(a)所示。
间接控制方式则不使用单片机的数据系统,而是利用它的I/O口来实现与显示模块的联系。即将液晶显示模块的数据线与单片机的P1口连接作为数据总线,另外三根时序控制信号线通常利用8031的P3口中未被使用的I/O口来控制。这种访问方式不占用CPU的存储器空间,它的接口电路与时序无关,其时序完全靠软件编程实现。接口方式如图1(b)所示。
3.2软件设计
单片机与液晶显示模块接口程序中的文字显示已经为人们所熟悉,因此这里不再赘述,本文只介绍图形显示方法。图形或曲线的显示程序的关键在于显示点地址的计算,下面给出采用C51语言编制的图形显示的主要相关程序。
//发送数据
voidw_data(unsignedchard)
{CS=0;
check;
CD=0;P2=d;WRITE=0;WRITE=1;
CS=1;
}
//发送命令
voidw_command(unsignedchard)
{CS=0;
check();?
CD=1;P2=d;WRITE=0;WRITE=1;
CS=1;
}
//查状态
voidcheck(void)
{unsignedcharM;
do{P2=0xff;
CD=1;READ=0;
M=P2;
READ=1;
}
while((M&0x03)<0x03);
}
//画点
voiddraw(x,y)
{unsignedintm;
unsignedcharn,t;
n=0x12;
t=0x34;
m=(y&0x7f)*0x20;
n=x/8;
t=m-(m/0x100)*0x100+n;
w_data(t);?
t=m/0x100+0x08;
w_data(t);?
w_command(0x24);
if(y>=0x80)n=0xf8;
elsen=0xf0;
t=x%8;
t=(~t)&0x07;
t=n|t;
w_command(t);?
}
//画一条正弦曲线
voidmain(void)
{
init();
clear();
for(x=0;x<180;x++)
{
y=psin[x];
y=y|0x80;
draw(x,y);??
}
while(1){}
}??
4结束语
MGLS240128T图形液晶显示模块是一种性能价格比较高的液晶显示模块,其内部具有适配80系列的操作时序电路,该模块与单片机的接口十分方便。由于它不仅能很方便地进行大信息量的各种字符显示,且能实现图形及曲线的显示,这就使人机接口更友好。因此,可为单片机在各领域中的应用提供十分简单、方便、功能强大的LCD显示功能。
篇8:液晶显示模块MGLS240128在图形显示中的应用
液晶显示模块MGLS240128在图形显示中的应用
摘要:MGLS240128是香港精电公司生产的内藏T6963C控制器液晶显示模块。文中介绍了MGLS240128的原理及功能,给出了该显示模块与单片机的接口方法。同时给出了用C51语言编制的图形显示应用程序。关键词:液晶模块;单片机;图形显示;C51
1 引言
在目前诸多的显示器件中,液晶显示器以其具有工作电压低、功耗低、显示信息量大、寿命长、不产生电磁辐射污染、可以显示复杂的文字及图形等优点,而在各种仪器仪表、电子设备、移动通讯及家用电器中得到了广泛的应用。本文介绍MGLS240128T图形液晶显示模块就是香港精电公司生产的、内藏T6963C控制器的液晶显示模块。
2 模块工作原理
2.1 基本功能
MGLS240128T图形液晶显示模块由控制器T6963C、列驱动器T6A39、行驱动器T6A40以及与外部设备的'接口等几部分组成,它既能显示字符(包括中文和西文字符),又能显示图形,还能够将字符与图形混合显示。其主要参数如下:
●点阵数:240×128;
●点尺寸:0.4×0.4mm;
●视屏尺寸:114×64mm;
●汉字字体:8×8,8×6;
●背光:LED或EL;
●电源:+5V;
●工作温度范围:-20~ +70℃。
2.2 引脚功能
MGLS240128T图形液晶显示模块的引脚说明如表1所示。该模块对液晶显示的控制和驱动都由模块内部的芯片及电路来完成,因此它与外部的连接只有数据线和控制线。主控CPU通过这些数据线和控制线来设置所需要的显示方式,其它功能均由模块自动完成。
表1 MGLS240128T模块的引脚功能
管 脚 号管 脚 名 称功 能 描 述
1FG框架地2GND电源地3VCC电源电压4NC未用5WR[1] [2] [3] [4] [5] [6]
篇9:液晶显示模拟KS0713及其应用
液晶显示模拟KS0713及其应用
摘要:液晶显示模块KS0713是SAMSUNG ELECTRONICS生产的小型液晶显示模块。它具体积小、价格低、使用方便等优点。在一些小型的自动控制、监控、测量仪器中,常常用于显示提示菜单、波形或各类参数的变化,实现实时的监控和测量。关键词:液晶模块 单片机 波形 汉字
概述
KS0713是一种小型的大规模集成并带有驱动器和控制器的点阵型液晶模块。它的外观尺寸为42mm×39mm,有29个外部引脚。它直接受单片机控制,接收8位串行或并行数据, 同时可将数据显示,并将数据存储在模块同的数据存储器中(DDRAM)。由于DDRAM中的数据显示单元与液晶屏的点阵单元存在一一对应关系,并且KS0713液晶模块数据的读写操作不受外部时钟的控制,因而KS0713的显示具有很高的灵活性。KS0713液晶模块带有液晶必需电源驱动电路,这样可用最小的元件和最小的功耗实现模块的功能。
(本网网收集整理)
一、基本原理
1.引脚说明
表1对KS0713的引脚及其功能进行了说明。
表1 KS0713引脚说明
名 称I/O功 能 说 明VDD电源电源供电与单片机供电电源相连VSS电源0V(GND)PS输入并行/串行数据选择输入,PS=“H”,并行MI输入MI=“H”,6800系列单片机端口;MI=“L”,8080系列单片机端口CS1B输入片选输入CS2输入数据输入/输出。只有CS1B为低且CS2为高时才可工作。当片选无效时,DB7~DB0是高阻态RS输入寄存器选择输入。RS=“H”,数据在DB7~DB0上为显示数据;RS=“L”,数据在DB7~DB0上为控制数据RW-WR输入6800系列单片机:高电平为读;低电平为写;8080系列单片机:低电平有效E-WR输入6800系列单片机:高电平有效;8080系列单片机:低电平有效DB7DB0输入8位双向数据总线,与单片机的8位数据总线相连,片选无效时为高阻态RESET输入硬件复位输入端V0V1
V2
V3
V4
输入/输出
这些电压的值取决于用于LCD点阵的阻抗转换运放。它们关系为:V0≥V1≥V3≥V4≥V5≥Vss,其取值决定于LCD的偏压:LCD偏压V1V2V3V41/9偏压8/9×V07/9×V02/9×V01/9×V01/8偏压7/8×V06/8×V02/8×V01/8×V01/7偏压6/7×V05/7×V02/7×V01/7×V01/6偏压5/6×V04/6×V02/6×V01/6×V01/5偏压4/5×V03/5×V02/5×V01/5×V0C1+输出 C1+与外部电压转换器连接C1-C1-与外部电压转换器连接C2+C2+与外部电压转换器连接C2-C2-与外部电压转换器连接C3+C3+与外部电压转换器连接C3-C3-与外部电压转换器连接VOUT输入/输出 电压转换输出
2.KS0713液晶模块的主要结构
(1)显示数据存储器(DDRAM)
DDRAM用来存放液晶的显示数据。它是一个65行、132列的地址空间。65行构成了9页,其中前8页是由8列构成(DB0~DB7),第9页是单独一行(只有DB0)。显示数据DB0~DB7通过单片机的数据口送入,并通过DB0~DB7直接读或写到每页对应的8行;同时每一点阵可通过确定页地址和列地址来确定位置。在向DDRAM中写数据的同时,液晶屏上对应的点阵被显示,如图1所示。
(2)页地址电路
页地址电路的功能是为显示数据存储器提供页地址。页地址的确定是通过页控制字送到一个4位的页地址寄存器中来实现的。例如:第8页,DB3为高电平时,DB2、DB1和DB0为低电平。
(3)行地址电路
行地址电路根据显示起始行(COM0)为DDRAM提供行地址,因此通过改变行地埴址,可在不改变片内RAM的情况下滚动屏幕和切换。页地址的改变是通过行地址寄存器实现的。它只通过初始显示行指令和6位的计数电路来改变。寄存器的内容在液晶开始每一帧时自动复制到行计数器中。
(4)列地址电路
列地址电路为DDRAM提供列地址。它有一个8位的`可预先设置的计数器,当设置列地址的MSB/LSB指令发送后,Y7~Y0就被更新(详见控制字说明);当有读或写指令时,列地址会每次相应加1,这样单片机可以连续地传送显示数据。但是,8位的计数器在没有设置MSB/LSB时处于锁定状态,此时它的锁定值为大于84H的任意数,并且不能实现自动增加的功能。一旦MSB/LSB经再次设定,计数器才可解锁。列地址计数器相对于页地址寄存器是独立的(见表2)。ADC选择指令可例转列地址和显示列之间的对应关系,如图2所示。
表2 指令控制字表
指令控制字RSRWDB7DB6DB5DB4DB3DB2DB1DB0功能说明
读显示数据11读数据从DDRAM中读数据写显示数据10写数据向DDRAM中写数据读状态01BUSYADC开/关复位0000读内部状态显示开/关001010111DONDON=0显示关;DON=1显示开显示起始行0001ST5ST4ST3ST2ST1ST0设置DDRAM的显示起始行参考电压方式0010000001设置参考电压方式参考电压寄存器00××SV5SB4SV3SV2SV1SV0设置参考电压寄存器页地址001011P3P2P1P0设置页地址列地址MSB0000010Y6Y5Y4设置显示的起始列列地址LSB000000Y3Y2Y1Y0ADC选择001010000ADCADC=1,显示列1~132;ADC=1,显示列1~321反向显示开/关001010011REVREV=0,正常显示;REV=1,反向显示全部显示开/关001010010EONEON=0,正常显示;EON=1,全部显示LCD偏压选择001010001BUASLCD偏压选择设置修改-读0011100000设置修改-读复位修改-读0011101110释放复位修改-读复位0011100010初始化内部功能SHL选择001100SHL×××SHL=0,显示行164;SHL=1,显示行641供电控制0000101VCVRVF控制供电电路操作静态显示方式001010110SM设置静态显示方式静态显示寄存器00××××××S1S0设置静态显示寄存器供电存储----------复合指令测试指令001111××××不可使用(5)液晶显示电路
液晶显示电路具有1个片内振荡器,振荡频率独立于VDD。振荡器的输出信号用于电压转换和液晶显示的定时产生电路,定时产生电路一些信号用于液晶的显示。液晶显示的时钟信号是通过振荡时钟产生的,这一时钟信号为行计数器和显示数据锁存器提供了时钟信号。片内RAM的行地址与液晶显示时钟信号同步产生,并且132位的显示数据根据显示时钟信号同步锁存到显示数据锁存电路中。把显示数据从锁存电路中读出送到液晶驱动器中的操作完全独立于单片机向DDRAM中读写数据的操作。
(6)供电电路
供电电路为低功率消耗的液晶驱动电路在最少的电路元件的情况下,提供必要的驱动电路的电压。供电电路包括:电压转换电路、电压调节电路、电压跟随电路。这些电路只在对主显示系统操作和供电控制指令操作时才有效。电压转换电路的输出电压(VOUT)可以调节为2~5倍的电源电压(VDD)。电压调节电路如图3所示,该电路在使用VDD供电的情况下,通过计算可以得出输出电压Vo的值。
方程1:V0=(1+Rb/Ra)VEV
方程2:VEV=[1-(63-α)/300]VREF
在温度为25℃时,VREF=2V。
α可通过指令设置。设α=63,则VEV=2V。通过指令设置R2、R1、R0(见表2)得出(1+Rb/Ra)。设(1+Rb/Ra)=5.29,这样计算出Vo=10.5V。
使用时可以测量Vo来确定与计算是否相符。此外还有复位电路,实现液晶的复位操作。
二、指令系统
KS0713液晶模块具有24个指令控制字。通过控制进行液晶初始条件的设置以及各种运行条件选择。指令控制字如表2所列。
三.KS0713液晶模块的应用
在研制的心叫图机中采用了KS0713液晶模块,用于显示单和心电波形。在心电图机中可以采用89C51或ADμC812等单片机作为液晶的微控制器。通过单片机采集和处理心电数据,输出给液晶显示。
1.硬件电路连接
硬件电路连接如图4所示。
2.汉字菜单显示
菜单主要由汉字组成,可通过汉字字库将每个汉字转换为16×16点阵共32个十六进制的数据送液显示。每个汉字的数据分别对应一个数据表,程序可通过查表方式显示汉字。液晶初始化的程序如下:
MOV P2,#7FH ;选中液晶
CLR RS
CLR RESET ;液晶复位
SETB RESET
;= = = = = = = = = = ;液晶初始化
MOV R2,#17 ;R2控制字计数指针
MOV R3,#0 ;R3显示数据指针
MOV DPTR,#TABLE
CMNW:MOV A,R3 ;送初始化液晶控制字
MOVC A,@A+DPTR
MOVX @R0,A
INC R3
DJNZ R2,CONW
TABLE:DB 0E2H,0AFH,81H,3FH 初始液晶的控制字
DB 0B0H,40H,10H,00H
DB 0A0H,0A6H,0A4H,0A3H
DB 0C0H,2FH,26H
DB 0ADH,0FFH
3.心电波形显示
心电波形是一系列的曲线。在液晶上要显示这些曲线须要将相应的点阵显示。对于1条心电曲线,起始显示数据点在起始列只显示1点;从第二个数据点开始,要在下一列显示上一数据点到此次数据点之间的线段。具体方法可通过十六进制的数据点除以总页数8得到商和余。得到的商为此数据点所在的页;得到的余为此数据点所在页的行数。注意的是每一数据点应在相应的列,因为列地址每送1个数据自动加1,因而每次从DDRAM中读取数据时,定要保证列位置的正确,否则会出现曲线的混乱。这样利用KS0713液晶模块将心电波形打印或直接从液晶上读取信息,为诊断提供依据。显示曲线的程序由于篇幅所限不在这里列出。
结束语
本文介绍了KS0713液晶模块的基本原理、特点、控制指令及微型心电图机中的实际应用。除了在微型心图机中的应用,KS0713液晶模块还可以应用于监迭、测量显示等许多方面,为用户提供直观的显示并提供相关信息。









