1-Wire 總線使用單線提供電源和信號??偩€在開漏環(huán)境中運行;因此需要一個上拉電阻。該總線還在 2.0 V-5.5 V 范圍內(nèi)運行。通信是異步的、半雙工的,并嚴格遵循主從方案??偩€上只能連接一個主設(shè)備,以及一個或多個從設(shè)備。每個至少 60 μs 的時間段內(nèi)只能在總線上傳輸一個數(shù)據(jù)位。
復(fù)位和存在信號
當(dāng)發(fā)出復(fù)位信號時,主機將總線拉低至少 480 μs。如果存在從站,則主站將收到響應(yīng)。這個響應(yīng)稱為存在信號,它發(fā)生在總線被從設(shè)備拉低 60 μs 后,在主設(shè)備釋放總線后。如果主機沒有接收到存在信號,主機將假定總線上沒有設(shè)備/從機。
圖 1 復(fù)位和存在時序圖
使用 UART 生成信號
當(dāng)使用 Zilog 的 Z8051 MCU 上的 UART 模塊生成時,需要將發(fā)送器 (TXD) 和接收器 (RXD) 連接到 1-Wire 總線。此外,需要一個外部集電極開路或漏極開路緩沖器,以允許從設(shè)備在 UART 輸出為高電平時將總線拉低。圖 2 顯示了一個由分立元件組成的示例緩沖器。
圖 2 集電極開路緩沖器電路示例
UART 配置
UART 模塊與 1-Wire 從設(shè)備通信,需要配置為讀寫 8 個數(shù)據(jù)位、無極性、1 個停止位的數(shù)據(jù)格式;使用兩種波特率,9 600 bps 和 115 200 bps。Zilog 建議使用 11.0592 MHz 晶體振蕩器作為系統(tǒng)時鐘,以在 115 200 波特率下實現(xiàn)數(shù)據(jù)傳輸?shù)牧阏`差。
硬件實現(xiàn)
本節(jié)討論 Z8051 MCU 和 1-Wire 從設(shè)備之間的物理接口,以及如何配置和編程 Z8051 MCU 以通過具有三個從設(shè)備的 1-Wire 總線有效地讀寫數(shù)據(jù)。
如下圖所示,TXD1連接到由電阻和NPN晶體管組成的集電極開路緩沖電路。當(dāng) UART 處于空閑狀態(tài)時,該電路使從設(shè)備能夠?qū)⒕€路拉低。
圖 3 MCU 與從機連接
在理想情況下,1-Wire 器件將在單條總線上獲得電源和數(shù)據(jù)。然而,一些器件需要額外的電流,這可能會導(dǎo)致弱 1-Wire 上拉電阻上出現(xiàn)不可接受的壓降,或者需要更多的電流可以由總線提供。為此,DS18S20 和 DS2417 從器件由外部電壓電源供電,而 DS24B33 從器件是唯一由 1-Wire 總線供電的器件。1-Wire 總線中的電流足以在讀和寫操作期間為 DS24B33 從器件上電。
本文檔討論了使用 Zilog 的 Z8051 微控制器實現(xiàn)具有多個從設(shè)備的 1-Wire 接口。這些從機 DS18S20、DS2417 和 DS24B33 器件都是 Dallas Semiconductor 的產(chǎn)品。1-Wire 實現(xiàn)的成功之處在于,高達位級的數(shù)據(jù)傳輸通過了 1-Wire 協(xié)議的時序要求。
資料來源: Zilog、DS18S20、DS2417
編輯:hfy
-
上拉電阻
+關(guān)注
關(guān)注
5文章
366瀏覽量
31451 -
緩沖器
+關(guān)注
關(guān)注
6文章
2168瀏覽量
48170 -
uart
+關(guān)注
關(guān)注
22文章
1286瀏覽量
105489
發(fā)布評論請先 登錄
微控制器和1-Wire溫度傳感器的軟件接口
性能優(yōu)異的1-Wire網(wǎng)絡(luò)驅(qū)動器

嵌入1-Wire主機

嵌入1-Wire主機

1-Wire器件與8051系列單片機的軟件接口

MAXQ1004 1-Wire和SPI認證微控制器
美信推出DS2482-100單通道1-Wire主控制器

實時時鐘為微控制器系統(tǒng)增加了精確的計時功能

DS18X20/DS1822 1-Wire溫度傳感器在微控制器環(huán)境中的接口

DS2760 1-Wire高精度鋰離子電池監(jiān)視和保護IC在微控制器環(huán)境中的接口
DS2760 1-Wire高精度鋰離子電池監(jiān)視和保護IC在微控制器環(huán)境中的接口
如何配置微芯片PICmicro以實現(xiàn)1-Wire通信協(xié)議

使用UART實現(xiàn)1-Wire總線主控

評論