lcd12864液晶屏测试程序

上传人:小** 文档编号:88022912 上传时间:2019-04-17 格式:DOC 页数:4 大小:47.50KB
返回 下载 相关 举报
lcd12864液晶屏测试程序_第1页
第1页 / 共4页
lcd12864液晶屏测试程序_第2页
第2页 / 共4页
lcd12864液晶屏测试程序_第3页
第3页 / 共4页
lcd12864液晶屏测试程序_第4页
第4页 / 共4页
亲,该文档总共4页,全部预览完了,如果喜欢就下载吧!
资源描述

《lcd12864液晶屏测试程序》由会员分享,可在线阅读,更多相关《lcd12864液晶屏测试程序(4页珍藏版)》请在金锄头文库上搜索。

1、/LCD12864液晶屏测试程序(已通过)/ /液晶屏型号:HJ12864M-1/ #include #define uchar unsigned char #define uint unsigned int /8bit数据接入IO口 #define Part P0 /P0接8位数据线 /控制数据端 sbit LCD_RS=P25; /定义12864液晶RS端,寄存器选择信号 H:数据寄存器 L:指令寄存器 sbit LCD_RW=P26; /定义12864液晶RW端,读/写信号 H:读 L:写 sbit LCD_EN=P27; /定义12864液晶LCDEN端, 片选信号 下降沿触发,锁存数

2、据 sbit LCD_PSB=P32; /定义12864液晶PSB端, H:并行 L:串行 sbit LCD_RST=P34; /定义12864液晶RST端, H:不复位 L:复位 uchar code dis1=床前明月光; uchar code dis2=疑是地上霜; uchar code dis3=举头望明月; uchar code dis4=低头思故乡; /毫秒延时函数 void delay(uint xms) uint i,j; for(j=0;ixms;j+) for(i=0;i110;i+); /LCD忙检测函数 bit lcd_busy() bit result; LCD_RS

3、=0; LCD_RW=1; LCD_EN= 1; result=(bit)(Part & 0x80); LCD_EN=0; return result; /液晶写命令函数 void lcd_write_cmd(uchar com) while(lcd_busy(); LCD_RS=0; /选择指令寄存器 LCD_RW=0; /写 LCD_EN=0; Part=com; /指令值赋给P0口 delay(5); LCD_EN=1; delay(5); LCD_EN=0; /液晶写一个字符数据函数 void lcd_write_dat(uchar date) while(lcd_busy(); LC

4、D_RS=1; /选择数据寄存器 LCD_RW=0; /写 LCD_EN=0; P0=date; /数据值赋给P0口 delay(5); LCD_EN=1; delay(5); LCD_EN=0; /液晶写一个字符串函数 void lcd_write_string(uchar *str) while(*str!=0) /未结束 lcd_write_dat(*str+); delay(5); /液晶显示位置函数 void lcd_pos(uchar x,uchar y) /从第X行的第Y位置开始显示 uchar pos; if(x=1) /第一行 x=0x80; else if(x=2) /第二

5、行 x=0x90; else if(x=3) /第三行 x=0x88; else if(x=4) /第四行 x=0x98; pos=x+y-1; /首地址为0X80 lcd_write_cmd(pos); /液晶初始化函数 void lcd_init() LCD_PSB=1; /并行方式 LCD_RST=1; /不复位 lcd_write_cmd(0x30); delay(5); lcd_write_cmd(0x0c); /开显示,不显示光标 delay(5); lcd_write_cmd(0x06); /写一个字符后地址指针自动加1 delay(5); lcd_write_cmd(0x01)

6、; /清屏 delay(5); /主函数函数 void main() / uchar i; lcd_init(); while(1) lcd_pos(1,1); / lcd_write_string(dis1); lcd_write_string(床前明月光); delay(5); lcd_pos(2,1); / lcd_write_string(dis2); lcd_write_string(疑是地上霜); delay(5); lcd_pos(3,1); / lcd_write_string(dis3); lcd_write_string(举头望明月); delay(5); lcd_pos(4,1); / lcd_write_string(dis4); lcd_write_string(低头思故乡); delay(500);

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

当前位置:首页 > 商业/管理/HR > 管理学资料

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