電子百科
顧名思義,單總線只有一根數(shù)據(jù)線系統(tǒng)中的數(shù)據(jù)交換、控制都在這根線上完成。設(shè)備(主機或從機)通過一個漏極開路或三態(tài)端口連至該數(shù)據(jù)線,這樣允許設(shè)備不發(fā)送數(shù)據(jù)時釋放總線,以便其他設(shè)備使用總線,其內(nèi)部等效電路如圖2所示。
單總線要求外接一個約4.7Ω的上拉電阻,這樣當(dāng)總線閑置時,狀態(tài)為高電平。主機和從機之間的通信通過以下三個步驟完成:初始化1-wire器件,識別1-wire器件,交換數(shù)據(jù)。由于二者是主從結(jié)構(gòu),只有主機呼叫從機時,從機才能答應(yīng),因此主機訪問1-wire器件都必須嚴格遵循單總線命令序列:初始化、ROM命令、功能命令。如果出現(xiàn)序列混亂,1-wire器件不會響應(yīng)主機(搜索ROM命令,報警搜索命令除外)。
顧名思義,單總線只有一根數(shù)據(jù)線。設(shè)備(主機或從機)通過一個漏極開路或三態(tài)端口連接至該數(shù)據(jù)線,這樣允許設(shè)備在不發(fā)送數(shù)據(jù)時釋放數(shù)據(jù)總線,以便總線被其它設(shè)備所使用。單總線端口為漏極開路,其內(nèi)部等效電路如圖,1所示單總線要求外接一個約5k的上拉電阻,這樣,單總線的閑置狀態(tài)為高電平不管什么原因,如果傳輸過程需要暫時掛起,且要求傳輸過程還能夠繼續(xù)的話,則總線必須處于空閑狀態(tài),位傳輸之間的恢復(fù)時間沒有限制,只要總線在恢復(fù)期間處于空閑狀態(tài)高電平。如果總線保持低電平超過,480s總線上的所有器件將復(fù)位,另外,在寄生方式供電時,為了保證單總線器件在某些工作狀態(tài)下(如溫度轉(zhuǎn)換期間、EEPROM寫入等)具有足夠的電源電流,必須在總線上提供強上拉,如圖1所示的MOSFET
單總線適用于單個主機系統(tǒng),能夠控制一個或多個從機設(shè)備。主機可以是微控制器,從機可以是單總線器件,如圖1所示,
他們之間的數(shù)據(jù)交換只通過一條數(shù)據(jù)線。當(dāng)只有一個從機設(shè)備時系統(tǒng)可按單節(jié)點系統(tǒng)操作;當(dāng)有多個從機設(shè)備時,則系統(tǒng)按多節(jié)點系統(tǒng)操作。
所有單總線器件要求遵循嚴格的通信協(xié)議,以保證數(shù)據(jù)的完整性。1-wire協(xié)議定義了幾種信號類型:復(fù)位脈沖、答應(yīng)脈沖、寫0、寫1、讀0和讀1時序。所有的單總線命令序列(初始化、ROM命令、功能命令)都是由這些基本的信號類型組成。這些信號,除了應(yīng)答脈沖外都是由主機發(fā)出同步信號,并且發(fā)出的所有命令和數(shù)據(jù)都是字節(jié)的低位在前。初始化時序包括主機發(fā)送的復(fù)位脈沖和從機發(fā)出的應(yīng)答脈沖主機通過拉低單總線至少480us,以產(chǎn)生TX復(fù)位脈沖:然后主機釋放總線,并進入RX接收模式,當(dāng)主機釋放總線時,總線由低電平跳變?yōu)楦唠娖綍r產(chǎn)生一上升沿,單總線器件檢測到這上升沿后,延時15~60us,接著單總線器件通過拉低總線60~240us,以產(chǎn)生應(yīng)答脈沖。主機接收到從機應(yīng)答脈沖后,說明有單總線器件在線,然后主機就開始對從機進行ROM命令和功能命令操作。
寫1、寫0和讀時序。在每一個時序中,總線只能傳輸一位數(shù)據(jù)。所有的讀寫時序至少需要60us,且每兩個獨立的時序之間至少需要1us的恢復(fù)時間。讀寫時序均起始于主機拉低總線。在寫時序中,主機拉低總線后保持至少60us的低電平則向單總線器件寫0。單總線器件又在主機發(fā)發(fā)出讀時序時才向主機傳送數(shù)據(jù),所以當(dāng)主機向單總線器件發(fā)出數(shù)據(jù)命令后,必須馬上產(chǎn)生讀時序,以便單總線能傳輸數(shù)據(jù)。在主機發(fā)出讀時序之后,單總線器件才開始在總線上發(fā)送0或1,若單總線器件發(fā)送1,則保持總線高電平,若發(fā)送0,則拉低總線。單總線器件發(fā)送之后,保持有效時間,因而,主機在讀時序期間必須釋放總線,并且必須在15us之中采樣總線狀態(tài),從而接收到從機發(fā)送的數(shù)據(jù)。