【正文】
Wire bus if it is parasite powered。由于每個 DS18B20 的包含一個唯一的序列號,因此任意多個 DSl820 可以存放在同一條單線總線上 。器件從單線的通信線上取得其電源,在信號線為高電平的時間周期內,把能量貯存在內部的電容器中,在單信號線為低電平 的時間期內斷開此電源,直到信號線變?yōu)楦唠娖街匦陆由霞纳娙蓦娫礊橹?。主機必須首先提供五種 ROM 操作命令之一: 1) Read ROM(讀 ROM), 2) Match ROM(符合 ROM), 3) Search ROM(搜索 ROM), 4) Skip ROM(跳過 ROM),或 5) Alarm Search(告警搜索 )。 一個控制操作命令指示 DS1820 完成溫度測量。對這些寄存器的訪問是通過高速暫存存儲器,所有數據均以最低有效位在前的方式被讀寫 。因為 DS1820的工作電流高達 1mA, 5K 的上拉電阻將使 I/O 線沒有足夠的驅動能力。 向 DS1820 供電的另外一種方法是通過使用連接到 VDD 引腳的外部電源,這種方法的優(yōu)點是在 I/O 線上不要求強的上拉電阻,總線上主機不需向上連接便在溫度變換期間使線保持高電平,這就允許在變換時間內其它數據在單線上傳送??偩€上主機通過發(fā)出跳過( Skip) ROM 的操作約定,然后發(fā)出讀電源命令,可以決定是否有需要在 DS1820 的總線上放置上拉電阻。 DS1820 有一存貯在 64 位 ROM 的最高有效字節(jié)內的 8 位 CRC。 總線 CRC 可以使用一個移位寄存器和 “異或 ”( XOR)門組成的多項式產生器來產生,其它有關 Dallas 公司單線循環(huán)冗余校驗的信息可參見標題為 “理解和使用 Dallas 半導體公司接觸式存貯器產品 ”的應用注釋移。移入 CRC的 8 位應該使移位寄存器返回至全零。這一過程確保了更改存貯器的時候保持數據的完整性。暫存存貯器有助于在單線通信 6 時確保數據的完整性,數據首先寫入暫存存貯器,在那里它可以被讀回。當產品系列編碼的 8 位移入以后,接著移入序列號。 CRC 的等效多項式函數為: 1458 ???? XXXC RC DS1820 也利用與上述相同的多項式函數產生一個 8 位 CRC值并把此值提供給總線的主機以確認數據字 節(jié)的傳送,在使用 CRC來確認數據傳送的每一種情況中,總線主機必須使用上面給出的多項式函數計算 CRC的值并把計算所得的值,或者與存貯在 DS1820的 64位ROM部分中的 8位 CRC值( ROM讀數),或者與 DS1820 中計算得到的 8位 CRC值(在讀暫存存貯器中時它作,為第九個字節(jié)被讀出),進行比較。如果是寄生供電, DS1820 將在單線總線上送回( 0);如果由 VDD 引腳供電,它將送回( 1)。注意只要外部電源處于工作狀態(tài), GND(地)引腳不可懸空。 5 有兩種方法確保 DS1820 在其有效變換期內得到足夠的電源電流。只要符合指定的定時和電壓要求, I/O 將提供足夠的功率,寄生電源的優(yōu)點是雙重的: 1)利用此引腳,遠程溫度檢測無需本地電源, 2)缺少正常電源條件下也可以讀 ROM。通過發(fā)出讀暫存存儲器內容的存儲器操作命令可以讀出此結果。如果在單線上有許多器件,那么可以挑選出一個特定的器件,并給總線上的主機指示存在多少器件及其類型。 與 DS1820 的通信經過一個單線接口。此功能可應用的地方包括空調環(huán)境控制,建筑物內的溫度感應,設備或機器的過程監(jiān)控和控制。信息經過單線接口送入DSl820 或從 DSl820 送出因此 從主機 CPU 到 DSl820 僅需一條線 (和地線 )。 it will send back a “1” if it is powered from the VDD pin. If the master receives a “0,” it knows that it must supply the strong pull up on the DQ line during temperature conversions. See “Memory Command 3 Functions” section for more detail on this mand protocol. The DS18B20 has an 8bit CRC stored in the most significant byte of the 64bit ROM. The bus master can pute a CRC value from the first 56bits of the 64bit ROM and pare it to the value stored within the DS18B20 to determine if the ROM data has been received errorfree by the bus master. The equivalent polynomial function of this CRC is: 1458 ???? XXXC RC The DS18B20 also generates an 8bi