12864液晶显示图片原理(完整版)

______________________________________________________________________________________________________________

图片显示芯片结构分块与汉字显示不一样

图象显示过程是这样的:首先设置垂直地址,再设水平地址(连续写入两个字节的资料来完成垂直与水平的坐标地址,然后在每个地址里写入16位数据)。 垂直地址范围 AC5...AC0

水平地址范围 AC3…AC0

绘图RAM 的地址计数器(AC)只会对水平地址(X 轴)自动加一,当水平地址=0FH 时会重新设为00H

但并不会对垂直地址做进位自动加一,故当连续写入多笔资料时,程序需自行判断垂直地址是否需重新设定。GDRAM的

精品资料

______________________________________________________________________________________________________________

坐标地址与资料排列顺序如图5:分上下屏写入。

for(i=0;i<32;i++) // 上半屏32个垂直地址 {

write_com(0x80 + i); // write_com(0x80); // for(j=0;j<16;j++) { write_data(*adder); adder++; } }

精品资料

垂直地址 水平地址 ______________________________________________________________________________________________________________

带中文字库的128X64显示模块时应注意以下几点:

①欲在某一个位置显示中文字符时,应先设定显示字符位置,即先设定显示地址,再写入中文字符编码。

②显示ASCII字符过程与显示中文字符过程相同。不过在显示连续字符时,只须设定一次显示地址,由模块自动对地址加1指向下一个字符位置,否则,显示的字符中将会有一个空ASCII字符位置。

③当字符编码为2字节时,应先写入高位字节,再写入低位字节。

④模块在接收指令前,向处理器必须先确认模块内部处于非忙状态,即读取BF标志时BF需为“0”,方可接受新的指令。如

精品资料

______________________________________________________________________________________________________________

果在送出一个指令前不检查BF标志,则在前一个指令和这个指令中间必须延迟一段较长的时间,即等待前一个指令确定执行完成。指令执行的时间请参考指令表中的指令执行时间说明。⑤“RE”为基本指令集与扩充指令集的选择控制位。当变更“RE”后,以后的指令集将维持在最后的状态,除非再次变更“RE”位,否则使用相同指令集时,无需每次均重设“RE”位。

程序———————并行(串行后面再分析)—————————————————————————— #include #include

精品资料

______________________________________________________________________________________________________________

#include #include

#define uchar unsigned char #define uint unsigned int uchar code LCD_data1[]; uchar code LCD_data2[]; uchar code LCD_picture1[]; uchar code LCD_picture2[]; sbit RS = P2^4; sbit RW = P2^5; sbit EN = P2^6; sbit PSB = P2^1;

sbit RES = P2^3;sbit Dataport = P0; sbit Busyport = P0^7;

精品资料

联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4