找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

帖子
查看: 4658|回復(fù): 6
收起左側(cè)

用示波器人工解碼DS18B20協(xié)議時序。

  [復(fù)制鏈接]
ID:126173 發(fā)表于 2020-7-18 15:49 | 顯示全部樓層 |閱讀模式
本帖最后由 湖南孵化 于 2020-7-18 16:05 編輯

最近得空,用普通的示波器,采用人工的方式對DS18B20的協(xié)議進(jìn)行了解碼。詳細(xì)內(nèi)容如下:
一:示波器抓取DS18B20工作時的波形。
DS18B20.jpg
二:單片機對DS18B20發(fā)出溫度轉(zhuǎn)換指令時的波形。

MCU發(fā)出溫度轉(zhuǎn)換指令時的波形

MCU發(fā)出溫度轉(zhuǎn)換指令時的波形


圖二為溫度轉(zhuǎn)換操作:
1,首先按照DS18B20的時序,拉低總線480-960微秒進(jìn)行復(fù)位,然后檢測DS18B20發(fā)出的60-240微秒的應(yīng)答脈沖,
2,我的PCB上只有一個DS18B20,所以跳過ROM,指令為CCH(16進(jìn)制數(shù),二進(jìn)制碼為11001100,按照操作協(xié)議要求單片機應(yīng)以低字節(jié)在前高字節(jié)在后的方式在單總線上發(fā)出數(shù)據(jù):00110011)。
3,發(fā)出溫度轉(zhuǎn)換指令44H(16進(jìn)制數(shù),二進(jìn)制碼為01000100,按照操作協(xié)議要求單片機應(yīng)以低字節(jié)在前高字節(jié)在后的方式在單總線上發(fā)出數(shù)據(jù):00100010)
4,  延時960MS


三:單片機進(jìn)行讀溫度數(shù)據(jù)操作時的波形。
DS18B20讀取溫度.jpg


圖三為讀溫度操作:
1,首先按照DS18B20的時序,拉低總線480-960微秒進(jìn)行復(fù)位,然后檢測DS18B20發(fā)出的60-240微秒的應(yīng)答脈沖,
2,我的PCB上只有一個DS18B20,所以跳過ROM,指令為CCH(16進(jìn)制數(shù),二進(jìn)制碼為11001100,按照操作協(xié)議要求單片機應(yīng)以低字節(jié)在前高字節(jié)在后的方式在單總線上發(fā)出數(shù)據(jù):00110011)。

3,發(fā)出讀溫度指令BEH(16進(jìn)制數(shù),二進(jìn)制碼為10111110,按照操作協(xié)議要求單片機應(yīng)以低字節(jié)在前高字節(jié)在后的方式在單總線上發(fā)出數(shù)據(jù):01111101)
4,讀取DS18B20發(fā)送的溫度數(shù)據(jù),該數(shù)據(jù)也是按照低位在前高位在后的順序在單總線上發(fā)送的,實時數(shù)據(jù)為01001111,10000000轉(zhuǎn)換為高位在前低位在后的真實數(shù)據(jù):00000001,11110010,高位8字節(jié)數(shù)據(jù)的前5位為溫度正負(fù)符號位,正溫度(一般指0溫度以上)為00000,負(fù)溫度(一般指0溫度以下)為11111,將我的時實溫度進(jìn)行換算,高位00000001與低位11110010合并后為0000000111110010,轉(zhuǎn)換成十六進(jìn)制數(shù)為1F2,轉(zhuǎn)換成十進(jìn)制數(shù)為498,實時溫度為498X0.0625=31.125度。我的溫度轉(zhuǎn)換位數(shù)用的是默認(rèn)的。
好了,終于得到溫度了,
  結(jié)束!

DS18B20工作時的整體波形

DS18B20工作時的整體波形

評分

參與人數(shù) 1黑幣 +90 收起 理由
admin + 90 共享資料的黑幣獎勵!

查看全部評分

回復(fù)

使用道具 舉報

ID:663843 發(fā)表于 2022-2-11 15:11 | 顯示全部樓層
民間不乏高手
回復(fù)

使用道具 舉報

ID:1017814 發(fā)表于 2022-4-16 14:26 | 顯示全部樓層
示波器是高手
回復(fù)

使用道具 舉報

ID:1047240 發(fā)表于 2022-12-10 02:50 | 顯示全部樓層
我還沒有了解的那么清楚,前部分問的是這個吧,但是因為我還沒有了解所以看不太懂。協(xié)議是自定義的是吧?0中間那個尖波是反饋?有沒有反饋這些我都沒有了解清楚
回復(fù)

使用道具 舉報

ID:1047240 發(fā)表于 2022-12-10 02:50 | 顯示全部樓層

我還沒有買
回復(fù)

使用道具 舉報

ID:401598 發(fā)表于 2022-12-12 08:50 | 顯示全部樓層
謝謝分享時序分析。
回復(fù)

使用道具 舉報

ID:149799 發(fā)表于 2022-12-15 20:52 | 顯示全部樓層
高手,講解的很好,謝謝分享經(jīng)驗。
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復(fù) 返回頂部 返回列表