接觸18B20有3年了,沒有好好利用,只是簡單的溫度轉換利用,今天就我個人看法說說
1、溫度上下限
溫度上下限(TH,TL)值緊跟著溫度兩字節后,就是我們習慣說的3,4字節,有些資料說是2,3字節也對(0位也算上就是0,1,2,3),
讀取這兩位上下限字節很簡單,和溫度字節一塊讀出就行,重要的是說保存到內部E2PROM的問題,先寫命令48H(復制3,4字節到E2PROM中去)然后跟著寫兩字節數據完成,
2,轉換精度
我們拿到手的新18B20都是12位的精度,我個人認為沒必要設計0.0625°的那么精確,這18B20芯片最高精度就是0.5°,多此一舉嘛,另外12位轉換時間還長750ms,不如9位精度來的實在,轉換也快。說正題了,第五字節就是轉換精度設置字節,讀出和溫度一樣讀出就行了。同樣第5位也能E2PROM永久保存,先寫命令48H(復制3,4字節到E2PROM中去)然后跟著寫3字節數據完成,
3,查詢報警0ECH,
這搜索命令是針對懸掛多個18B20設計的,我就掛一個沒用這命令,超過上下限溫度設定值后,18B20發出報警,單片機發出0ECH命令,報警的18B20就會反饋自己的序列號,沒有超出設定范圍的,不回應單片機,就這么簡單,
|