lcd1602怎么不显示呢

2019-07-16 03:05发布

void LCD1602(void)
{
EN = 0;
RS = 1;
RW = 1;
LCD_DATA = 0xFF;
}

void Read_Busy(void)
{  
   RS=0;
   RW=1;
   EN=1;
   while(LCD_DATA & 0x80);
   EN=0;
}//读状态
void Write_Lcd(unsigned char Value, bit i) //i = 0写指令.i = 1写数据;
{
Read_Busy();
RS = i;
RW = 0;
EN = 1;
    LCD_DATA = Value;
EN = 0;
}
void Init_Lcd(void)
{
Delay(15000);
Write_Lcd(0x38,0);
Delay(5000);
Write_Lcd(0x38,0);
Delay(5000);
Write_Lcd(0x38,0);
Write_Lcd(0x08,0);
Write_Lcd(0x01,0);

}
void Delay(unsigned int i)
{
while(-- i);
}//延时
void main(void)
{   LCD1602();
    Init_Lcd();
    Write_Lcd(0x80,0);
Write_Lcd('K',1);
while(1);
}
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
11条回答
qq353444009
1楼-- · 2019-07-16 23:11
{:1:}{:1:}{:1:}
liwenbiao
2楼-- · 2019-07-17 03:11
你的K要显示是需要一系列16进制代码的
975302159
3楼-- · 2019-07-17 08:13
如果实在觉得没有错的话,试一下电路图里面I/o口与Date口有没有接电阻,阻值是否合适
jilfuj596
4楼-- · 2019-07-17 13:54
貌似要先送数据,然后EN置为1,再延时一下,再把EN拉低吧
摘星人
5楼-- · 2019-07-17 15:10
 精彩回答 2  元偷偷看……

一周热门 更多>