《lcd1602显示及测试程序Word版》由会员分享,可在线阅读,更多相关《lcd1602显示及测试程序Word版(4页珍藏版)》请在人人文库网上搜索。
1、传播优秀Word版文档 ,希望对您有帮助,可双击去除!本程序共分为三个文件:Main.c Lcd1602.c Lcd1602.h/*文件Main.c*/#include#include#define uchar unsigned char#define uint unsigned intvoid delay_ms(uint x)uint i,j;for(i=0;i#include#define uchar unsigned char#define uint unsigned int#define Nop _nop_()#define Lcd_data P0 /*数据口*/#define bus。
2、y 0x80/*检测忙状态*/sbit rs = P24;sbit rw = P25;传播优秀Word版文档 ,希望对您有帮助,可双击去除!sbit en = P26;void delay(uchar x)uchar i,j;for(i=0;ix;i+)for(j=0;j125;j+);/*写命令*/void Write_com(uchar com)rs = 0;delay(5);rw = 0;delay(5);Lcd_data = com;delay(5);en = 0;delay(10);en =1;delay(10);/*写数据*/void Write_data(uchar dat)rs。
3、 = 1;delay(5);rw = 0;delay(5);Lcd_data = dat;delay(10);en =0;delay(5);en = 1;delay(10); /*初始化*/void Lcd_init()Lcd_data = 0x00;delay(15);传播优秀Word版文档 ,希望对您有帮助,可双击去除!Write_com(0x38);delay(5);Write_com(0x38);delay(5);Write_com(0x38);delay(5);Write_com(0x38); /*显示模式设置*/Write_com(0x08);/*显示关闭*/Write_com(0。
4、x01);/*显示清屏*/Write_com(0x06);/*显示光标移动设置*/Write_com(0x0c);/*显示开及光标设置*/void Write_char(uchar x,uchar y,uchar dat)x &=0x1;/*限制x不能大于1*/y &=0xf;/*限制y不能大于15*/if(x)y |= 0x40 ; /*如果y大于1,则在第二行显示*/y |= 0x80;Write_com(y);Write_data(dat);void Write_string(uchar x,uchar y,uchar *str)uchar length = 0;x &=0x1;/*限制。
5、x不能大于1*/y &=0xf;/*限制y不能大于15*/while(*str!=0)Write_char(x,y,*str);y+;str+;void Clear_line(uchar line)传播优秀Word版文档 ,希望对您有帮助,可双击去除!Write_string(line,0, );switch(line)case 0: Write_com(0x80);case 1: Write_com(0x80+0x40);default : break;void Clear_all()Write_com(0x01);Write_com(0x80);/*文件Lcd1602.h*/#define。
6、 uchar unsigned char#define uint unsigned int#ifndef Lcd1602_h#define Lcd1602_hextern Lcd_init();extern Write_data(uchar dat);extern Write_char(uchar x,uchar y,uchar dat);extern Write_string(uchar x,uchar y,uchar *dat);extern Clear_line(uchar line);extern Clear_all();#endif已经测试通过, 由于百度文库不能上传压缩包 ,故分三个文件。如有错误欢迎指出 547886405qq.com _。