Cute_Traver_Cat 发表于 2021-2-25 11:56:47

LCD1602/12864跳不出忙检测

已经试过许多网上的代码,自己也根据时序图自己写了,烧录进去无显示,调试时都死在忙检测了,实在找不出问题所在
芯片:HC89S003F4
环境:keil5编译,vscode开发
没法上传源工程文件,体谅一下这是第三方网站,文件可以在这里下载下载

墙里秋千墙外荡 发表于 2021-3-4 22:07:08

没有对应单片机,手头上仿真工具也没有相应芯片
你试试先写指令数据在对EN进行使能和置零,数据是在下降沿时进行操作的,这样应该能保证在下降沿时数据是已经准备好的

void LCD1602_WriteCMD(unsigned char cmd)
{
        EN=0;
        RS=0;
        RW=0;
        Delay_us(10);
        EN=1;
        Delay_us(10);
        DataPort=cmd;
        Delay_us(10);
        EN=0;
}改为
void LCD1602_WriteCMD(unsigned char cmd)
{
        EN=0;
        RS=0;
        RW=0;
        Delay_us(10);
        DataPort=cmd;
        Delay_us(10);
        EN=1;
        Delay_us(10);
        EN=0;
}

Cute_Traver_Cat 发表于 2021-3-6 16:15:06

墙里秋千墙外荡 发表于 2021-3-4 22:07
没有对应单片机,手头上仿真工具也没有相应芯片
你试试先写指令数据在对EN进行使能和置零,数据是在下降沿 ...

谢啦,不过lcd是电平触发,后面检查过,可能是因为屏幕坏了
页: [1]
查看完整版本: LCD1602/12864跳不出忙检测