溫度傳感器DSl8B20在Proteus中的仿真
2.2 讀溫度主要使用的命令
讀溫度主要使用的命令如表1所列。本文引用地址:http://m.butianyuan.cn/article/162859.htm
3 測溫的實現(xiàn)及在PrOteus中的仿真
3.1 測溫的實現(xiàn)
整個讀取溫度步驟具體如下:
若還要讀其他芯片的溫度,則從②~⑤開始循環(huán)。其中,reset()為調(diào)用初始化子程序;send_com()為機向從機發(fā)送1字節(jié)的子程序;send_num()為主機向從機發(fā)送64位器件序列號的子程序;delay()為延時子程序;check()為主機判斷所有從機的溫度是否全部讀取完畢的子程序。
3.2 Proteus仿真
在Proteus中使用多個DSl8B20時,必須改變器件的屬性,使仿真中每個器件的序列號各不相同。具體作法是:右擊DSl8B20,選中Edit Properties選項,在其中改變ROM Serial Numbet的值;還可改變Granularity的數(shù)值,即改變每次調(diào)整溫度的額度。在Proteus中,可以人為改變3個字節(jié)的器件序列號。要想得到全部8個字節(jié),一個簡單的方法就是每一次總線上只連接一個器件,利用Ox33讀器件序列號的命令在程序中得到完整的器件序列號。具體的程序如下所示:
評論