单片机控制LCD显示问题 5

voidmain(){Init_Com();display1();do{tmpchange();display(tmp());delay(500);}while(1);}... void main()
{
Init_Com();
display1();
do
{
tmpchange();
display(tmp());
delay(500);
}
while(1);
}

display1是显示第一行为TEMPERATURE:
tempchange是检测温度变化用的
display是显示温度
问题是结果并不显示第一行字符,只显示第二行的温度。请高人指点,问题出在哪里呢?
展开
 我来答
ss7e0080
2012-09-09 · TA获得超过441个赞
知道小有建树答主
回答量:371
采纳率:0%
帮助的人:240万
展开全部
液晶显示要换行。
你的液晶多高?多宽?

估计你是display(tmp());把display1();显示的东西给抹掉了,或者display1()没写好程序。
断点仿真一下吧。简单。
追问
我用的是1602的LCD,两行16列,display1()是显示在第一行的,有初始化地址;display(tmp())是显示在第二行的,也有初始化地址。。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
爬行的山羊
2012-09-09 · TA获得超过3026个赞
知道大有可为答主
回答量:6445
采纳率:70%
帮助的人:1218万
展开全部
do
{
tmpchange();
display(tmp());
delay(500);
}
while(1);
}
这样你的display1就一闪而过,如果想一直显示就把display1放在DO循环里面就可以。
追问
我有试过把它放到里面的,可是这样的话,屏幕会很闪烁,这样的话,该如何解决呢?
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
糊涂的蠢材
2012-09-09 · TA获得超过230个赞
知道小有建树答主
回答量:533
采纳率:0%
帮助的人:402万
展开全部
至少也给个完整的程序出来吧~只有个main()说明不了什么啊~
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式