YD-611是一款内嵌高速管理单片机的智能液晶显示器。该显示器采用了显示画面预置技术,即将显示内容分为固定部分和变化部分。固定部分可在微机上进行绘制、编辑、修改,然后将其作为预置画面下载到显示器内E2PROM中保存。在需要显示时,仅需使用简单的预置画面调用指令就可调出来显示预置画面,不但可以循环、交替、重叠显示,还可与变化部分的数据即现场实现显示的数据组合显示。从而将上位机从繁杂的显示管理工作解脱出来,也降低了对上位机的软硬件要求。使用普通单片机即可构成彩色晶人机界面。YD-611彩色液晶显示器的性能特点如下:
3 功能描述
3.1 内部结构
YD-611彩色液晶显示器的内部结构如图2所示。
3.2 通信协议
YD-611型彩色液晶显示器具有串行和并行两种通信方式。
(1)串行通信
YD-611串行通信采用标准RS-232通信方式,数据格式为:1个起始位,8个数据位,1个停止位。
为了提高通信速度,显示器内设置了一个256字节的输入缓冲区。在发送数据前,应先检查DTR信号。若DTR为高电平(TTL),表示缓冲区满,要等到DTR信号变为低电平(TTL)后再发送数据。如果每组的数据量少于256字节,同时每组之间又有足够的间隔,则不判断DTR位信号也可连续发送。
(2)并行通信
并行通信使用打印机并行接口,并行口的时序图如图3所示。首先,准备好数据,BUSY信号为低电平之后,发送一个STB信号(下降沿有效),等待0.5μs后再检测BUSY信号。若为高电平,则表示本机正在处理数据或缓冲区已,等到该信号变为低电平后再延时5μs发送下一个数据。
4 标准命令集
4.1 命令定义
YD-611彩色液晶显示器作为智能显示器的一项突出特点就是,避免了用户敏琐的点阵操作,只需使用简单的命令,就可显示出汉字、字符和预置的图形。YD-611的命令大致可以分为三种类型:光标控制、功能设置、图形操作。这里以十六进制码格式给出YD-611的标准命令集,如表3所列。十六进制格式适用于单片机作上位机,每条命令均以“ESC”(十六进制码的“1B”)打头,后面紧跟命令代码和所需要的参数。
YD-611命令使用规则如下:
①液晶显示器图形方式以光点为最小点阵显示单位,每个光点包含RGB三个色点;字符方式以8×16点阵为最小显示块单位,西文字符占一个显示块,16×16点阵的汉字点二个显示块。
②YD-611可显示16种颜色,其颜色的取值范围在[0,15]。表4为对应的颜色代码。
表3 YD-611彩色液晶显示器标准命令集
十六进制格式 |
说 明 |
1B 0dn |
回边换行 |
1B 10 |
光标称到行尾 |
1B 11 |
光标移到行首 |
1B 18 |
BMP文件直接显示 |
1B 19 |
满屏BMP文件调用 |
1B 1E |
光标移到首行 |
1B 1F |
光标移到尾行 |
1B 20 0~7 |
写入整幅BMP文件 |
1B 20 08 |
特种字库传送 |
1B 20 0A |
标准字库传送 |
1B 23 |
置汉字方式 |
1B 24 |
置西文字符方式 |
1B 25n |
自动判别显示数据的属性 |
1B 26 m,n |
设定特种字库 |
1B 27 No |
显示特种字库的第No个字模 |
1B 28(Block Page Num) |
写入单块BMP文件 |
1B 29 Block Page X Y Wide High |
在指定位置显示指定大小的BMP文件 |
1B 2A x y color1 color2 |
用指定颜色填充闭合图形 |
1B Nx ycolor 0<=n<8 |
初始化曲线 |
1B 38m n |
光标颜色 |
1B 41color x1 y1 x2 y2 |
画实心矩形 |
1B 42color |
用指定的颜色清屏 |
1B 43color |
设置前景颜色 |
1B 44 |
光标下移1行 |
1B 45 b0 b1 b2,…,bn |
绘制曲线 |
1B 46 color x1 y1 x2 y2 |
画线 |
1B 47x y |
光标移到(x y)位置 |
1B 48x y |
光标定位到指定像素 |
1B 4C |
光标左移一字符位 |
1B 4Dn |
设置放大倍数 |
1B 50n |
调用预置的第n页图像 |
1B 52n |
光标右移n字符位 |
1B 53n |
延时 |
1B 55 |
光标上移一行 |
1B 56n md |
将预置画面写入用户Flash |
1B 57n |
光标显示控制 |
1B 58n |
选择覆盖或重叠方式显示 |
1B 59 color x y R |
画圆 |
1B 5A color x1 y1 x2 y2 |
画空心矩形 |
表4 颜色代码
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
黑 |
兰 |
绿 |
青 |
红 |
粉 |
黄 |
白 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
灰 |
亮兰 |
亮绿 |
亮青 |
亮红 |
亮粉 |
亮黄 |
亮白 |
③放大显示时,横向放大的占横向两倍位置,纵向放大的占纵向两行位置。
④YD-611在图形操作命令中,X方向坐标值最大为320,用十六进制数表示时,必须占用2字节。因此凡命令中涉及到图形坐标的地方,X方向和Y方向均以2字节表示。低位字节在前,高位字节在后。
4.2 常用命令说明
为便于YD-611彩色液晶显示器在嵌入式系统中的应用,下面对嵌八式系统中常用的命令说明如下。
(1)调用预置画面
命令参数n为调用用户预置的第(n+1)页面,n的取值范围为(0,127。YD-611液晶显示器规定,对于用户ROM,每80H个单元为1页,每幅画面可能有1个或多个页面。
图4 YD-611与单片机的串行接口电路 (2)置汉字显示方式
YD-611彩色液晶显示器的汉字库字模均按照国标码的顺序排列。汉字内码为两个字节编码,利用字节的最高位置“1”作标志,而西文的内部码为七位编码。
(3)置西文字符方式
YD-611液晶字库的字模仅收录了ASCII码的前128个字符。置成西文字符方式后,在未改变成汉字显示方式前,所有与命令无关的字节,都将作为西文字符显示。
(4)重叠或覆盖显示方式
显示汉字和字符时采用重叠或覆盖。
n=1:表示重叠显示,此种状态下,汉字、西文字符的显示速度比较快。
n=0:表示覆盖显示,即在显示汉字或字符之前,先用背景颜色清除一下该部位。此种状态下的显示速度慢,适用于在画面的固定位置上显示动态信息。
(5)画线
命令参数color:颜色代码。(x1 y1):所画线段的起点坐标。(x2 y2):所画线段的终点坐标,使用指定的颜色画线。如果x1=x2,则所画线段为垂线;如果y1=y2,则所画线段为水平线段;如果x1=x2,y1=y2,则所画线段为一点;如果x1≠x2,y1≠y2,则所画线段为一斜线。
(6)绘制曲线
以b0,b1,b2,……,bm为一组方向数据绘制曲线。Bn为结束符,bn大于等于80H则画线结束。
5 YD-611在嵌入式系统中的应用
5.1 接口设计
YD-611应用于嵌入式系统时,既可使用并行方式,也可使用串行方式与系统接口。下面以MCS-51系列单片机为例,分别叙述各种接口方式。
①并行接口方式1。当用户系统为总线扩展方式时,YD-611使用并行方式与系统接口较方便。即将YD-611的DATA0~DATA7与单片机的数据总线相连,BUSY接P1.0,STB接P1.1即可。
②并行接口方式2。当用户系统为非总线扩展应用,而又有较多闲置的I/O口时,也可采用并行接口方式。如可将DATA0~P1.7相连,BUSY接P3.2,STB接P3.3。
③串行接口方式1。当用户系统I/O口线资源较为紧张时,可使用单片 机的UART串口并转换为RS-232电平后与YD-611接口。由于YD-611只接收显示数据,数据传送为单工,故此时仅使用单片机串行数据发送端TXD即可;同时,还应点用单片机的一根口线,用于检查YD-611的接收缓冲区满信号。
④串行接口方式2。当用户系统的UART串口已被占用时,可利用单片机一根未用的口线模拟生成一个通信协议为(4800.n.8.1)的软串口。并转换为RS-232电平后与YD-611接口。
下面以串行接口方式1(即使用单片机的UART标准串口)为例,给出YD-611与单片机接口电路,如图4所示。图4中,AT89C52的TXD端经MAX232转换为RS-232电平后,与YD-611的RXD端相连。YD-611的缓冲区满,指示信号DTR经MAX232转换为RS-232电平后与AT89C52的P3.0端相连。
5.2 显示程序
这里以串行接口方式1为例,给出与力电路配套的显示程序。显示屏显示内容为红色汉字“液晶”,绿色亮字显示汉字“显示器”及英文字符“1A2B”。液晶屏显示的字符如图5所示。
显示程序见本刊网站(http:www.dpj.com.cn)。
结语
YD-611彩色液晶智能显示器可为嵌入式系统提供一个友好的彩色人机界面;同时,由于其内部具有显示管理MCU,大大降低了嵌放式系统使用彩色液晶显示器的门坎,使用普通单片机即可实现彩色液晶屏的管理工作,从而可使嵌入式系统具有一个靓丽的外观。目前受价格的制约,该产品仅应用于彩色无纸记录仪、GPS、智能仪器等高端电子产品中。相信随着科技的进步与时代的发展,彩色液晶显示器会得到越来越广泛的应用。