1-WIRE總線(xiàn)詳解

1-WIRE有四種數據包:
1.Reset:每個(gè)通訊周期都是由Reset訊號開(kāi)始。Master會(huì )先發(fā)送Reset Pulse讓所有在1-WIRE上的Slave裝置進(jìn)入辨別狀態(tài),當一個(gè)Slave或很多個(gè)Slave接收到Reset Pulse訊號之后,Slave會(huì )回傳一個(gè)Presence Pulse訊號,用來(lái)表示接收到。
2.Write 0:發(fā)送一個(gè)“0”bit給Slave(Write 0 time slot)。
3.Write 1:發(fā)送一個(gè)“1”bit給Slave(Write 1 time slot)。
4.Read Da ta:Read Da ta Sequences很像Write 1 Time Slot,但是在Master釋放總線(xiàn)線(xiàn)并且從Slave裝置讀回數據后,Master會(huì )取樣Bus的狀態(tài),透過(guò)這種方法Master可以從Slave讀回任何0或1的bit。
2.Write 0:發(fā)送一個(gè)“0”bit給Slave(Write 0 time slot)。
3.Write 1:發(fā)送一個(gè)“1”bit給Slave(Write 1 time slot)。
4.Read Da
Reset:一開(kāi)始Master要跟Slave做任何通訊時(shí),Master會(huì )先傳送一個(gè)低準位的Reset Pulse(TX)of(標準速度:480us;高速:48us)的一段時(shí)間。接著(zhù)Master會(huì )釋放出總線(xiàn)線(xiàn)并進(jìn)入接收模式(RX),1-WIRE Bus會(huì )透過(guò)上拉電阻將準位拉回High狀態(tài)。然后Master在Da ta Line上會(huì )偵測到Rising Edge,此時(shí)任何一個(gè)Slave會(huì )等待一段時(shí)間()(標準速度:15-60us;高速:2-6us)并且傳回一個(gè)Presence Pulse()(標準速度:60-240us;高速:8-24us)給Master。最后1-Wire Bus又會(huì )透過(guò)上拉電阻將準位拉回High狀態(tài)。在此同時(shí)Master可以偵測到在線(xiàn)的任何Slave。(6) 由下圖可以清楚的看到低準位的Reset Pulse和Presence Pulse訊號。

Write Da ta:Write Da ta的初始化條件是當Master將Da ta Line由高邏輯準位轉換到低邏輯準位時(shí)。而Write Time Slot有兩種形式:Write 1 Time Slot和Write 0 Time Slot。在一個(gè)Write Cycle所有的Write Time Tlot至少必須有60us的持續時(shí)間和1us的恢復時(shí)間。在I/O Line下垂之后,Slave裝置會(huì )在15到60us中間取樣。

Read Da ta:當Da ta從Slave被讀取時(shí),則Master會(huì )產(chǎn)生一個(gè)Read Time Slot。Read Da ta的初始化條件是當Master將Da ta Line由高邏輯準位轉換到低邏輯準位時(shí)。Da ta Line保持Low至少必須1us。Slave的Output Da ta最多只能有14us。Master為了讀取從Read Slot開(kāi)始15us的狀態(tài),因此必須停止Driving I/O。在Read Time Slot結束時(shí),I/O Pin將會(huì )透過(guò)外部的拉升電阻拉回為High的準位。在一個(gè)單獨的Read Time Slot至少必須有60us的持續時(shí)間和1us的恢復時(shí)間。

評論