• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

stm32驱动DS18B20读的温度偏高

菜鸟冷虎 2018-06-28 浏览量:1096
为什么stm32读取DS18B20的温度会比环境温度偏高
0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 首先这个问题,你说如何知道目前环境温度的?有测量环境温度的仪表?精度如何?不然你怎么知道到底是哪个不准呢?

    然后,你说的高,是高多少?是不是在误差允许范围?毕竟,DS18B20本身也有精度……

    • 发布于 2018-06-28
    • 举报
    • 评论 0
    • 0
    • 0

其他答案 数量:8
  • 你可以用示波器看看,每次总线上的数据是不是你读取到的
    • 发布于2018-06-28
    • 举报
    • 评论 0
    • 0
    • 0

  • 看高度少了,而且这需要参照正确的温度,在单片机内部拟合出正确的函数,我觉得应该是单片机程序拟合函数错误了
    • 发布于2018-06-28
    • 举报
    • 评论 0
    • 0
    • 0

  • 先通过串口看看你转化成实际温度之前的数据是不是正确,手动计算一下看看结果是不是正确。如果相差不是太大话,可能本身就存在误差,我感觉是你将18B20数据转化成十进制问的时候出现了错误,是高固定的值,可以修正一下嘛
    • 发布于2018-06-28
    • 举报
    • 评论 0
    • 0
    • 0

  • 有可能是DS18B20长时间工作产生的发热,楼主可以用DHT11测下温度进行横向对比。

    • 发布于2018-06-28
    • 举报
    • 评论 0
    • 0
    • 0

  • 说明DS18B20周围有其它的热源,这个传感器是存在一定的误差,但是不会超过1度
    • 发布于2018-06-30
    • 举报
    • 评论 0
    • 0
    • 0

  • 这个很大的原因都是由于你的DS18B20附件有发热的元件导致你的传感器被加热了
    • 发布于2018-07-03
    • 举报
    • 评论 0
    • 0
    • 0

  • 是的,可能读取频率太高了,内部mcu一直工作就发热了
    • 发布于2018-07-12
    • 举报
    • 评论 0
    • 0
    • 0

  • DS18B20自身有一定的误差,在范围内的话,就不是硬件问题

    检查周围有没有别的热源,比如靠近灯管,肯定比环境温度高啊

    • 发布于2018-07-25
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

stm32驱动DS18B20读的温度偏高