- 1
- 2
- 3
- 4
- 5
单总线温度采集深入剖析
资料介绍
单总线温度采集深入剖析 现象描述 问:这次单总线温度采集出了什么问题? 答:板上一片 DS18B20 单总线温度传感器,读回来的温度总是不稳定,偶尔读到 -55℃ 这种离谱值,还时不时读不到设备。排查的时候发现,总线上一共挂了几个从机,主机轮询到某个地址时经常超时。 问:单总线采集不稳定,你第一时间怀疑什么? 答:我第一时间怀疑时序,因为单总线对时序要求很严。读写时序稍有偏差,就会导致通信失败。但后来发现,光调时序并不能完全解决,于是把注意力放到了总线电平、上拉电阻、以及从机地址冲突这几个更底层的环节上。 数据采集 问:你是怎么采集数据定位问题的? 答:我分了两步。第一步用逻辑分析仪抓总线的波形,看主机发出的复位脉冲、时序、以及从机的应答是否正常;第二步做了多组测试,分别改变上拉电阻阻值、总线长度、从机数量,记录每种条件下的通信成功率。 问:采集到哪些关键现象? 答:最关键的发现是,上拉电阻偏大时,总线下拉后恢复时间明显变长,导致主机误判电平;而总线过长、分布电容增大时,同样的上拉电阻下波形边缘变缓,读时序更容易出错。数据表摆出来,通信失败率和这几个参数的关联一目了然。 上拉电阻 总线长度 通信成功率 波形现象 4.7k 1m 高 波形正常 10k 3m 中 恢复变缓 4.7k 5m 低 边缘变缓、误判 原因分析 问:那根因到底是什么? 答:根因是多个因素叠加。首先是上拉电阻和总线分布电容构成 RC 充放电,总线越长、电容越大,恢复时间越长,在时序苛刻时就容易读错。其次是单总线协议本身的时序窗口窄,任何一处的电平恢复延迟超时,都会被判定为通信失败。 问:还有别的因素吗? 答:还有一个隐蔽的因素是从机地址。单总线设备有 64 位 ROM 码,主机用 ROM 码寻址。如果地址读取出错,或者有两片从机 ROM 码读取冲突,主机就会"找不到设备",表现就是超时和读不到。
部分文件列表
| 文件名 | 大小 |
| 单总线温度采集深入剖析.docx | 39K |
最新上传
-
zhongshaoxiong 打赏3.00元 3天前
-
他山之石可攻玉 打赏60.00元 3天前
用户:烟雨
-
江岚 打赏210.00元 3天前
用户:潇潇江南
-
江岚 打赏100.00元 3天前
-
21ic下载 打赏310.00元 3天前
用户:gsy幸运
-
21ic下载 打赏310.00元 3天前
用户:zhengdai
-
21ic下载 打赏310.00元 3天前
用户:江岚
-
21ic下载 打赏210.00元 3天前
用户:潇潇江南
-
21ic下载 打赏60.00元 3天前
用户:他山之石可攻玉
-
21ic下载 打赏60.00元 3天前
用户:烟雨
-
21ic下载 打赏60.00元 3天前
用户:w178191520
-
21ic下载 打赏60.00元 3天前
用户:w993263495
-
21ic下载 打赏110.00元 3天前
用户:xzxbybd
-
21ic下载 打赏60.00元 3天前
用户:zq_1943
-
21ic下载 打赏20.00元 3天前
用户:kk1957135547
-
21ic下载 打赏20.00元 3天前
用户:sun2152
-
21ic下载 打赏20.00元 3天前
用户:铁蛋锅
-
21ic下载 打赏20.00元 3天前
用户:xuzhen1
-
21ic下载 打赏20.00元 3天前
用户:w1966891335
-
21ic下载 打赏35.00元 3天前
用户:有理想666
-
21ic下载 打赏15.00元 3天前
用户:nuaanuaa111
-
21ic下载 打赏20.00元 3天前
用户:liqiang9090
-
21ic下载 打赏15.00元 3天前
用户:ningmengge
-
21ic下载 打赏10.00元 3天前
用户:mulanhk
-
21ic下载 打赏5.00元 3天前
用户:asys
-
21ic下载 打赏10.00元 3天前
用户:舞蹈荀彧
-
21ic小能手 打赏5.00元 3天前
资料:磁编码器开源方案
-
21ic小能手 打赏5.00元 3天前
-
21ic小能手 打赏5.00元 3天前
-
江岚 打赏20.00元 3天前
-
江岚 打赏50.00元 3天前
-
江岚 打赏20.00元 3天前
-
江岚 打赏10.00元 3天前
-
21ic小能手 打赏10.00元 3天前
-
21ic小能手 打赏8.00元 3天前
-
21ic小能手 打赏8.00元 3天前
-
21ic小能手 打赏5.00元 3天前
-
21ic小能手 打赏3.00元 3天前
-
tangyu1 打赏1.00元 3天前
-
jjjjkkkkk 打赏1.00元 3天前




全部评论(0)