標(biāo)題:
怎么使用ds18b20的告警搜索指令0ECH,能寫一簡單c程序嗎
[打印本頁]
作者:
安裝阿斯
時間:
2015-3-19 21:54
標(biāo)題:
怎么使用ds18b20的告警搜索指令0ECH,能寫一簡單c程序嗎
怎么使用ds18b20的告警搜索指令0ECH,能寫一簡單c程嗎
作者:
jiajiamei
時間:
2015-3-20 05:08
個人理解:
告警設(shè)置溫度的上下限,每次溫度轉(zhuǎn)換結(jié)束后,DS18B20自動將測得的結(jié)果跟告警值進(jìn)行比較。如果超過告警值,那么當(dāng)主機(jī)發(fā)出告警搜素指令的時候,該DS18B20就會響應(yīng),如果沒有超過告警值,就不響應(yīng)該指令。
這樣就可以對多點(diǎn)測溫系統(tǒng)的溫度情況進(jìn)行檢測和設(shè)置,比如共有6個測溫點(diǎn),設(shè)置告警值為30度,如果1,3,5這三個點(diǎn)的溫度超過告警值時,當(dāng)主機(jī)發(fā)出告警搜素指令后,1,3,5就會發(fā)出響應(yīng)指令,而2,4,6不會對該指令響應(yīng)
系統(tǒng)正常工作時,在啟動所有的DS18B20作溫度轉(zhuǎn)換后,可以使用報警搜索命令ECH,發(fā)現(xiàn)溫度值高于TH或低于TL的數(shù)值時,則讀取報警的DS18B20的ROM代碼,這樣就可以判斷出是那些點(diǎn)告警了
作者:
manaibi
時間:
2022-5-8 13:12
Reset(); Write_BYTE(0xec); //告警搜索 HL=Read_BIT(); if(HL==0)Alarm=1; //為0表示有告警,開啟蜂鳴器 else Alarm=0; //沒有告警,關(guān)閉蜂鳴器
作者:
manaibi
時間:
2022-5-8 13:12
Reset();
Write_BYTE(0xec); //告警搜索
HL=Read_BIT();
if(HL==0)Alarm=1; //為0表示有告警,開啟蜂鳴器
else Alarm=0; //沒有告警,關(guān)閉蜂鳴器
作者:
wufa1986
時間:
2022-5-9 10:48
不要用這些功能,沒什么用,直接度溫度,自己程序判斷
作者:
univers
時間:
2022-5-10 17:21
我覺得兩種方法都可以。最好還是要多判斷一兩次,怕誤判出錯。
歡迎光臨 (http://www.torrancerestoration.com/bbs/)
Powered by Discuz! X3.1