![溫度的測量和溫度的控制_第1頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/31/94b5f4c7-b24e-4735-99a8-d99c1de9b00e/94b5f4c7-b24e-4735-99a8-d99c1de9b00e1.gif)
![溫度的測量和溫度的控制_第2頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/31/94b5f4c7-b24e-4735-99a8-d99c1de9b00e/94b5f4c7-b24e-4735-99a8-d99c1de9b00e2.gif)
![溫度的測量和溫度的控制_第3頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/31/94b5f4c7-b24e-4735-99a8-d99c1de9b00e/94b5f4c7-b24e-4735-99a8-d99c1de9b00e3.gif)
![溫度的測量和溫度的控制_第4頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/31/94b5f4c7-b24e-4735-99a8-d99c1de9b00e/94b5f4c7-b24e-4735-99a8-d99c1de9b00e4.gif)
![溫度的測量和溫度的控制_第5頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/31/94b5f4c7-b24e-4735-99a8-d99c1de9b00e/94b5f4c7-b24e-4735-99a8-d99c1de9b00e5.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、溫度的測量和溫度的控制1.DALLAS 最新單線數(shù)字溫度傳感器DS18B20簡介Dallas 半導(dǎo)體公司的數(shù)字化溫度傳感器DS1820是世界上第一片支持 “一線總線”接口的溫度傳感器?,F(xiàn)場溫度直接以“一線總線”的數(shù)字方式傳輸,大大提高了系統(tǒng)的抗干擾性。適合于惡劣環(huán)境的現(xiàn)場溫度測量,如:環(huán)境控制、設(shè)備或過程控制、測溫類消費電子產(chǎn)品等。與前一代產(chǎn)品不同,新的產(chǎn)品支持3V 5.5V 的電壓范圍,使系統(tǒng)設(shè)計更靈活、方便。DS18B20測量溫度范圍為 -55°C+125°C,在-10+85°C范圍內(nèi), 精度為±0.5°C。DS18B20可以程序設(shè)定912
2、位的分辨率,及用戶設(shè)定的報警溫度存儲在EEPROM 中,掉電后依然保存。DS18B20內(nèi)部結(jié)構(gòu)DS18B20內(nèi)部結(jié)構(gòu)主要由四部分組成:64位光刻ROM 、溫度傳感器、非揮發(fā)的溫度報警觸發(fā)器TH 和TL 、配置寄存器。DS18B20的管腳排列如下:DQ 為數(shù)字信號輸入/輸出端;GND 為電源地;VDD 為外接供電電源輸入端(在寄生電源接線方式時接地)。光刻ROM 中的64位序列號是出廠前被光刻好的,它可以看作是該DS18B20的地址序列碼。64位光刻ROM 的排列是:開始8位(28H )是產(chǎn)品類型標(biāo)號,接著的48位是該DS18B20自身的序列號,最后8位是前面56位的循環(huán)冗余校驗碼(CRC=X8
3、+X5+X4+1)。光刻ROM 的作用是使每一個DS18B20都各不相同,這樣就可以實現(xiàn)一根總線上掛接多個DS18B20的目的。DS18B20中的溫度傳感器可完成對溫度的測量,以12位轉(zhuǎn)化為例:用16位符號擴(kuò)展的二進(jìn)制補(bǔ)碼讀數(shù)形式提供,以0.0625/LSB形式表達(dá),其中S 為符號位。 這是12位轉(zhuǎn)化后得到的12位數(shù)據(jù),存儲在18B20的兩個8比特的RAM 中,二進(jìn)制中的前面5位是符號位,如果測得的溫度大于0,這5位為0,只要將測到的數(shù)值乘于0.0625即可得到實際溫度;如果溫度小于0,這5位為1,測到的數(shù)值需要取反加1再乘于0.0625即可得到實際溫度。例如+125的數(shù)字輸出為07D0H ,
4、+25.0625的數(shù)字輸出為0191H ,-25.0625的數(shù)字輸出為FF6FH ,- DS18B20溫度傳感器的存儲器DS18B20溫度傳感器的內(nèi)部存儲器包括一個高速暫存RAM 和一個非易失性的可電擦除的E2RAM, 后者存放高溫度和低溫度觸發(fā)器TH 、TL 和結(jié)構(gòu)寄存器。暫存存儲器包含了8個連續(xù)字節(jié),前兩個字節(jié)是測得的溫度信息,第一個字節(jié)的內(nèi)容是溫度的低八位,第二個字節(jié)是溫度的高八位。第三個和第四個字節(jié)是TH 、TL 的易失性拷貝,第五個字節(jié)是結(jié)構(gòu)寄存器的易失性拷貝,這三個字節(jié)的內(nèi)容在每一次上電復(fù)位時被刷新。第六、七、八個字節(jié)用于內(nèi)部計算。第九個字節(jié)是冗余檢驗字節(jié)。低五位一直都是1 ,TM
5、 是測試模式位,用于設(shè)置DS18B20在工作模式還是在測試模式。在DS18B20出廠時該位被設(shè)置為0,用戶不要去改動。R1和 R0用來設(shè)置分辨率,如下表所示:(DS18B20出廠時被設(shè)置為12位)根據(jù)DS18B20的通訊協(xié)議,主機(jī)控制DS18B20完成溫度轉(zhuǎn)換必須經(jīng)過三個步驟:每一次讀寫之前都要對DS18B20進(jìn)行復(fù)位,復(fù)位成功后發(fā)送一條ROM 指令,最后發(fā)送RAM 指令,這樣才能對DS18B20進(jìn)行預(yù)定的操作。復(fù)位要求主CPU 將數(shù)據(jù)線下拉500微秒,然后釋放,DS18B20收到信號后等待1660微秒左右,后發(fā)出60240微秒的存在低脈沖,主CPU 收到此信號表示復(fù)位成功。本實驗在讀取溫度的
6、基礎(chǔ)上,完成類似空調(diào)恒溫控制的實驗。用加熱電阻代替加熱電機(jī), 制冷采用自然冷卻。溫度值通過LED 靜態(tài)顯示電路以十進(jìn)制形式顯示出來,同時顯示電路還將顯示設(shè)定的恒溫值,通過鍵盤可以改變設(shè)定值。按一次升高鍵, 恒溫值加1,按一次降低鍵, 恒溫值減小1。恒溫值在250范圍內(nèi)可調(diào)。當(dāng)實際溫度低于設(shè)定的恒定溫度2時,單片機(jī)發(fā)出指令信號,繼電器吸合,紅色LED 點亮,加熱電阻開始加熱。當(dāng)溫度超過設(shè)定的恒溫值2時,單片機(jī)發(fā)出指令信號,繼電器斷開,紅色LED 熄滅,加熱電阻停止加熱,制冷采用自然冷卻。 2、步驟1. 用串行數(shù)據(jù)通信線連接計算機(jī)與仿真器,把仿真器插到模塊的鎖緊插座中,請注意仿真器的方向:缺口朝上
7、。2. 打開Keil uVision2仿真軟件,首先建立本實驗的項目文件,接著添加“DS18B20.ASM ”源程序,編譯無誤后,全速運(yùn)行程序。3. 程序正常運(yùn)行后,按下自鎖開關(guān)控制。5LED 數(shù)顯為“ XX20”,“XX ”為十進(jìn)制溫度測量值,當(dāng)氣溫低于0,或者模擬信號輸入端的電位器沒有逆時針旋到底時,溫度值前面出現(xiàn)“-” 號。 “20”為十進(jìn)制溫度設(shè)定值,按設(shè)定鍵升高、降低可以改變設(shè)定值。當(dāng)測量值小于設(shè)定值2個字時,加熱啟動,當(dāng)實際值超過設(shè)定值2個字時,加熱停止。4. 可把源程序編譯成可執(zhí)行文件,燒錄到89C51芯片中。 3、源程序LEDBUF EQU 60H ;顯示緩存1 TEMP EQ
8、U 65H ;顯示緩存2UP EQU 1 ;1鍵定義為增加鍵 DOWN EQU 2 ;2鍵定義為減小鍵 LOWLIMIT EQU 2 ;設(shè)定值最低為2 HIGHLIMIT EQU 50 ;設(shè)定值最高為50FLAG1 EQU 38H ;是否檢測到DS18B20標(biāo)志位 SETTEMP EQU 50H ;溫度設(shè)定值緩存 CURTEMP EQU 29H ;溫度實際值緩存 DIN BIT P3.0 ;串行顯示數(shù)據(jù)口 CLK BIT P3.1 ;串行顯示時鐘口 ORG 0000H LJMP START ORG 0100HSTART: MOV SETTEMP, #20 ;設(shè)定值初值20MLOOP: LCAL
9、L TESTKEY ;測試鍵盤是否有鍵按下CJNE A,#03H,KEYPRESSED ;有鍵按下,處理按鍵 MLOOP1: ACALL DISPLAYRESULT ;無鍵按下,調(diào)顯示ACALL DISPLAYLEDACALL GET_TEMPER ;調(diào)用讀溫度子程序 MOV A, CURTEMPJB ACC.7, LE0 ;為負(fù)值 CLR CMOV B, SETTEMP ;為正值時與設(shè)定值比較 DEC B DEC B SUBB A, BJNC GN2 ;小于(設(shè)定值-2),加熱 LE0: SETB P3.2 SJMP GN4GN2: MOV A, CURTEMP SETB CMOV B, S
10、ETTEMP INC B INC B SUBB A, BJC GN4 ;大于(設(shè)定值+2),停止加熱 CLR P3.2 SJMP GN4 GN4: ACALL DELAY1LJMP MLOOP ;大循環(huán) KEYPRESSED: ;處理按鍵LCALL GETKEY ;讀取鍵值 MOV B, A XRL A, #DOWNJNZ KEY0MOV A, SETTEMP XRL A, #LOWLIMIT JZ KEY1DEC SETTEMP SJMP KEY1 KEY0: MOV A, B XRL A, #UP JNZ KEY1MOV A, SETTEMP XRL A, #HIGHLIMIT JZ KE
11、Y1 INC SETTEMP KEY1: LJMP MLOOP1INIT_1820: ;這是DS18B20復(fù)位初始化子程序SETB P2.0 NOPCLR P2.0 ;主機(jī)發(fā)出延時537微秒的復(fù)位低脈沖 MOV R1,#3 TSR1: MOV R0,#107 DJNZ R0,$ DJNZ R1,TSR1SETB P2.0 ;然后拉高數(shù)據(jù)線 NOP NOP NOPMOV R0,#25HTSR2: JNB P2.0,TSR3 ;等待DS18B20回應(yīng) DJNZ R0,TSR2LJMP TSR4 ;延時TSR3: SETB FLAG1 ;置標(biāo)志位, 表示DS1820存在 LJMP TSR5TSR4:
12、 CLR FLAG1 ;清標(biāo)志位, 表示DS1820不存在 LJMP TSR7 TSR5: MOV R0,#117TSR6: DJNZ R0,TSR6 ;時序要求延時一段時間 TSR7: SETB P2.0 RETGET_TEMPER: ;讀出轉(zhuǎn)換后的溫度值SETB P2.0LCALL INIT_1820 ;先復(fù)位DS18B20 JB FLAG1,TSS2RET ;判斷DS1820是否存在? 若DS18B20不存在則返回 TSS2: MOV A,#0CCH ;跳過ROM 匹配 LCALL WRITE_1820MOV A,#44H ;發(fā)出溫度轉(zhuǎn)換命令 LCALL WRITE_1820;這里通過調(diào)
13、用顯示子程序?qū)崿F(xiàn)延時一段時間, 等待AD 轉(zhuǎn)換結(jié)束LCALL DELAY1LCALL INIT_1820 ;準(zhǔn)備讀溫度前先復(fù)位 MOV A,#0CCH ;跳過ROM 匹配 LCALL WRITE_1820MOV A,#0BEH ;發(fā)出讀溫度命令 LCALL WRITE_1820LCALL READ_18200 ;將讀出的溫度數(shù)據(jù)保存到35H/36H MOV A,CURTEMPMOV C,40H ;將28H 中的最低位移入C RRC A MOV C,41H RRC A MOV C,42H RRC A MOV C,43H RRC AMOV CURTEMP,A RETWRITE_1820: MOV
14、R2,#8 CLR C WR1: CLR P2.0 MOV R3,#6 DJNZ R3,$ RRC AMOV P2.0,C MOV R3,#23 DJNZ R3,$ SETB P2.0 NOPDJNZ R2,WR1 SETB P2.0 RETREAD_18200: MOV R4,#2 MOV R1,#CURTEMP RE00: MOV R2,#8 RE01: CLR C SETB P2.0 NOP NOPCLR P2.0 NOP NOP NOPSETB P2.0 MOV R3,#9 RE10: DJNZ R3,RE10 MOV C,P2.0 MOV R3,#23;寫DS18B20的子程序(有具
15、體的時序要求;一共8位數(shù)據(jù) ;讀DS18B20的程序, 從DS18B20中讀出兩個字節(jié)的溫度數(shù)據(jù);將溫度高位和低位從DS18B20中讀出 ;低位存入29H, 高位存入28H ;數(shù)據(jù)一共有8位RE20: DJNZ RRC DJNZ MOV DEC DJNZ RET R3,RE20 A R2,RE01 R1,A R1 R4,RE00 ;數(shù)碼管顯示 R0,#LEDBUF R1,#TEMP R2,#5 DPTR,#LEDMAP A,R0 A,A+DPTR R1,A R0 R1 R2,DP10 R0,#TEMP R1,#5 R2,#8 A,R0 A DIN,C CLK CLK R2,DP13 R0 R1
16、,DP12 3FH,6,5BH,4FH,66H,6DH ;0,1,2,3,4,5 7DH,7,7FH,6FH,77H,7CH ;6,7,8,9,A,B 58H,5EH,7BH,71H,0,40H ;C,D,E,F(xiàn), , 63H,39H ; ;十六進(jìn)制轉(zhuǎn)換為十進(jìn)制 A, CURTEMP ACC.7, GE0 LEDBUF, #11H ;'-' A A GOON LEDBUF, #10H ;' ' B, #10 AB LEDBUF+1, A A, B LEDBUF+2, A A, SETTEMP B, #10 第 6 頁 共 8 頁 DISPLAYLED: MOV
17、MOV MOV DP10: MOV MOV MOVC MOV INC INC DJNZ MOV MOV DP12: MOV MOV DP13: RLC MOV CLR SETB DJNZ INC DJNZ RET LEDMAP: DB DB DB DB DISPLAYRESULT: MOV JNB MOV DEC CPL LJMP GE0: MOV GOON: MOV DIV MOV MOV MOV MOV MOV DIV AB MOV LEDBUF+3,A MOV A, B MOV LEDBUF+4,A RET TESTKEY: ;測試鍵盤是否有鍵按下 MOV P1, #03H MOV A,
18、 P1 ;讀入鍵狀態(tài) RET KEYTABLE: ;鍵碼定義 DB 02H,01H,0F7H DB 0EFH,0DFH,0BFH,07FH GETKEY: MOV R6,#10 LCALL DELAY MOV A,P1 ANL A,#03H ;高六位不用 CJNE A,#03H,K01 ;確有鍵按下 LJMP MLOOP K01: MOV R3,#2 ;2 個鍵 MOV R2,#0 ;鍵碼 MOV B,A ;暫存鍵值 MOV DPTR,#KEYTABLE K02: MOV A,R2 MOVC A,A+DPTR ;從鍵值表中取鍵值 CJNE A,B,K04 ;鍵值比較 MOV A,R2 ;得鍵碼 INC A RET K04: INC R2 ;不相等,到繼續(xù)訪問鍵值表 DJNZ R3,K02 MOV A,#0FFH ;鍵值不在鍵值中,即多鍵同時按下 LJMP MLOOP DELAY: ;延時子程序 MOV R7,#0 DELAYLOOP: DJNZ R7,DELAYLOOP DJNZ R6,DELAYLOOP RET DELAY1: ;延時子程序 MOV R4,#0FFH AA1: MOV R5,#0FFH AA: NOP NOP DJNZ R5,AA DJNZ R4,AA1 RET END 4
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 工程建設(shè)管理與施工標(biāo)準(zhǔn)化作業(yè)指導(dǎo)書
- 工程項目管理規(guī)范操作流程解讀
- 游戲開發(fā)實踐作業(yè)指導(dǎo)書
- 農(nóng)業(yè)信息化技術(shù)推廣應(yīng)用作業(yè)指導(dǎo)書
- 標(biāo)準(zhǔn)鋼材購銷合同
- 測繪勞務(wù)分包合同
- 出口銷售合同
- 小麥種子購銷合同
- 員工試用勞動合同
- 2025年呼和浩特道路貨運(yùn)從業(yè)資格證模擬考試
- 油庫應(yīng)急處置培訓(xùn)
- 老年髖部骨折患者圍術(shù)期下肢深靜脈血栓基礎(chǔ)預(yù)防專家共識(2024版)解讀 課件
- 江蘇省無錫市2024年中考語文試卷【附答案】
- 新環(huán)境下人力資源體系建設(shè)方案
- 五年級上冊小數(shù)脫式計算200道及答案
- 2024年秋新滬科版物理八年級上冊 第二節(jié) 測量:物體的質(zhì)量 教學(xué)課件
- 火針療法緩解上寒下熱證候群焦慮抑郁情緒的研究
- 7.2維護(hù)祖國統(tǒng)一 (課件) 2024-2025學(xué)年九年級道德與法治上冊 (統(tǒng)編版)
- 直播帶貨基本操作流程(直播帶貨流程完整版)
- 2024義務(wù)教育英語課程標(biāo)準(zhǔn)2022版考試題庫附含答案
- 多旋翼無人機(jī)駕駛員執(zhí)照(CAAC)備考試題庫大全-下部分
評論
0/150
提交評論