液晶显示模块编程(一)

第15章液晶显示模块编程
15.2.2MG-12232模块的编程
下面以图15.1的接口电路为例。液晶显示区域分成E1边和E2边,下面只含E1边的程序(表15.1中E1=1,E2=0),E2边(表15.1中E1=0,E2=1)类推。
在系统程序的初始化部分,应对程序中用到的寄存器和临时变量作说明,如:
unsignedchar TRANS;
unsignedchar PAGEADD;//存放页地址寄存器
unsignedchar PAGENUM; //存放总页数寄存器
unsignedchar CLMSUM; //存放总列数寄存器
unsignedchar CLMADD; //存放列地址寄存器
unsignedchar WRITE; //存放显示数据寄存器
unsignedchar row;//存放显示起始行寄存器
unsignedchar i,k;//通用寄存器
//系统各口的输入输出状态初始化子程序
void INITIAL()
{
ADCON1=0X87; //设置PORTA口和PORTE口为数字I/O口
TRISA3=0;
TRISB0=0;
TRISE=0X00; //设置液晶的4个控制脚为输出
}
//读液晶显示器状态子程序
void LCDSTA1()
{
while(1){
TRISD=0XFF;//设置D口为输入
RB0=1; //E1=1
RA3=0; //E2=0
RE0=1; //R/W=1
RE1=0; //A0=0
if(RD7==0)break;//为忙状态,则继续等待其为空闲
}
}
//对液晶显示器发指令子程序(指令保存在TRANS寄存器中)
void TRANS1()
{
LCDSTA1();&n