找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 13112|回复: 5
打印 上一主题 下一主题
收起左侧

lcd1602只亮不显示是什么原因

[复制链接]
跳转到指定楼层
楼主
#include<reg51.h>
sbit RS=P2^0;
sbit RW=P2^1;
sbit E=P2^2;
unsigned char code tab1[]="welcome AT89S51!";
unsigned char code tab2[]="LCD1602test..OK";
bit lcd1602_read_status();
void lcd1602_write_cmd(unsigned char cmd);
void lcd1602_write_dat(unsigned char dat);
void lcd1602_init();
void delay(unsigned int i);
void delay(unsigned int i)
{while(i--);}
bit lcd1602_read_status()
{ unsigned char temp;
RS=0;
RW=1;
temp=P0;
delay(20);
E=1;
delay(20);
E=0;
return (bit)(temp&0x80);
}
void lcd1602_write_cmd(unsigned char cmd)
{
while(lcd1602_read_status()!=0);
E=0;
RS=0;
RW=0;
P0=cmd;
delay(20);
E=1;
delay(20);
E=0;
}
void lcd1602_write_dat(unsigned char dat)
{
while(lcd1602_read_status()!=0);
E=0;
RS=1;
RW=0;
P0=dat;
delay(20);
E=1;
delay(20);
E=0;
}
void lcd1602_init()
{
E=0;
lcd1602_write_cmd(0x38);
lcd1602_write_cmd(0x0c);
lcd1602_write_cmd(0x01);
lcd1602_write_cmd(0x06);
delay(200);
}
void lcd1602_display()
{
unsigned char i,j;
lcd1602_write_cmd(0x80+0x00);
for(i=0;i<15;i++)
{lcd1602_write_dat(tab1[i]);delay(20);}
lcd1602_write_cmd(0x80+0x40);
for(j=0;j<14;j++)
{lcd1602_write_dat(tab2[j]);delay(20);}
}
void main()
{
lcd1602_init();
lcd1602_display();
while(1);
}

51hei图片20200402161036.png (63.11 KB, 下载次数: 47)

51hei图片20200402161036.png
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:97554 发表于 2020-4-2 18:17 | 只看该作者
RW  RS  EN状态不对,好像卡在读忙状态不跑了。这个显示1602读忙操作没有意义。

初学者的经验1602显示 先定义四个函数----延时、初始化、写数据、写命令。

然后主函数--初始化--写命令---写数据

就完事了,刚开始学的时候就是被这些晦涩难懂的写法挡在门外很久很久。

单片机,把它分成一块块的研究会好学的很多。
回复

使用道具 举报

板凳
ID:213173 发表于 2020-4-2 20:00 | 只看该作者
查忙程序错误
回复

使用道具 举报

地板
ID:688939 发表于 2020-4-2 21:41 | 只看该作者
proteus仿真1602时有BUG,把忙检测那里的程序去掉,用延时5ms代替
回复

使用道具 举报

5#
ID:593706 发表于 2020-4-3 10:09 | 只看该作者
如果你的代码确定没有问题,硬件接线也正确,那么只亮不显示,极有可能是L1602上的对比度电压(模块第三脚)没有调好,如果对比度电压不全适,字符是完全看不见地。
回复

使用道具 举报

6#
ID:673985 发表于 2020-4-3 11:15 来自手机 | 只看该作者
代码问题呀
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表