微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > MCU和单片机设计讨论 > LCD12864问题

LCD12864问题

时间:10-02 整理:3721RD 点击:
在向LCD写数据或命令的时候,EN得有个脉冲,我看了数据手册,上面说的脉冲高电平时间大于150ns就可以。那为什么我程序里面的延时居然在小于1MS的时候,LCD就不能正常显示呢?延时1MS的话导致显示一张图片大约要2.5s的时间,很慢啊!
void write_cmd(uchar cmd)
{
check_busy();
EN=0;
RS=0;
RW=0;
EN=1;
P0=cmd;
delay(1); //此处延时约有1MS
EN=0;
}

这个要看你延时到底怎么写的,软件延有时会有误差,测忙可以去掉了~check_busy();一般我都不使用

延时如下,12M晶振下约为1MS
void delay(uint z)
{
        uint x,y;
        for(x=z;x>0;x--)
                for(y=110;y>0;y--);
}

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top