基于DS18B20的智能溫度測量裝置設計介紹|壹芯微
溫度是一種最基本的環境參數,人民的生活與環境的溫度息息相關,在工業生產過程中需要實時測量溫度,在農業生產中也離不開溫度的測量,因此研究溫度的測量方法和裝置具有重要的意義。測量溫度的關鍵是溫度傳感器,溫度傳感器的發展經歷了三個發展階段:①傳統的分立式溫度傳感器,②模擬集成溫度傳感器,③智能集成溫度傳感器。目前,國際上新型溫度傳感器正從模擬式向數字式,從集成化向智能化、網絡化的方向飛速發展。因此本文介紹了智能集成溫度傳感器DS18B20的結構特征及控制方法,并對以此傳感器,以89C2051單片機為控制器構成的溫度測量裝置的工作原理及程序設計作了詳細的介紹。
1.DS18B20介紹
1.1性能特點
由DALLAS半導體公司生產的DS18B20型單線智能溫度傳感器,屬于新一代適配微處理器的智能溫度傳感器,可廣泛用于工業、民用、軍事等領域的溫度測量及控制儀器、測控系統和大型設備中。其性能特點如下:
①采用單總線專用技術,既可通過串行口線,也可通過其它I/O口線與微機接口,無須經過其它變換電路,直接輸出被測溫度值(9位二進制數,含符號位);
②測溫范圍為-55℃-+125℃,測量分辨率為0.0625℃;
③內含64位經過激光修正的只讀存儲器ROM;
④適配各種單片機或系統機;
⑤用戶可分別設定各路溫度的上、下限;
⑥內含寄生電源。
1.2內部結構
DS18B20內部結構主要由四部分組成:64位光刻ROM,溫度傳感器,非揮發的溫度報警觸發器TH和TL,高速暫存器。DS18B20的管腳排列如圖1所示。
圖1DS18B20引腳分布圖
64位光刻ROM是出廠前被光刻好的,它可以看作是該DS18B20的地址序列號。不同的器件地址序列號不同。
DS18B20高速暫存器共9個存儲單元,如表所示:
以12位轉化為例說明溫度高低字節存放形式及計算:12位轉化后得到的12位數據,存儲在18B20的兩個高低兩個8位的RAM中,二進制中的前面5位是符號位。如果測得的溫度大于0,這5位為0,只要將測到的數值乘于0.0625即可得到實際溫度;如果溫度小于0,這5位為1,測到的數值需要取反加1再乘于0.0625才能得到實際溫度。
1.3DS18B20控制方法
在硬件上,DS18B20與單片機的連接有兩種方法,一種是Vcc接外部電源,GND接地,I/O與單片機的I/O線相連;另一種是用寄生電源供電,此時UDD、GND接地,I/O接單片機I/O。無論是內部寄生電源還是外部供電,I/O口線要接5KΩ左右的上拉電阻。
DS18B20有六條控制命令,如表所示:
CPU對DS18B20的訪問流程是:先對DS18B20初始化,再進行ROM操作命令,最后才能對存儲器操作,數據操作。DS18B20每一步操作都要遵循嚴格的工作時序和通信協議。如主機控制DS18B20完成溫度轉換這一過程,根據DS18B20的通訊協議,須經三個步驟:每一次讀寫之前都要對DS18B20進行復位,復位成功后發送一條ROM指令,最后發送RAM指令,這樣才能對DS18B20進行預定的操作。
2.溫度測量裝置設計
2.1系統組成
由DS18B20構成的智能溫度測量裝置由三部分組成:DS18B20溫度傳感器、89C2051、顯示模塊。產品的主要技術指標:①測量范圍:-55℃-+125℃,②測量精度:0.5℃,③反應時間≤500ms。
2.2工作原理
基于DS18B20的溫度測量裝置電圖如圖2所示:溫度傳感器DS18B20將被測環境溫度轉化成帶符號的數字信號(以十六位補碼形式,占兩個字節),傳感器可置于離裝置150米以內的任何地方,輸出腳I/O直接與單片機的P1.1相連,R1為上拉電阻,傳感器采用外部電源供電。89C2051是整個裝置的控制核心,89C2051內帶1K字節的FlashROM,用戶程序存放在這里。顯示器模塊由四位一體的共陽數碼管和4個9012組成。系統程序分傳感器控制程序和顯示器程序兩部分,傳感器控制程序是按照DS18B20的通信協議編制。系統的工作是在程序控制下,完成對傳感器的讀寫和對溫度的顯示。
圖2基于DS18B20的溫度測量裝置電路圖
2.3程序設計
根據DS18B20的通信協議,按圖2的硬件結構。下面是系統的主要程序。
系統主程序********************
ORG0100H
I/OBITP3.4
START:LCALLRST18B20;調DS18B20初始化子程序
MOVA,#OCCH;寫CCH到DS18B20,以便跳過ROM匹配
LCALLWIDS18B20;WIDS18B20是寫18B20子程序
JNBF1,START;若DS18B20不存在則從新開始
MOVA,#44H;發溫度轉換命令
LCALLWIDS18B20
LCALLDSPLAY;調顯示子程序
LCALLRST18B20
MOVA,#0BEH;發讀溫度命令
LCALLWIDS18B20
LCALLRDDS18B20;RDDS18B20是讀子程序
LCALLZWDS18B20;ZWDS18B20是溫度計算子程序
LCALLDSPLAY
LJMPSTART
***********部分子程序************
DS18B20初始化子程序***********
RST18B20:SETBI/O
CLRI/O
MOVR0,#0FAH;延時500微秒
LP1:DJNZR0,LP1
SETBI/O;釋放總線
MOVR0,#15H;在63微秒內檢測是否出現應答信號
LP2:JNBI/O,LP3
DJNZR0,LP2
CLRF1;清標志位,表示DS1820不存在
LJMPLP5
LP3:SETBF1;標專置1,表示DS18B20存在
MOVR0,#0FAH;延時500微秒
LP4:DJNZR0,LP4
LP5:SETBI/O
RET
18B20讀子程序**********
RDDS18B20:MOVR2,#8
LOOP:CLRC
SETBI/Q
NOP
CLRI/Q
NOP
SETBI/Q
MOVR3,#7
DJNZR3,$
MOVC,I/Q
MOVR3,#23
DJNZR3,$
RRCA
DJNZR2,LOOP
RET
18B20寫子程序************
WIDS18B20:MOVR2,#8
CLRC
WI:CLRDQ
MOVR3,#6
DJNZR3,$
RRCA
MOVDQ,C
MOVR3,#23
DJNZR3,$
SETBDQ
NOP
DJNZR2,WR1
SETBDQ
RET
18B20顯示子程序************
DSPLAY:----------
18B20溫度計算子程序************
ZWDS18B20:----------
END
結束語
本文總結了基于DS18B20的智能溫度測量裝置設計方案。并且該單路溫度測量裝置已研制成產品,產品經測試在-10℃-70℃間測得誤差為0.25℃,80℃≤T≤105℃時誤差為0.5℃;當T>105℃誤差為增大到1℃左右。用單總線溫度傳感器和單片機構成的測溫裝置適用于人民的日常生活和工、農業生產用于溫度測量,具有推廣價值。
壹芯微科技專業生產"二極管,三極管,場效應管,橋堆",20年豐富的生產經驗,品質優秀,完美替代,專業生產管理團隊與工程師嚴格管控品質,超過4800家電路電器生產企業選用合作,價格低于同行(20%),更具性價比,提供技術支持,售后FEA,如需了解產品詳情,最新報價以及樣品申請,歡迎咨詢官網在線客服!
手機號/微信:13534146615
QQ:2881579535
工廠地址:安徽省六安市金寨產業園區
深圳辦事處地址:深圳市福田區寶華大廈A1428
中山辦事處地址:中山市古鎮長安燈飾配件城C棟11卡
杭州辦事處:杭州市西湖區文三西路118號杭州電子商務大廈6層B座
電話:13534146615
企業QQ:2881579535
深圳市壹芯微科技有限公司 版權所有 | 備案號:粵ICP備2020121154號