液晶显示模块编程.docx

液晶显示模块编程.docx

ID:62718456

大小:37.60 KB

页数:14页

时间:2021-05-17

液晶显示模块编程.docx_第1页
液晶显示模块编程.docx_第2页
液晶显示模块编程.docx_第3页
液晶显示模块编程.docx_第4页
液晶显示模块编程.docx_第5页
资源描述:

《液晶显示模块编程.docx》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、第15章液晶显示模块编程15.2.2MG-12232模块的编程E1下面以图15.1的接口电路为例。液晶显示区域分成E1边和E2边,下面只含边的程序(表15.1中E1=1,E2=0),E2边(表15.1中E仁0,E2=1)类推。在系统程序的初始化部分,应对程序中用到的寄存器和临时变量作说明,如:unsignedcharTRANS;unsignedcharPAGEADD;//存放页地址寄存器unsignedcharPAGENUM;//存放总页数寄存器unsignedcharCLMSUM;//存放总列数寄存器unsignedch

2、arCLMADD;//存放列地址寄存器unsignedcharWRITE;//存放显示数据寄存器unsignedcharrow;//存放显示起始行寄存器unsignedchari,k;//通用寄存器//系统各口的输入输出状态初始化子程序//设置PORTA口和PORTE口为数字I/O口//设置液晶的4个控制脚为输出voidINITIAL(){ADCON1=0X87;TRISA3=0;TRISB0=0;TRISE=0X00;}//读液晶显示器状态子程序voidLCDSTA1(){while(1){TRISD=0XFF;RB0=

3、1;RA3=0;RE0=1;RE1=0;if(RD7==0)break;}}//设置D口为输入//E1=1//E2=0//R/W=1//A0=0//为忙状态,则继续等待其为空闲//对液晶显示器发指令子程序(指令保存在TRANS寄存器中)voidTRANS1(){LCDSTA1();TRISD=0X00;//判断液晶是否为忙//置D口为输出//E1=1//E2=0//R/W=0//A0=0//需要写入的命令字送入数据线//E1=0写入指令//R/W=1数据保存在WRITE寄存器中)RB0=1;RA3=0;RE0=0;RE1

4、=0;PORTD=TRANS;RB0=0;RE0=1;}//对液晶显示器写数据子程序voidWRITE1(){TRANS=CLMADD;TRANS1();LCDSTA1();TRISD=0X00;RB0=1;//E1=1RA3=0;//E2=0RE0=0;//R/W=0RE1=1;//A0=1PORTD=WRITE;RB0=0;CLMADD++;RE0=1;}//开E1显示子程序voidDISP1(){while(1){TRANS=0XAF;TRANS1();LCDSTA1();TRISD=0XFF;RB0=1;RA3=0

5、;RE0=1;RE1=0;if(RD5==0)break;}//设置列地址//查询液晶是否为空闲//D口为输出//需要写入的数据放入D口〃E仁0,写入数据//列地址加1//R/W=1//送出控制命令//判断液晶是否为空闲//设置D口为输入//E1=1//E2=0//R/W=1//A0=0}//如果液晶没被关闭,则继续关}//E1边清屏子程序voidCLEAR1(){PAGEADD=0xB8;//设置页地址代码for(PAGENUM=0X04;PAGENUM>0;PAGENUM--){TRANS=PAGEADD;TRANS1

6、();CLMADD=0x00;//设置起始列;CLMSUM>0;CLMSUM--){//判断液晶是否为空闲//写入00H以清屏//页号增1for(CLMSUM=0X50LCDSTA1();WRITE=0X00WRITE1();}PAGEADD++;}}//关E1显示子程序voidDISOFF1(){while(1){TRANS=0XAE;TRANS1();LCDSTA1();TRISD=0XFF;RB0=1;RA3=0;RE0=1;RE1=0;if(RD5==1)break;}//发出控制命令//判断液晶是否为空闲//D

7、口设置为输入//E1=1//E2=0//R/W=1//A0=0//如果液晶没被关闭,则继续关DISOFF1();//关显示E1DISOFF1();//关显示E1有了以上的通用子程序,就可以构造出各种显示程序,如字符、汉字、曲线等。执行这些程序前,必须对液晶进行初始化。初始化的顺序为:关显示T正常显示驱动设置t占空比设置t复位tADC选择t清屏t开显示,程序如下://E1边初始化voidlcd1(){DISOFF1();//关显示E1TRANS=0XA4;TRANS1();TRANS=0XA9;TRANS1();TRANS=

8、0XE2;TRANS1();TRANS=0XA0;TRANS1();CLEAR1();LCDSTA1();DISP1();}//静态显示驱动//发出控制命令//占空比为1/32//发出控制命令//复位//发出控制命令//ADC选择正常输出//发出控制命令//清屏//判断液晶是否为空闲//开显示15.4程

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。