我用1602.1302.18b20做了一个单片机最小系统,1602上面显示的时间字符很正常,但温度在不停的闪烁,怎么解决?

2024-12-14 10:08:36
推荐回答(3个)
回答1:

你应该是用到了中断,18b20对时序比较严格,所以在对它进行读写操作时,不能有中断。你在读写18b20的时候,关掉中断,读写完再打开中断就不会出现闪烁的问题了。比如:
EA=0;
T=ReadTemp(); //读温度
EA=1;
这样应该可以的。

回答2:

估计在1°间跳动,而且与实际温度有出入。

这是正常现象。

回答3:

估计是不停的读取温度,然后刷新显示。建议你1秒或者更长时间读取一次温度值,然后显示,或者读取温度后,和上次的值对比一下,连续几次不一样再刷新显示并暂存当前温度值