推荐星级:
  • 1
  • 2
  • 3
  • 4
  • 5

单总线温度采集深入剖析

更新时间:2026-10-21 09:04:08 大小:39K 上传用户:潇潇江南查看TA发布的资源 标签:单总线DS18B20时序分析上拉电阻总线通信 下载积分:2分 评价赚积分 (如何评价?) 打赏 收藏 评论(0) 举报

资料介绍

单总线温度采集深入剖析 现象描述 问:这次单总线温度采集出了什么问题? 答:板上一片 DS18B20 单总线温度传感器,读回来的温度总是不稳定,偶尔读到 -55℃ 这种离谱值,还时不时读不到设备。排查的时候发现,总线上一共挂了几个从机,主机轮询到某个地址时经常超时。 问:单总线采集不稳定,你第一时间怀疑什么? 答:我第一时间怀疑时序,因为单总线对时序要求很严。读写时序稍有偏差,就会导致通信失败。但后来发现,光调时序并不能完全解决,于是把注意力放到了总线电平、上拉电阻、以及从机地址冲突这几个更底层的环节上。 数据采集 问:你是怎么采集数据定位问题的? 答:我分了两步。第一步用逻辑分析仪抓总线的波形,看主机发出的复位脉冲、时序、以及从机的应答是否正常;第二步做了多组测试,分别改变上拉电阻阻值、总线长度、从机数量,记录每种条件下的通信成功率。 问:采集到哪些关键现象? 答:最关键的发现是,上拉电阻偏大时,总线下拉后恢复时间明显变长,导致主机误判电平;而总线过长、分布电容增大时,同样的上拉电阻下波形边缘变缓,读时序更容易出错。数据表摆出来,通信失败率和这几个参数的关联一目了然。 上拉电阻 总线长度 通信成功率 波形现象 4.7k 1m 高 波形正常 10k 3m 中 恢复变缓 4.7k 5m 低 边缘变缓、误判 原因分析 问:那根因到底是什么? 答:根因是多个因素叠加。首先是上拉电阻和总线分布电容构成 RC 充放电,总线越长、电容越大,恢复时间越长,在时序苛刻时就容易读错。其次是单总线协议本身的时序窗口窄,任何一处的电平恢复延迟超时,都会被判定为通信失败。 问:还有别的因素吗? 答:还有一个隐蔽的因素是从机地址。单总线设备有 64 位 ROM 码,主机用 ROM 码寻址。如果地址读取出错,或者有两片从机 ROM 码读取冲突,主机就会"找不到设备",表现就是超时和读不到。

部分文件列表

文件名 大小
单总线温度采集深入剖析.docx 39K

全部评论(0)

暂无评论

上传资源 上传优质资源有赏金

  • 打赏
  • 30日榜单

推荐下载