标题: 单片机DS18B20温度报警系统proteus仿真显示不稳定,一直往15.9°跳变,求优化方向。 [打印本页]

作者: 扪心王老师    时间: 2020-7-1 16:59
标题: 单片机DS18B20温度报警系统proteus仿真显示不稳定,一直往15.9°跳变,求优化方向。
刚刚打开时 调节温度后


仿真刚刚打开温度显示是正常的,开始调节显示不同温度后,就显示不稳定了,看了网上一些帖子,有说是DS18B20和单片机延迟不匹配,有说是子程序太多导致主程序运行时间过长导致显示不稳定,还有说是定时器设置不正确引起的,我也摸不清该往哪个方向优化啦,想知道导致这个一直往15.9°跳变的原因,希望论坛里有经验的大佬帮忙指点一下,多谢啦!

由于具体操作比较好观察,我在附件上附上了keil程序和proteu仿真文件

DS18B20温度报警仿真.zip

65.73 KB, 下载次数: 59


作者: wulin    时间: 2020-7-1 16:59
楼主程序框架不合理,大量使用阻滞式延时,子程序间互相干扰,大量重复语句,无必要的中断开的太多。给你改好了。


示例.zip (157.98 KB, 下载次数: 148)



作者: gl960530484    时间: 2020-7-1 17:59
这个程序出现了一定的问题
作者: 扪心王老师    时间: 2020-7-1 18:36
gl960530484 发表于 2020-7-1 17:59
这个程序出现了一定的问题

哪一部分的问题呢?希望指正
作者: 扪心王老师    时间: 2020-7-7 10:32
wulin 发表于 2020-7-1 16:59
楼主程序框架不合理,大量使用阻滞式延时,子程序间互相干扰,大量重复语句,无必要的中断开的太多。给你改 ...

感谢大神帮助!!!
作者: wifingtta    时间: 2021-5-4 09:15
我也遇到过一样的问题,不用调整DS18B20的函数,跟实物的一样就好,我就把主程序循环里一个延时测量,原来是10MS测一次,改为100MS测一次,就可以了
作者: yangbulasi    时间: 2022-3-25 22:24
wulin 发表于 2020-7-1 16:59
楼主程序框架不合理,大量使用阻滞式延时,子程序间互相干扰,大量重复语句,无必要的中断开的太多。给你改 ...

非常值得学习




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1