為嵌入式應(yīng)用選擇合適的1-Wire®主機(jī)
摘要:本應(yīng)用筆記介紹了嵌入式應(yīng)用中的四類1-Wire主機(jī)電路,并討論了它們與備用(即未用)系統(tǒng)資源相關(guān)的性能與要求。文中給出的電路適用于半徑不超過1米,只掛接少量1-Wire從器件的小型網(wǎng)絡(luò)。文章還介紹了針對(duì)具體應(yīng)用尋找最具性價(jià)比的1-Wire主機(jī)的指令和決策表。這里假設(shè)讀者熟悉1-Wire通信和微控制器的基本知識(shí)。
本文引用地址:http://www.ex-cimer.com/article/148535.htm引言
1-Wire總線是一個(gè)簡(jiǎn)單的信號(hào)傳輸電路,可通過一根共用的數(shù)據(jù)線實(shí)現(xiàn)主控制器與一個(gè)或一個(gè)以上從器件之間的半雙工雙向通信。電源和數(shù)據(jù)通信通過單根數(shù)據(jù)線傳輸,使得1-Wire器件具有無與倫比的強(qiáng)大功能,可減少系統(tǒng)間的互聯(lián)。1-Wire器件通過受專利保護(hù)的單觸點(diǎn)串行接口提供存儲(chǔ)器、混合信號(hào)和安全認(rèn)證功能。1-Wire器件的典型應(yīng)用如下:打印墨盒或醫(yī)療消耗品的識(shí)別;機(jī)架卡的校準(zhǔn)和控制;印刷電路板、配件及外設(shè)的識(shí)別和認(rèn)證;知識(shí)產(chǎn)權(quán)保護(hù)、防克隆、安全功能控制。
采用1-Wire技術(shù)時(shí),需要通過1-Wire主機(jī)發(fā)送信號(hào)來識(shí)別總線上的器件并與它們通信。構(gòu)建一個(gè)1-Wire主機(jī)有很多方法。本文討論了嵌入式應(yīng)用的主機(jī),包括半徑不超過1米且1-Wire從器件數(shù)目不超過三至五的小型網(wǎng)絡(luò)。設(shè)計(jì)1-Wire大型網(wǎng)絡(luò)或從器件數(shù)目較多時(shí),可參考應(yīng)用筆記148:1-Wire網(wǎng)絡(luò)可靠設(shè)計(jì)指南。
1-Wire術(shù)語
首先解釋幾個(gè)1-Wire文檔中常見的術(shù)語。
主機(jī)接口
本文討論的電路為1-Wire主機(jī)控制器,它們均與1-Wire從器件通信。但是,這些1-Wire主機(jī)控制器不能作為單獨(dú)的主體,需要一個(gè)主機(jī)(計(jì)算機(jī))告訴它們?cè)?-Wire側(cè)如何工作。主機(jī)接口指1-Wire主控制器和“系統(tǒng)中更高級(jí)的指揮官” (即主機(jī))之間的連接類型。
工作電壓
通常情況下,1-Wire器件的工作電壓范圍為2.8V (最小值)至5.25V (最大值)。多數(shù)1-Wire器件沒有電源引腳。因此,這種器件以寄生供電的方式從1-Wire通信線路獲取電源。工作電壓和1-Wire上拉電壓實(shí)際上是同義詞。工作(上拉)電壓越高,1-Wire器件所得到的功率就越大。電壓越高,網(wǎng)絡(luò)中可以掛接的1-Wire從器件也越多,時(shí)隙之間的恢復(fù)時(shí)間也越短。
強(qiáng)上拉
強(qiáng)上拉是指一種在時(shí)隙之間向1-Wire網(wǎng)絡(luò)提供額外電源的方法。需要額外電源的部件如下:EEPROM器件(當(dāng)把數(shù)據(jù)從緩沖區(qū)復(fù)制到EEPROM單元時(shí));安全存儲(chǔ)器(當(dāng)SHA-1引擎運(yùn)行時(shí));1-Wire溫度傳感器(在溫度轉(zhuǎn)換期間)。當(dāng)這些1-Wire器件用于3V電壓供電時(shí),強(qiáng)上拉是必需的;同樣的1-Wire從器件處于5V環(huán)境中時(shí),強(qiáng)上拉則是可選的。
1-Wire時(shí)序
下面介紹1-Wire時(shí)隙和復(fù)位/應(yīng)答檢測(cè)時(shí)序波形的一般形式,以及產(chǎn)生這些波形的方法??梢圆捎锰厥獾挠布?如自帶定時(shí)發(fā)生器的芯片)或通過軟件直接產(chǎn)生波形。對(duì)于軟件開發(fā)人員來說,硬件方式比較容易,但需要另加芯片。軟件方式節(jié)省了硬件成本,但如果所選擇的微控制器沒有軟件支持,則可能會(huì)增加軟件開發(fā)和測(cè)試成本。如果應(yīng)用軟件是用高級(jí)語言編寫的,采用軟件方式時(shí)需要特別考慮。對(duì)于產(chǎn)生時(shí)隙和復(fù)位/應(yīng)答檢測(cè)時(shí)序的低級(jí)功能來說,均有必要用匯編語言編寫,這樣一來可以計(jì)算出執(zhí)行一條指令所需的時(shí)鐘周期個(gè)數(shù)。
支持高速模式
多數(shù)1-Wire從器件可以兩種速度通信:標(biāo)準(zhǔn)速度和高速模式。高速模式下的速度比標(biāo)準(zhǔn)速度約快8倍。所有1-Wire從器件均支持標(biāo)準(zhǔn)速度通信。所有2類至4類的主機(jī)(下文中提到的)均支持高速模式。1類主機(jī)是否支持高速模式取決于微控制器性能(時(shí)鐘速率,每指令周期所需時(shí)鐘周期個(gè)數(shù))。
有源上拉
1-Wire總線或網(wǎng)絡(luò)是一個(gè)開漏環(huán)境,0V (邏輯0)為有效狀態(tài)??臻e時(shí),總線通過一個(gè)電阻拉高到上拉電壓(電阻上拉)。因此,下降沿是陡峭的;上升沿由于電阻和寄生電源的作用相當(dāng)平緩。有源上拉是指一種測(cè)試上升沿的方法,如果已經(jīng)超過規(guī)定門限,通過低阻通道在有限的時(shí)間內(nèi)旁路上拉電阻。小型網(wǎng)絡(luò)或只有一個(gè)從器件的網(wǎng)絡(luò)一般不需要有源上拉。如果帶有源上拉,1-Wire總線再充電的速度比電阻上拉快得多,因此,網(wǎng)絡(luò)中支持多個(gè)1-Wire從器件時(shí),無需延長(zhǎng)時(shí)隙之間的恢復(fù)時(shí)間。各種1-Wire主機(jī)的旁路上拉強(qiáng)度(阻抗)和控制有源上拉時(shí)間的方法有所不同。
1-Wire主機(jī)電路
下面詳細(xì)討論不同的主機(jī)電路。電路分為以下四類:
微處理器端口-引腳連接
內(nèi)置1-Wire主機(jī)的微控制器
合成的1-Wire總線主機(jī)
串行接口協(xié)議轉(zhuǎn)換
每個(gè)分類介紹了一個(gè)或多個(gè)電路。給出了電路原理圖,列出了前提條件,衡量了優(yōu)缺點(diǎn),給出了注意事項(xiàng)、建議閱讀的參考文檔和支持軟件網(wǎng)址。
1類. 微處理器端口-引腳連接
圖1為最基本的1-Wire主機(jī)。
電路的唯一先決條件是需要一個(gè)備用雙向端口及一定的程序存儲(chǔ)器空間。電路的優(yōu)點(diǎn)在于它的額外硬件成本極低,僅需一個(gè)上拉電阻。缺點(diǎn)在于,1-Wire時(shí)序通過軟件產(chǎn)生,增加了前期軟件開發(fā)的時(shí)間和成本。根據(jù)應(yīng)用中1-Wire從器件數(shù)目和1-Wire上拉電壓,需要其它端口引腳來實(shí)現(xiàn)強(qiáng)上拉。1-Wire總線最高工作電壓取決于雙向端口特性(最好具有5V容限)。1-Wire總線上掛接多個(gè)從器件時(shí),RPUP值應(yīng)取低一些。如果那樣的話檢查VOLmax是否與1-Wire從器件和微處理器端口的輸入特性兼容。高速通信模式要求微處理器具備高時(shí)鐘頻率和/或較低的每指令周期時(shí)鐘數(shù)。更多信息,請(qǐng)參閱應(yīng)用筆記3829:確定多從機(jī)1-Wire網(wǎng)絡(luò)的恢復(fù)時(shí)間和應(yīng)用筆記126:用軟件實(shí)現(xiàn)1-Wire通信。應(yīng)用軟件示例見1-Wire Public Domain Kit。
圖1. 帶可選強(qiáng)上拉電路(虛線部分)的雙向端口引腳
圖2給出與圖1類似的另一種基本電路。
圖2電路的先決條件是需要兩個(gè)備用單向端口、下拉晶體管及一定的程序存儲(chǔ)器空間。電路的優(yōu)點(diǎn)是不需要雙向端口。缺點(diǎn)在于,1-Wire時(shí)序通過軟件產(chǎn)生,增加了前期軟件開發(fā)的時(shí)間和成本。根據(jù)應(yīng)用中1-Wire從器件和1-Wire上拉電壓,有時(shí)需要其它端口引腳提供強(qiáng)上拉。1-Wire總線最高工作電壓取決于雙向端口特性(最好具有5V容限)。1-Wire總線上掛接多個(gè)從器件時(shí),RPUP值應(yīng)取低一些。此時(shí),應(yīng)檢查VOLmax是否與1-Wire從器件和微處理器端口的輸入特性兼容。高速通信模式要求微處理器具備較高的時(shí)鐘頻率和/或較低的每指令周期時(shí)鐘數(shù)。更多信息請(qǐng)參閱應(yīng)用筆記3829:確定多從機(jī)1-Wire網(wǎng)絡(luò)的恢復(fù)時(shí)間和應(yīng)用筆記126:用軟件實(shí)現(xiàn)1-Wire通信。應(yīng)用軟件示例見1-Wire Public Domain Kit。
linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)
評(píng)論