LCD1286 4显示程序

上传人:cjc****537 文档编号:120328787 上传时间:2020-02-06 格式:DOC 页数:3 大小:89KB
返回 下载 相关 举报
LCD1286 4显示程序_第1页
第1页 / 共3页
LCD1286 4显示程序_第2页
第2页 / 共3页
LCD1286 4显示程序_第3页
第3页 / 共3页
亲,该文档总共3页,全部预览完了,如果喜欢就下载吧!
资源描述

《LCD1286 4显示程序》由会员分享,可在线阅读,更多相关《LCD1286 4显示程序(3页珍藏版)》请在金锄头文库上搜索。

1、本例程为通过用AT89C52芯片操作LCD12864显示的程序,使用的晶振为12M。/*程序说明:LCD12864显示主程序程序调试员:莫剑辉调试时间:2010-6-7*/#include#include12864.cvoid main()Ini_Lcd(); /液晶初始化子程序Disp(1,0,6,莫剑辉); /显示数据到LCD12864子程序while(1); 这里我们通过调用下面的头文件就可以了,这样的做法方便我们以后要用到LCD12864的程序的调用。/*程序说明:LCD12864显示头文件程序调试员:莫剑辉调试时间:2010-6-7*/#include#define uchar un

2、signed char#define uint unsigned int#define DATA P2 /数据输出端07sbit RS=P00; /LCD12864 RS端sbit RW=P01; /LCD12864 RW端sbit E =P02; /LCD12864 E 端sbit PSB =P03;/*延时子程序*/void Delay_1ms(uint x)uint j,i; for(j=0;jx;j+) for(i=0;i120;i+); /延时X乘以120 /*LCD12864液晶测忙子程序(读状态)*/void Busy() uchar busy;do E = 0; /0为关闭使能

3、端,1为打开使能端 RS = 0; /1为指令,0为数据 RW = 1; /1为读,0为写 Delay_1ms(20); /延时20乘以120时间 E = 1; /0为关闭使能端,1为打开使能端 busy=P1; /读取P2状态 Delay_1ms(20); /延时20乘以120时间 E = 0; /0为关闭使能端,1为打开使能端 while(busy&0x80); /判断BUSY位是否工作:1为内部在工作,0为正常状态/*LCD12864液晶数据写入子程序*/void Write_Data(uchar k) Busy(); /测忙 E =1;/0为关闭使能端,1为打开使能端 RS=1;/1为

4、指令,0为数据 RW=0;/1为读,0为写 DATA=k;/输入数据K到DATA Delay_1ms(20);/延时20乘以120时间 E =0; /0为关闭使能端,1为打开使能端 Delay_1ms(20); /延时20乘以120时间/*LCD12864液晶命令写入子程序*/void Write_Cmd(uchar cmd) Busy(); /测忙 E=1;/0为关闭使能端,1为打开使能端 RS=0; /1为指令,0为数据 RW=0;/1为读,0为写 DATA=cmd; /输入命令cmd到DATA Delay_1ms(20);/延时20乘以120时间 E=0;/0为关闭使能端,1为打开使能端

5、 Delay_1ms(20);/延时20乘以120时间/*LCD12864液晶数据显示子程序*/void Disp(uchar y,uchar x,uchar i,uchar *z) uchar Address; if(y=1)Address=0x80+x; /Y判断第几行,X判断第几列,0x80为液晶行初始地址 if(y=2)Address=0x90+x; if(y=3)Address=0x88+x; if(y=4)Address=0x98+x;Write_Cmd(Address); /写入地址命令到LCD12864while(i) /写入显示数据的大小 Write_Data(*(z+);

6、/写入显示数据到LCD12864 i-; /*LCD12864液晶初始化子程序*/void Ini_Lcd(void) PSB=1; Delay_1ms(20); Write_Cmd(0x30); /基本指令集 Delay_1ms(20); Write_Cmd(0x02); / 地址归位 Delay_1ms(20); Write_Cmd(0x0c); /整体显示打开,游标关闭 Delay_1ms(20); Write_Cmd(0x06); /游标右移 Delay_1ms(20); Write_Cmd(0x80); /设定显示的起始地址 Delay_1ms(20); Write_Cmd(0x01); /清除显示

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 教育学

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号