求助LCD1602问题

2019-07-15 16:09发布

我将在STC89C52RC上调试成功的LCD1602程序移植到STC12C5A60S2上,延迟什么的都扩大了;但是只有数字显示正常,字母显示的是乱码,这是什么原因
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
4条回答
zjbhello
2019-07-16 01:08
淡定的牙粉 发表于 2015-9-7 18:30
您那里,有用STC12c5a60s2编写LCD1602的程序吗,能够给我参考一下吗;我现在也被弄懵了

LCD1602的控制应该算是比较简单,笔者也是本科时代利用STC89控制过1602的
下面是网上找的一段代码 希望对你有用,请特别要注意线缆连线!

#include
#include
#define uint unsigned int
#define uchar unsigned char

sbit rs=P1^0;
sbit rw=P1^1;
sbit en=P1^2;

void delay(uint sum)
{
        int i,j;
        for(i=sum;i>0;i--)
                for(j=110;j>0;j--);       
}

void write_date(uchar date)
{
        rs=1;
        rw=0;
        P0=date;
        delay(5);
        en=1;
        delay(5);
        en=0;
}

void write_com(uint com)
{
        rs=0;
        rw=0;
        P0=com;
        delay(5);
        en=1;
        delay(5);
        en=0;
}

void init()
{
        en=0;
        write_com(0x38);
        write_com(0x0e);
        write_com(0x06);
        write_com(0x01);
        write_com(0x80+0x10);
}

void main()
{
        init();
        write_date('a');
        delay(20);
        write_date('b');
        while(1);
}       

一周热门 更多>