摘要:MGLS240128是香港精电公司生产的内藏T6963C控制器液晶显示模块。文中介绍了MGLS240128的原理及功能,给出了该显示模块与单片机的接口方法。同时给出了用C51语言编制的图形显示应用程序。
关键词:液晶模块;单片机;图形显示;C51
1 引言
在目前诸多的显示器件中,液晶显示器以其具有工作电压低、功耗低、显示信息量大、寿命长、不产生电磁辐射污染、可以显示复杂的文字及图形等优点,而在各种仪器仪表、电子设备、移动通讯及家用电器中得到了广泛的应用。本文介绍MGLS240128T图形液晶显示模块就是香港精电公司生产的、内藏T6963C控制器的液晶显示模块。
2 模块工作原理
2.1 基本功能
MGLS240128T图形液晶显示模块由控制器T6963C、列驱动器T6A39、行驱动器T6A40以及与外部设备的接口等几部分组成,它既能显示字符(包括中文和西文字符),又能显示图形,还能够将字符与图形混合显示。其主要参数如下:
●点阵数:240%26;#215;128;
●点尺寸:0.4%26;#215;0.4mm;
●视屏尺寸:114%26;#215;64mm;
●汉字字体:8%26;#215;8,8%26;#215;6;
●背光:LED或EL;
●电源:+5V;
●工作温度范围:-20~ +70℃。
2.2 引脚功能
MGLS240128T图形液晶显示模块的引脚说明如表1所示。该模块对液晶显示的控制和驱动都由模块内部的芯片及电路来完成,因此它与外部的连接只有数据线和控制线。主控CPU通过这些数据线和控制线来设置所需要的显示方式,其它功能均由模块自动完成。
表1 MGLS240128T模块的引脚功能
管 脚 号
管 脚 名 称
功 能 描 述
1
FG
框架地
2
GND
电源地
3
VCC
电源电压
4
NC
未用
5
WR
写控制信号,低电平有效
6
RD
读控制信号,低电平有效
7
CS
片选信号,低电平有效
8
C/D
通道选通信号,C/D1为表示指令,C/D为0表示数据通道
9
RST
复位信号,低电平有效
10~17
DB0~7
数据总线,三态
18
FS
字体选择,FS为0选择8%26;#215;8字体,FS为1选择8%26;#215;6字体
2.3 指令系统
MGLS240128T图形液晶显示模块本身内藏控制器T6963C,它最大的特点是具有独特的硬件初始设置功能,由于显示驱动所需的参数(如占空比系数、驱动传输的字节数/行以及字符的字体选择等)均由引脚电平来设置,因此T6963C的初始化在上电时就已基本设置完成。除此之外,它还具有很强的软件控制能力,也就是由主控CPU通过接口写入液晶模块的指令来实现模块控制。软件控制主要集中于显示功能的设置上。该模块的常用指令如表2所列。
表2 MGLS240128T模块的常用指令设置
指令名称
控制状态
指 令 代 码
CD
RD
WR
D7
D6
D5
D4
D3
D2
D1
D0
读状态字
1
1
1
S7
S6
S5
S4
S3
S2
N1
S0
地址指令设置
1
1
0
0
0
1
0
0
N2
N1
N0
显示区域设置
1
1
0
0
1
0
0
0
0
N1
N0
显示方式设置
1
1
0
1
0
0
0
CG
N2
N1
N0
显示状态设置
1
1
0
1
0
0
1
N3
N2
N1
N0
光标自动读写设置
1
1
0
1
1
0
0
0
N2
N1
N0
数据自动读写设置
1
1
0
1
0
1
1
0
0
N1
N0
数据一次读写设置
1
1
0
1
1
0
0
0
N2
N1
N0
屏读(一字节)设置
1
1
0
1
1
1
0
0
0
0
0
屏读(一行)设置
1
1
0
1
1
1
0
1
0
0
0
位操作
1
1
0
1
1
1
1
N3
N2
N1
N0
数据写操作
0
1
0
数 据
数据读操作
0
0
1
数 据
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语言编制的图形显示的主要相关程序。
//发送数据
void w_data(unsigned char d)
{CS=0;
check();
CD=0;P2=d;WRITE=0;WRITE=1;
CS=1;
}
//发送命令
void w_command(unsigned char d)
{CS=0;
check();
CD=1;P2=d;WRITE=0;WRITE=1;
CS=1;
}
//查状态
void check(void)
{unsigned char M;
do{P2=0xff;
CD=1;READ=0;
M=P2;
READ=1;
}
while((M&0x03)<0x03);
}
//画点
void draw(x,y)
{unsigned int m;
unsigned char n,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;
else n=0xf0;
t=x%8;
t=(~t)&0x07;
t=n|t;
w_command(t);
}
//画一条正弦曲线
void main(void)
{
init();
clear();
for(x=0;x<180;x++)
{
y=psin[x];
y=y|0x80;
draw(x,y);
}
while(1){}
}
4 结束语
MGLS240128T图形液晶显示模块是一种性能价格比较高的液晶显示模块,其内部具有适配80系列的操作时序电路,该模块与单片机的接口十分方便。由于它不仅能很方便地进行大信息量的各种字符显示,且能实现图形及曲线的显示,这就使人机接口更友好。因此,可为单片机在各领域中的应用提供十分简单、方便、功能强大的LCD显示功能。