寄生電源:
從電源的框圖中可以看出,電路從DQ和VDD為高電平時“偷取”能量,當特定的時間和電壓適合時,DQ可以給電路提供充足的能量。寄生電源的優勢有二:無需提供遙遠的電源;在缺少正常供電時,可以讀取ROM.為了使芯片能夠精確的對溫度進行轉換,當轉換溫度時確保供電充足。值得重視的是,如果運行電流到達1.5mA,由于5K的上拉電阻,DQ不能得到足夠的能量,這對單總線上連接多個芯片同時進行轉換是很不利的。這里有兩種方法確保溫度轉換時有足夠的能量,第一種方法是無論什么時候轉換溫度或者從EEPROM拷貝數據給DQ提供一個強上拉電阻,這種方法可以通過使用一個場效應管上拉DQ線直接提供能量,如下圖所示:
在這里值得注意的是DQ線必須在發出命令10us內完成上拉操作,當使用這種模式的時候,確保VDD接地。
另外一種提供電流的方式是通過使用VDD引腳連接一個外部電源,如下圖所示,這樣連接的優勢是DQ上不需要連接一個強上拉,并且總線控制主機不需要在溫度轉換的時候總保持高電平,這樣使得在轉換的時間內單線上可以有其他的數據通過。此外,任何DS18B20的序列都可以掛在單線上,如果都需要使用外部電源,可以同時通過執行“跳過ROM”和執行溫度轉換命令來進行溫度轉換,注意當外部電源激活時,GND必須接地。
在溫度達到100度時,寄生電源的方式不推薦使用,因為提供過高的漏電電流使得正常通信不能維持。應用這種高溫時強烈推薦VDD連接DS18B20。
環境有時候不知道控制主機知道哪里DS18B20芯片使用了寄生電源或者使用外部的VDD,這里可以通過電源信號來實現,也是就總線控制主機通過發送“跳過ROM”命令,然后發送讀取的命令,然后讀取時間點,此時如果芯片發送“0”回總線表示使用的是寄生電源方式,發送“1”表示通過VDD提供能量,如果主機收到“0”就知道必須在轉換溫度時給DQ提供強上拉,其他的存儲器控制命令可以參看命令協議中詳情。
操作:溫度測量
DS18B20的核心功能是指示數字的溫度傳感器,其方案可以由用戶設置(9,10,11,12位),默認情況使用12位。這相當于現實不同的精度。通過溫度轉換命令執行操作后溫度數據被保存在16位高速緩存中,信號分為兩種不同的格式保存,通過執行讀緩存的命令返回采集到的溫度。傳送時最低有效位LSB優先,最高加權位包含了標識溫度正負的“s”位。
左邊的圖描述了輸出數據的格式,在這里使用12bit,如果想設置為更低位解決方案,可以在空位處補零。如果采用華氏溫度顯示,則需要查找表或者是查找路徑。
操作:警示信號
溫度轉換完成后,溫度將和TH與TL進行比較,如果不在這個范圍之內則會返回一個警示標志。允許多芯片同時并行驚醒溫度測量,如果某處芯片超出了此范圍,此芯片可以被辨別出并立即讀取沒有別警示的芯片。
64位激光ROM:
每一片芯片提供了一個特定的系列號,前8位為DS18B20的家族系列,后面48位表征不同的芯片系列。在通過單線對芯片進行配置后,放可以執行下面的操作。