1,對單總線通信的認識
- 定義:主機和從機通過1根線進行通信,在一條總線上可掛接的從器件數量幾乎不受限制。
- 特點:這是由達拉斯半導體公司推出的一項通信技術。它採用單根信號線,既可傳輸時鐘,又能傳輸數據,而且數據傳輸是雙向的。
- 優點:單總線技術具有線路簡單,硬件開銷少,成本低廉,便於總線擴展和維護等。
2,硬件結構
1-Wire 協議採用傳統邏輯電平即CMOS/TTL 電 平,其電源電壓VDD 工作範圍爲2.8V~6V。主機和從機兩者都配有收發器,數據按位序列雙向傳輸。單總線要求外接一個約4.7k 的上拉電阻,總線在閒置狀態時爲高電平,爲從機設備提供電源。不管什麼原因, 如果傳輸過程需要暫時掛起,且要求傳輸過程還能夠繼續的話,總線必須處於空閒狀態。
位傳輸之間的恢復時間沒有限制,只要求總線在恢復期間處於空閒 狀態(高電平)。如果總線保持低電平超過480ms,總線上的所有器件將復位。另外,在寄生方式供電時, 爲了保證單總線器件,在某些工作狀態下(如溫度轉 換期間、EEPROM 寫入等)具有足夠的電源電流,必 須在總線上提供強上拉如圖 1 所示的 MOSFET。
計算機可以通過串行口從1-Wire 通訊適配器上讀回以1-Wire 總線方式工作的傳感器數據,傳輸距離爲 300m。9 針插頭與 計算機串行通訊口聯接,接線端子 DQ、G 分別接 1- Wire 器件(從機)的 DQ、GND 管腳。
3,單總線通信的過程
原理:通過高電平的長短表示不同的信號。
在沒有信號的時候一直保持高電平,當要進行信號傳輸或者接受信號時都要以一個低電平開始(以host爲視角)。
①初始化
初始化過程 = 復位脈衝 + 從機應答脈衝。
主機通過拉低單總線480 ~ 960 us產生復位脈衝,然後釋放總線,進入接收模式。主機釋放總線時,會產生低電平跳變爲高電平的上升沿,單總線器件檢測到上升沿之後,延時15 ~ 60 us,單總線器件拉低總線60 ~ 240 us來產生應答脈衝。主機接收到從機的應答脈衝說明單總線器件就緒,初始化過程完成。
初始化時序圖如下所示:
②寫操作
寫間隙有兩種,包括寫0的時間隙和寫1的時間隙。
- 寫 0:從發寫信號低電平開始,保持60微秒以上120微秒以下低信號。
- 寫1:從發寫信號低電平開始,保持至少1微秒最多15微秒的低電平,然後釋放總線或者將其變成高電平。
寫操作,當寫信號發出15微秒之後從機纔開始採樣。
寫操作時序圖:
③讀操作
讀信號:低電平1微秒。
當主機把總線拉低是,並保持至少1 us後釋放總線,必須在15 us內讀取數據。
讀操作時序圖:
3,單總線通信的應用
比如DS18B20、DHT11等都是使用的單總線協議通信。
溫度傳感器DS18B20的參考程序鏈接:http://blog.csdn.net/zhengqijun_/article/details/52515977
轉自:https://blog.csdn.net/zhengqijun_/article/details/52505931