单片机LCD1602 - 爱问答

(爱问答)

单片机LCD1602

# include<reg52.h>

# include<intrins.h>

 

sbit LCD1602_RS = P2^6;

sbit LCD1602_RW = P2^5;

sbit LCD1602_E = P2^7;

 

void delay15ms();

void delay5ms();

void delay10ms();

 

void LCD1602_Init(void);

void LCD1602_Write_Cmd(unsigned char Cmd);

void LCD1602_Write_Data(unsigned char Data);

 

main(void)

{

LCD1602_Init();//初始化

LCD1602_Write_Cmd(0x0f+0x80);//确定显示地址

LCD1602_Write_Data('A');//确定显示内容

while(1);

}

 

//LCD1602初始化

void LCD1602_Init()

{

LCD1602_Write_Cmd(0x38);//显示模式设置 

LCD1602_Write_Cmd(0x0c);//显示开及光标设置

LCD1602_Write_Cmd(0x06);//显示光标移动设置

LCD1602_Write_Cmd(0x01);//显示清屏

 

 }

//写命令

void LCD1602_Write_Cmd(unsigned char Cmd)

{

//   LCD1602_Busy_Check();

LCD1602_RS = 0;

LCD1602_RW = 0;

LCD1602_E = 0;

P0 = Cmd;

_nop_();

LCD1602_E = 1;

_nop_();

LCD1602_E = 0;

_nop_();

}

 

//写数据

void LCD1602_Write_Data(unsigned char Data)

{

LCD1602_Busy_Check();

LCD1602_RS = 1;

LCD1602_RW = 0;

LCD1602_E = 0;

P0 = Data;

_nop_();

LCD1602_E = 1;

_nop_();

LCD1602_E = 0;

_nop_();

}

//忙信号检测

void LCD1602_Busy_Check(unsigned char temp);

{

P2 = 0xff;

do{

LCD1602_RS = 0;

LCD1602_RW = 1;

LCD1602_E = 0;

LCD1602_E = 1;

_nop_();

temp = P2;

_nop_();

LCD1602_E = 0;

_nop_();

}while(temp & 0x80);

}

 

void delay15ms()

{

unsigned char i, j;

 

i = 27;

j = 226;

do

{

while(--j);

} while(--j);

}

 

void delay5ms()

{

unsigned char i, j;

 

i = 9;

j = 244;

do

{

while(--j);

} while(--j);

}

 

void delay10ms()

{

unsigned char i, j;

 

i = 18;

j = 235;

do

{

while(--j);

} while(--j);

}


这个程序,在51单片机上始终只显示第一行,第二行黑块没有,弄了一下午了,求大神帮忙。然后RS,RW,E也没接错,看了很多遍了。谢谢

main(void)

{

    LCD1602_Init();//初始化

    LCD1602_Write_Cmd(0x0f+0x80);//确定显示地址

    LCD1602_Write_Data('A');//确定显示内容

    while(1);

}

这里的第二行代码确定地址不对吧,第一行是16个字符那就是0X80+(0X00~0X0F),如果要显示到第二行,地址应该是0X80+(0X10~0X1F),你改下试试


下一篇:.将某个十进制数n(n

上一篇:编程API监控关机操作

热门标签:
excel 网盘 破解 word dll
最新更新:
微软重新评估新的Outlook的使用时机 联想推出搭载联发科Helio G80芯片组的Tab M9平板 英特尔创新大赛时间确定! 微软Edge浏览器在稳定渠道中推出Workspaces功能 英伟达RTX4060TiGPU推出MaxSun动漫主题! 谷歌地图为用户提供了街景服务! GameSir 在T4 Kaleid中推出了一款出色的控制器! 微软开始在Windows 11 中测试其画图应用程序的新深色模式! LG电子推出全球首款无线OLED电视 英伟达人工智能芯片崭露头角! Steam Deck可以玩什么游戏-Steam Deck价格限时优惠 雷蛇推出CobraPro鼠标 Kindle电子阅读器可以访问谷歌商店吗 Windows10如何加入组策略 window10图片查看器怎么没有了?