基于單總線數字溫度傳感器DS18B20的測溫系統設計
DS18B20的單總線訪問協議由如下4個步驟構成。
(1)主機對DS18B20進行復位初始化,初始化時序如圖2(a)所示,主機在t1時刻在單總線上發出一持續480~960μs的低電平脈沖的復位脈沖,在t2時刻釋放單總線至少等待480μs確保應答正確,并接收采樣,DS18B20等待15~60 μs,在t3時刻發出60~240μs的低電平存在脈沖,如圖中加粗虛線所示;本文引用地址:http://www.104case.com/article/159549.htm
(2)主機向DS18B20寫ROM操作指令,一旦檢測到總線上有從屬期間存在,主機便可發送ROM操作命令,主要包含讀ROM[33h]、匹配ROM[55h]、跳過ROM、搜索ROM、告警搜索命令;
(3)主機向DS18B20寫RAM操作指令以啟動溫度轉換(44h)、讀暫存器(BEh)、寫暫存器(4Eh)、復制暫存器(43h)、重新調出E2(B8h)、獲取供電方式(B4h);
(4)主機與DS18B20進行數據傳送。
寫ROM命令、RAM命令和收發數據都通過單總線傳輸,單總線通過時間片來讀寫數據,每個時間片傳送1位數據,分寫時間片和讀時間片。兩種時間片都必須持續最短60μs,兩個時間片之間必須插入至少1μs的恢復時間,讀/寫時序如圖2(b),(c)所示。讀操作通過讀時間片控制完成,分讀“0”和讀“1”時間片;寫操作通過寫時間片控制完成,分寫“0”和寫“1”時間片。
溫度變換結束后,主機向DS18B20發送讀溫度命令(BEh),DS18B20以16位、符號擴展的二進制補碼形式發送到數據總線,低位在前,高位在后。
2 測溫系統硬件設計
系統硬件主要由單片機最小系統、DS18B20傳感器溫度采集電路、數碼管顯示驅動電路、LED報警電路組成,DS18B20采用外部電源供電方式,抗干擾性強,系統硬件電路如圖3所示。
3 測溫系統軟件設計
系統軟件分兩層設計,上層是應用層,負責系統初始化、溫度符號、百位、十位、個位、十分位數據提取,溫度異常報警等;底層負責DS18B20初始化、讀寫驅動和數據顯示驅動,DS18B20與處理器采用串行數據傳輸,在對其進行初始化、讀寫編程時,必須嚴格保證讀寫時序,否則將出現錯誤。
51單片機相關文章:51單片機教程
熱電偶相關文章:熱電偶原理
評論