lcd编程中显示的全是乱码啊 5555 求指教

2019-07-15 15:26发布

#include<reg51.h>
sbit lcden=P2^7;
#define lcd P0
sbit rw=P2^5;
sbit rs=P2^6;
#define uint unsigned int
#define uchar unsigned char
void delay(z);
uchar i;
void write_com(com);
void write_date(date);
void init();

uchar code yi[14]="12345678901234";
uchar code er[13]="1234567890123";

void main()
{
        init();
        write_com(0x80);
        for(i=0;i<14;i++)
        {
         write_date(yi[14]);
         delay(5);
        }
        write_com(0x80+0x40);
        for(i=0;i<13;i++)
        {
         write_date(er[13]);
         delay(5);
        }
        while(1);
}

void init()
{
    lcden=0;
    write_com(0x38);
        write_com(0x0c);
    write_com(0x06);
    write_com(0x01);
}

void write_com(uchar com)
{
    rs=0;
        rw=0;
        lcd=com;
        delay(5);
        lcden=1;
        delay(5);
        lcden=0;
}

void write_date(uchar date)
{
    rs=1;
        rw=0;
        lcd=date;
        delay(5);
        lcden=1;
        delay(5);
        lcden=0;
}
void delay(uint z)
{
     uint x,y;
                 for(x=z;x>0;x--)
                     for(y=110;y>0;y--);
}
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
4条回答
wangqihh
1楼-- · 2019-07-15 17:25
看例程吧,就像你做题不会对标准答案一样。而且目测,谁会记这些啊
赵莫莫
2楼-- · 2019-07-15 20:56
 精彩回答 2  元偷偷看……
lycanleeway
3楼-- · 2019-07-16 01:23
显示屏驱动写了吗?
lycanleeway
4楼-- · 2019-07-16 05:02
我觉得你没写错,是不是 你的1602 插口的位置和你定义的 不一样
最好检查一下 数据线是不是P0,驱动是不是P^2~P^7

一周热门 更多>