PIC16F877单片机的图形液显示模块接口技术
发布时间:2008/5/27 0:00:00 访问次数:517
来源:单片机与嵌入式系统应用 作者:严利平 卓清锋 刘和平
摘要:详述pic16f877单片机的mg-12232图形点阵式液晶显示器的硬件接口电路特点和接口软件编程方法。
关键词:pic16f877 lcd 接口引言
由于液晶显示器(lcd)具有功耗低、体积小、质量轻、超薄等其他显示器无法比拟的优点,它广泛用于各种智能型仪器和低功耗电子产品中。点阵式(或图形式)lcd不仅可以显示字符、数字,还可以显示各种图形、曲线及汉字,并且可以实现屏幕上下左右滚动、动画、闪烁、文本特征显示等功能,用途十分广泛。本文在简介液晶显示器mg-12232的驱动器sed1520f0a的结构、功能的基础上,介绍了pic16f877单片机的lcd硬件接口电路和软件编程特点。
一、pic16f877与mg-12232的硬件接口电路
1.sed1520f0a的接口信号
sed1520f0a属行列驱动及控制合一的小规模液晶显示驱动芯片,电路简单,经济实用,内含振荡器,只须外接振荡电阻即可工作。模块工作的稳定性好。sed1520f0a与微处理器的接口信号如下。
db0~db7:数据总线。
a0:数据/指令选择信号。a0=1表示出现在数据总线上的是数据;a0=0,表示出现在数据总线上的是指令或读出的状态。
res:接口时序类型选择。res=1为m6800时序,其操作信号是e和r/w;res=0为intel8080时序,操作信号是rd和wr。
rd(e):在intel 8080时序时为读,低电平有效;在m6800时序时为使能信号,是个正脉冲,在下降沿处为写操作,在高电平时为读操作。
wr(r/w):在intel 8080时序时为写,低电平有效;在m6800时序时为读、写选择信号,r/w=1为读,r/w=0为写。
sed1520f0a与两种总线的接口信号和时序的详细资料见液晶显示模块使用手册。
2.mg-12232模块的引脚说明
mg-12232模块共有18个引脚,各引脚定义如表1所列。
表1 mg-12232模块的引脚定义
序 号
符 号
状 态
功 能 说 明
1
vcc
-
逻辑电源正
2
gnd
-
逻辑电源地
3
v0
-
液晶显示驱动电源
4
res
-
接口时序类型选择
5
e2
输入
主工作方式ic使能信号
6
e2
输入
从工作方式ic使能信号
7
r/w
输入
读/写选择信号
8
a0
输入
寄存器选择信号
9~16
db0~db7
三态
数据总线(低位)
17
sla
-
18
slk
-
背光灯负电源3.pic16f877与mg-12232模块的接口电路
现以功能强、价格低的pic16f877为例说明pic与mg-12232模块的硬件接口电路。其接口控制时序采用m6800操作时序,这样sed1520f0a引出的控制信号r/w,a0,e1和e2由pic16f877的i/o端口portb的4个脚控制。接口电路如图1所示。图中利用可调电阻r3实现液晶的背光亮度调节,直接用电阻r2驱动液晶的背光灯。由于pic16f877的位操作指令丰富,所以用软件不难模拟出m6800操作时序。
二、接口软件编程
1.sed1520f0a指令集
sed1520f0a液晶显示驱动器有13条指令。表2所列的以与m6800系列mpu接口为例(res=1)而总结出的指令。
表2 sed1520f0a指令集
指 令 名 称
控 制 信 号
控 制 代 码
r/w
a0
d7
d6
d5
d4
d3
d2
d1
d0
显示开/关指令
0
0
1
0
1
0
1
1
1
i/o
显示起始行设置
0
0
1
1
0
显示起行(0~31)
设置页地址
0
0
1
0
1
1
1
0
页地址(0~3)
设置列地址
0
0
0
列地址(0~79)
读状态指令
1
0
busy
adc
off/on
reset
0
0
0
0
<来源:单片机与嵌入式系统应用 作者:严利平 卓清锋 刘和平
摘要:详述pic16f877单片机的mg-12232图形点阵式液晶显示器的硬件接口电路特点和接口软件编程方法。
关键词:pic16f877 lcd 接口引言
由于液晶显示器(lcd)具有功耗低、体积小、质量轻、超薄等其他显示器无法比拟的优点,它广泛用于各种智能型仪器和低功耗电子产品中。点阵式(或图形式)lcd不仅可以显示字符、数字,还可以显示各种图形、曲线及汉字,并且可以实现屏幕上下左右滚动、动画、闪烁、文本特征显示等功能,用途十分广泛。本文在简介液晶显示器mg-12232的驱动器sed1520f0a的结构、功能的基础上,介绍了pic16f877单片机的lcd硬件接口电路和软件编程特点。
一、pic16f877与mg-12232的硬件接口电路
1.sed1520f0a的接口信号
sed1520f0a属行列驱动及控制合一的小规模液晶显示驱动芯片,电路简单,经济实用,内含振荡器,只须外接振荡电阻即可工作。模块工作的稳定性好。sed1520f0a与微处理器的接口信号如下。
db0~db7:数据总线。
a0:数据/指令选择信号。a0=1表示出现在数据总线上的是数据;a0=0,表示出现在数据总线上的是指令或读出的状态。
res:接口时序类型选择。res=1为m6800时序,其操作信号是e和r/w;res=0为intel8080时序,操作信号是rd和wr。
rd(e):在intel 8080时序时为读,低电平有效;在m6800时序时为使能信号,是个正脉冲,在下降沿处为写操作,在高电平时为读操作。
wr(r/w):在intel 8080时序时为写,低电平有效;在m6800时序时为读、写选择信号,r/w=1为读,r/w=0为写。
sed1520f0a与两种总线的接口信号和时序的详细资料见液晶显示模块使用手册。
2.mg-12232模块的引脚说明
mg-12232模块共有18个引脚,各引脚定义如表1所列。
表1 mg-12232模块的引脚定义
序 号
符 号
状 态
功 能 说 明
1
vcc
-
逻辑电源正
2
gnd
-
逻辑电源地
3
v0
-
液晶显示驱动电源
4
res
-
接口时序类型选择
5
e2
输入
主工作方式ic使能信号
6
e2
输入
从工作方式ic使能信号
7
r/w
输入
读/写选择信号
8
a0
输入
寄存器选择信号
9~16
db0~db7
三态
数据总线(低位)
17
sla
-
18
slk
-
背光灯负电源3.pic16f877与mg-12232模块的接口电路
现以功能强、价格低的pic16f877为例说明pic与mg-12232模块的硬件接口电路。其接口控制时序采用m6800操作时序,这样sed1520f0a引出的控制信号r/w,a0,e1和e2由pic16f877的i/o端口portb的4个脚控制。接口电路如图1所示。图中利用可调电阻r3实现液晶的背光亮度调节,直接用电阻r2驱动液晶的背光灯。由于pic16f877的位操作指令丰富,所以用软件不难模拟出m6800操作时序。
二、接口软件编程
1.sed1520f0a指令集
sed1520f0a液晶显示驱动器有13条指令。表2所列的以与m6800系列mpu接口为例(res=1)而总结出的指令。
表2 sed1520f0a指令集
指 令 名 称
控 制 信 号
控 制 代 码
r/w
a0
d7
d6
d5
d4
d3
d2
d1
d0
显示开/关指令
0
0
1
0
1
0
1
1
1
i/o
显示起始行设置
0
0
1
1
0
显示起行(0~31)
设置页地址
0
0
1
0
1
1
1
0
页地址(0~3)
设置列地址
0
0
0
列地址(0~79)
读状态指令
1
0
busy
adc
off/on
reset
0
0
0
0
<