LCD30程序.docx
- 文档编号:30221222
- 上传时间:2023-08-07
- 格式:DOCX
- 页数:48
- 大小:35.62KB
LCD30程序.docx
《LCD30程序.docx》由会员分享,可在线阅读,更多相关《LCD30程序.docx(48页珍藏版)》请在冰豆网上搜索。
LCD30程序
*==============================================================================
SED1335驱动320x240图形液晶驱动演示程序
接口情况表述:
No:
LCM-----52
---------------------
1...VSS.....GND 地线
2...VDD.....+5V(VCC) 电源
3...VO.....-VadjInput 对比度负压调整输入
4...A0.....P2.0 寄存器选择信号,命令数据方式选择
5.../WR.....WR 写有效
6.../RD.....RD 读有效
7...D0.....P0.0 数据总线D0
8...D1.....P0.1 数据总线D1
9...D2.....P0.2 数据总线D2
10..D3.....P0.3 数据总线D3
11..D4.....P0.4 数据总线D4
12..D5.....P0.5 数据总线D5
13..D6.....P0.6 数据总线D6
14..D7.....P0.7 数据总线D7
15../CS ....GND 片选通信号,低电平有效.实际使用应编入地址
16../RES..../RESET 复位信号,低电平有效,阻容式复位电路
17..VEE.....-Vout 逆变-22.5V负电压输出
18..VSS.....GND 地线0V
============================================================================== */
#include
#include
#include
#include
//变量类型标识的宏定义,大家都喜欢这么做
#define Ucharunsignedchar
#defineUintunsignedint
Uint timer1,timer2;
//直接访问方式地址定义,根据用户平台接口修改
//P2.7~~~CS P2.0---A0
charxdataLcmCmdPort _at_0xCFFF; //CS=0A0=1写命令口
charxdataLcmWdataPort _at_ 0xCFFE; //CS=0A0=0写数据口
//charxdataLcmRdataPort_at_ 0x7100; //CS=0A0=1读数据口
//charxdataLcmStatusPort_at_ 0x7000; //CS=0A0=0读忙状态标志口
#defineLcmRdataPortLcmCmdPort
#defineLcmStatusPortLcmWdataPort
//============================1335常用指令列表===============================
//初始化设置。
A0=1..写指令/0...读写参数。
后续8字节参数串ParaSysTable8[]
#defineSystemSet 0x40 //时序要求:
/WR=0;/RD=1
Ucharcode ParaSysTable8[]=
{
0x30,0x87,0x07,0x27,0x42,0xf0,0x28,0x00 //P1-P8参数
};
// 30H,87H,07H,27H,42H,0F0H,30H,00H
/*SystemSet初始化设置参数表,共八字节具体定义如下:
P1 [DR|0|IV|1|W/S|M2|M1|M0]=0x38
0 0 1 1 1 0 0 0
DR....辅助位移时钟周期的选择位。
DR=0为正常运行;DR=1为使用辅助位移时钟周期。
通常=0
[说明]在控制双屏显示时需要液晶模块一行像素为64的整倍数,如果不是则控制器自
动通过填充数据'0'来凑齐64位,此时就需要增加辅助位移时钟周期。
IV....负向字符显示时屏面边界选择位。
=0为首行作为边界;=1则无边界。
通常=1
[说明]在文本方式下,第一行显示的字符是顶天的,没有天头。
所以在制作负向字
符显示时的效果就不太理想。
此时使用IV参数位在显示控制时制造出一行空行
作为天头,以达到理想的显示效果。
W/S...适配驱动系统选择位。
改为将选择产生驱动时序信号的类型。
0为单屏结构液晶
显示驱动系统;1为双屏结构液晶显示驱动系统
M2....外部字符发生器的字体选择位。
0=8*8;1=8*16
M1....外部字符发生器Cgram代码区选择位。
0选择Cgram1字符代码为0x80~0x9f;1选择
Cgram1+Cgram2,字符代码为0x80~9f和0xe0~0xff
M0....字符发生器选择位.0为内部字符发生器;1为外部字符发生器。
[说明]M2,M1,M0组合设置了字符发生器的结构
P2 [WF|0|0|0|0| FX ]=0x87
1 0 0 0 0 1 1 1
WF....交流驱动波形选择位。
0为C型驱动波形,行翻转驱动波形,交流驱动波形输出
WF每16行翻转1次;1为B型驱动波形,交流驱动波形输出每一帧翻转1次,通常
取1
FX....字符体宽度设置参数(点列数)。
若FX大于实际字符体的宽度,则余出的部分
作为空点置于字符体的右侧,形成字符字间距。
FX取值在0~7范围内,代表1~8
列/字符体。
P3 [WF|0|0|0| FY ]=0x07
0 0 0 0 0 1 1 1
WF....同上;
FY....字符体高度设置参数(点行数)。
若FY大于实际字符体的宽度,则余出的部分
作为空点置于字符体的下方,形成字符行间距。
FY取值在0~0xf之间,代表1-16
点行/字符体
P4 [ C/R ]=0x27
C/R...有效显示窗口宽度设置参数。
C/R值设置了显示屏上一行显示所占显示存储器的
单元数(字节数)。
C/R取值在0~0xef范围内,表示显示屏上一个显示行所占
显示存储器的单元数为1~240个字节。
[说明]C/R值可以选择得比显示屏的实际长度值小,但是余留部分不能超过64点列
=8字节
P5 [ TC/R ]=0x42
TC/R..驱动频率的时间常数。
TC/R是晶振频率Fosc转换成液晶显示驱动工作频率FR的
时间常数。
它可以简单地由下式求出:
TC/R>=C/R+4
[说明]该参数的设置有时是非常重要的。
错误的设置可引起以下几种现象:
*行扫描停止且出现高对比度的水平线
*显示不稳定,出现闪烁或全亮或全暗
*LP信号不足或不存在。
在取值时还是允许有一定的选取范围的。
TC/R与震荡频率的关系为:
Fosc>=9*TC/R*L/F*FR
TC/R也可以由以上两个公式联合求出。
FR为液晶显示帧扫描频率,通常=70Hz.
在控制大规模液晶显示模块时,最大震荡频率10MHz下,要满足TC/R取值要求,
就要降低液晶显示的帧扫描频率了。
P6 [ L/F ]=0xF0
L/F...扫描驱动的帧参数。
L/F值设置了控制器所要控制的液晶显示驱动系统的扫描数,
其倒数为占空比系数。
当液晶显示驱动系统为单屏结构时,L/F即为1帧的扫描
行数;当液晶显示驱动系统为双屏结构时,L/F为1帧扫描行数的2倍,此时L/F
必须为偶数值。
L/F取值范围在0~0xff范围内,对应扫描行数为1~256行。
P7 [ APL ]=0x30
P8 [ APH ]=0x00
ap在显示存储器内分配一个显示行的单元数(字节数)。
ap为双字节参数,apl为低8位,
aph为高8位。
通常AP取值为C/R+1或大于C/R值的整数,以方便计算个显示行的显示存
储器地址。
*/
//显示域设置。
A0=1..写指令/0...读写参数。
后续10字节参数串ParaScrTableA[]
#defineScroll 0x44 //时序要求:
/WR=0;/RD=1
#defineBasePart1 0x00
#defineBasePart2 0x40
#defineBasePart3 0x80
#defineBasePart4 0x00
Ucharcode ParaScrTableA[]=
{
0x00,BasePart1,0xF0,0x00,BasePart2,0xF0,0x00,BasePart3,0x00,BasePart4
};
/*..............................................................................
该指令设置了四个显示区的起始地址SAD合格区所控制的显示行数SL.设置的参数与‘系统
设定’指令设置的参数结合将确定显示RAM中的各显示区域范围与有效的显示区域。
定时间
定量地递增或递减某区的起始地址SAD,将产生显示画面的平滑滚动。
该指令有10个参数。
部分参数的设置是有效的,但设置的顺序不能改变也不能省略。
Scroll初始化设置参数表,
共10字节具体定义如下:
................................................................................
P1 [ SAD1L ]=0x00
P2 [ SAD1H ]=0x00
SAD1显示1区首地址。
SAD1确定了第1显示区的起始地址。
他由双字节组成。
本区为显示主区间,占用8K空间
P3 [ SL1 ]=0xF0
SL1显示一区所控制的显示屏上的行数:
0~(L/F)
................................................................................
P4 [ SAD2L ]=0x00
P5 [ SAD2H ]=0x40
SAD2显示2区首地址。
SAD2确定了第2显示区的起始地址。
他由双字节组成。
本参数表定义这个区占用8K空间
P6 [ SL2 ]=0xF0
SL1显示2区所控制的显示屏上的行数:
0~(L/F)
................................................................................
P7 [ SAD3L ]=0x00
P8 [ SAD3H ]=0x40
SAD3显示3区首地址。
SAD2确定了第3显示区的起始地址。
他由双字节组成。
作为文本区定义,占用2K空间
................................................................................
P9 [ SAD4L ]=0x00
P10 [ SAD4H ]=0x48
SAD4显示4区首地址。
SAD2确定了第4显示区的起始地址。
他由双字节组成。
作为文本区定义,占用2K空间
................................................................................
后面预留空间将作为cgram使用
..............................................................................*/
//休闲模式设置。
A0=1;/WR=0;/RD=1;后续参数:
无
#defineSleepIn 0x53
/*该指令强制SED1335等进入休闲工作方式。
在该指令输入后,SED1335等在扫描最后一行时
将列驱动器清零;置YDIS=0,使液晶显示驱动系统关闭显示驱动电源;将显示存储器管理信
号/VCE=1,以保护显示数据不被破坏;终止包括振荡器在内的所有内部逻辑电路的运行,但
保存原设置的参数,使其进入休闲方式。
退出休闲方式需要计算机重新写入'SYSTEMSET'指
令的P1参数。
该指令无效。
*/
//显示状态设置。
A0=1..ON/0..OFF;/WR=0;/RD=1.后续参数1字节:
#defineDispOn 0x59
#define DispOff 0x58
/*代码 [0101000ON/OFF ]
该指令设置了显示的各种状态。
他们有显示开关的设置,光标的显示状态的设置和各显示区
显示状态的设置。
在指令代码中就含有一个参数位:
=0关显示;=1开显示。
[说明]该参数位控制着显示的总开关状态。
后续参数:
[FP5 FP4 FP3 FP2 FP1 FP0 FC1 FC0]
FC1,FC0..光标状态设置位。
他们组合设置了光标显示的4种状态:
==========================================
FC1FC0 光 标 状 态
==========================================
0 0 光标显示关闭
0 1 光标显示但不闪烁
1 0 光标以FR/32Hz的频率闪烁显示
1 1 光标以FR/64Hz的频率闪烁显示
==========================================
[注]光标闪烁的亮与暗占空比为7:
3
FP1,FP0...显示一区状态设置位.他们组合设置了一区显示的4种状态
FP3,FP2...显示二、四区状态设置位.他们组合设置了二、四区显示的4种状态
FP5,FP4...显示三区状态设置位.他们组合设置了三区显示的4种状态
==========================================
FP1FP0 显示一区显示状态
FP3FP2 显示二、四区显示状态
FP5FP4 显示三区显示状态
==========================================
0 0 画面显示关闭
0 1 画面显示但不闪烁
1 0 画面以FR/32Hz的频率闪烁显示
1 1 画面以FR/64Hz的频率闪烁显示
==========================================
[注]画面闪烁的亮与暗占空比为7:
3
[说明]:
这些参数位都是控制着各显示区的显示状态。
该状态的实现需
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- LCD30 程序