1602显示

2019-03-24 19:37发布

1602在main函数最后加while(1); lcd上就不显示了,去掉就显示,但是显示内容是闪的。本来想加个while不闪的 ,现在不显示了,怎么回事呢? 此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
10条回答
jishuaihu
2019-03-25 10:58
你可以仿真吗?单步运行一下看看。
你可以这样试一下,把
while(*ap!='')
{
writedata(ap);
ap++;
delay();
}

while(1);

改成
while(1)
{
while(*ap!='')
{
writedata(ap);
ap++;
delay();
}
}
试一下。你不加whlie(1)的时候闪有可能是因为程序执行完一遍之后自动从头重新执行了,用C语言有的编译器会这样处理,这样的话你的1602就处于不停的复位和写入状态,所以就闪了。至于你说的加了while(1)之后显一遍表示不太理解,一般的液晶是不需要实时刷新的,不过我没用过1602,不清楚。

一周热门 更多>