導航:首頁 > 操作系統 > 單片機的冰箱溫度控制的設計

單片機的冰箱溫度控制的設計

發布時間:2024-05-22 07:59:03

『壹』 基於MCS-51單片機的精密溫度控制系統的設計與實現

上傳內容
僅供學習與參考

摘要
本檢測系統硬體設計以AT89C51單片機為核心,用溫度感測器DS18B20實現溫度控制,用數碼管顯示實際溫度和預設溫度,製作數字溫度計,並可以實現溫度預警控制。
單片機系統的軟體編程採用單片機匯編進行編程。應用軟體採用KEIL和PROTEUS模擬軟體模擬實現控制過程。
溫度控制系統是基於單片機的計算機檢測技術的軟硬體開發和面向對象的高級可視化程序開發的有機結合。對溫度控制的發展有很大的好處。如果投入生產,不僅會創造良好的經濟效益,還可提高溫控的簡單化。

關鍵詞 單片機;DS18B20;調節;溫度
Abstract
This examination system hardware design take at89C51 monolithic integrated circuit as a core, realizes the temperature control with temperature sensor DS18B20, Demonstrates the actual temperature and the preinstall temperature with the nixie tube,manufactures the simple intelligence temperature control system - - digit thermometer,And may realize the temperature early warning control.
. The monolithic integrated circuit system's software programming uses the monolithic integrated circuit assembly to carry on the programming. The superior machine application software uses KEIL and the PROTEUS simulation software simulation realizes the controlled process.
This article develops the intelligence temperature control system is based on monolithic integrated circuit's computer examination technology software and hardware development and face the object high-level visualization procere development organic synthesis. Has the very big advantage to temperature control's development. If place in operation, not only will create the good economic efficiency, but may also propose the simplification which the high temperature will control.
Keywords microcontroller;DS18B20;measure;temperture

目錄
摘要 I
Abstract II
第1章 緒論 4
1.1 溫度感測器發展概述 4
1.2 單片機技術簡介 4
1.3 溫度檢測技術的發展 5
第2章 溫度感測器的選擇 8
2.1 測溫方法 8
2.2 DS18B20簡介 9
第3章 軟硬體設計 10
3.1 單片機的選擇 10
3.2 溫度感測器的選擇 10
3.3 模擬軟體的選擇 11
3.4 編譯軟體的選擇 11
3.5 PROTEUS 模擬電路圖 12
第4章 匯編語言程序 13
4.1 主程序和溫度值轉換成顯示值子程序的流程圖 13
4.2 DS18B20溫度子程序和顯示子程序的流程圖 14
4.3 匯編語言源程序 14
第1章 緒論
1.1 溫度感測器發展概述(略)

1.2 單片機技術簡介(略)

1.3 溫度檢測技術的發展(略)

第2章 溫度感測器的選擇
2.1 測溫方法
溫度是一個很重要的物理參數,鋼鐵的冶煉、石油的分餾、塑料的合成以
及農作物的生長等等都必須在一定的溫度范圍內進行,各種構件、材料的體積、電阻、強度以及抗腐蝕等物理化學性質,一般也都會隨溫度而變化。人們利用各種能源為人類服務,也往往是使某些介質通過一定的溫度變化來實現的。所以在生產和化學試驗中,人們經常會碰到溫度測量的問題。
溫度感測器是檢測溫度的器件,其種類最多,應用最廣,『發展最快。眾所周知,日常使用的材料及電子元件大部分都隨溫度而變化,資料【5】中介紹了作為實用感測器必須滿足的一些條件:
(1)在使用溫度范圍內溫度特性曲線要求達到的精度能符合要求:為了能
在較寬的溫度范圍內進行檢測,溫度系數不宜過大,過大了就難以使用,但對
於狹窄的溫度范圍或僅僅定點的檢測,其溫度系數越大,檢測電路也能越簡單。
(2)為了將它用於電子線路的檢測裝置,要具有檢測便捷和易於處理的特
性。隨著半導體器件和信號處理技術的進步,對溫度感測器所要求的輸出特性
應能滿足要求。
(3)特性的偏移和蠕變越小越好,互換性要好。
(4)對於溫度以外的物理量不敏感。
(5)體積小,安裝方便:為了能正確地測量溫度,感測器的溫度必須與被
測物體的溫度相等。感測器體積越小,這個條件越能滿足。
(6)要有較好的機械、化學及熱性能。這對於使用在振動和有害氣體的環
境中特別重要。
(7)無毒、安全以及價廉、維修、更換方便等。
溫度測量的方法很多,根據溫度感測器的使用方式,通常分為接觸式測溫
法與非接觸式測溫法兩類。
(1)接觸式測溫法
由熱平衡原理可知,兩個物體接觸後,經過足夠長時間的熱交換達到熱平
衡,則它們的溫度必然相等。如果其中之一為溫度計,就可以用它對另一個物體實現溫度測量,這種測溫方式稱為接觸式測溫法。接觸式測溫的優點顯而易
見,它簡單,可靠,測量精度高,但同時也存在不足:溫度計要與被測物體有
良好的熱接觸,並充分換熱,從而產生了測溫滯後現象;測溫組件可能與被測
物體發生化學反應;由於受到耐高溫材料的限制,接觸式測溫儀表不可能應用
於很高溫度的測量。
(2)非接觸式測溫法
由於測量組件與被測物體不接觸,利用物體的熱輻射能隨溫度變化的原理
測定物體溫度。因而測量范圍原則上不受限制,測溫速度較快,還可以在運動
中測量。這種測溫方式稱為非接觸式測溫法。它的特點是:不與被測物體接觸,也不改變被測物體的溫度分布,熱慣性小。從原理上看,用這種方法測溫無上限。通常用來測定1000℃以上的移動、旋轉或反應迅速的高溫物體的溫度或表面溫度。
2.2 DS18B20簡介
2.2.1技術性能描述
單線介面方式,DS18B20在與微處理器連接時僅需要一條口線即可實現微處理器與DS18B20的雙向通訊。測溫范圍 -55℃~+125℃,固有測溫解析度0.5℃。支持多點組網功能,多個DS18B20可以並聯在唯一的三線上,實現多點測溫。工作電源: 3~5V直流電源。
在使用中不需要任何外圍元件,測量結果以9~12位數字量方式串列傳送。適用於DN15~25, DN40~DN250各種介質工業管道和狹小空間設備測溫。
2.2.2應用范圍
該產品適用於冷凍庫,糧倉,儲罐,電訊機房,電力機房,電纜線槽等測溫和控制領域,軸瓦,缸體,紡機,空調,等狹小空間工業設備測溫和控制。
2.2.3接線說明
特點有一線介面,只需要一條口線通信 多點能力,簡化了分布式溫度感測應用 無需外部元件 可用數據匯流排供電,電壓范圍為3.0 V至5.5 V 無需備用電源 測量溫度范圍為-55 ° C至+125 ℃ 。華氏相當於是-67 ° F到257華氏度 -10 ° C至+85 ° C范圍內精度為±0.5 ° C。
溫度感測器可編程的解析度為9~12位 溫度轉換為12位數字格式最大值為750毫秒 用戶可定義的非易失性溫度報警設置 應用范圍包括恆溫控制,工業系統,消費電子產品溫度計,或任何熱敏感系統描述該DS18B20的數字溫度計提供9至12位(可編程設備溫度讀數。信息被發送到/從DS18B20 通過1線介面,所以中央微處理器與DS18B20隻有一個一條口線連接。為讀寫以及溫度轉換可以從數據線本身獲得能量,不需要外接電源。 因為每一個DS18B20的包含一個獨特的序號,多個DS18B20可以同時存在於一條匯流排。這使得溫度感測器放置在許多不同的地方。它的用途很多,包括空調環境控制,感測建築物內溫設備或機器,並進行過程監測和控制。【6】

第3章 軟硬體設計
3.1 單片機的選擇
單片機系統由單片機AT89C51、74HC245等晶元構成,完成數據採集、處理、通訊以及所有的功能,是整個系統的核心模塊。
單片機是整個系統的核心,對系統起監督、管理、控製作用,並進行復雜的信號處理,產生測試信號及控制整個檢測過程。所以在選擇單片機時,參考了以下標准。
(1)運行速度。單片機運行速度一般和系統匹配即可。
(2)存儲空間。單片機內部存儲器容量,外部可以擴展的存儲器(包括1/0口)空間。
(3)單片機內部資源。單片機內部存儲資源越多,系統外接的部件就越少,這可提高系統的許多技術指標。
(4)可用性。指單片機是否能很容易地開發和利用,具體包括是否有合適的開發工具,是否適合於大批量生產:、性能價格比,是否有充足的資源,是否有現成的技術資源等。
(5)特殊功能。一般指可靠性、功耗、掉電保護、故障監視等。
從硬體角度來看,與MCS-51指令完全兼容的新一一代AT89CXX系列機,比在片外加EPROM才能相當的8031-2單片機抗干擾性能強,與87C51-2單片機性能相當,但功耗小。程序修改直接用+5伏或+12伏電源擦除,更顯方便、而且其工作電壓放寬至2.7伏一6伏,因而受電壓波動的影響更小,而且4K的程序存儲器完全能滿足單片機系統的軟體要求。故AT89C51單片機是構造本檢測系統的更理想的選擇。本系統選用ATMEL生產的AT89C51單片機,其特性如下:
(1) 4K位元組可編程閃速程序存儲器;1000次循環寫/擦
(2)全靜態工作:OHz-24MHz
(3)三級程序存儲器鎖定
(4) 128 X 8位內部數據存儲器,32條可編程1/0線
(5)兩個十六位定時器/計數器,六個中斷源
(6)可編程串列通道,低功耗閑置和掉電模式
該器件採用了ATMEL的高密度非易失性的存儲器工藝,並且可以與工業標準的MCS-51指令集和輸出管腳兼容。由於將多功能8位CPU與閃速式存儲器組合在單個晶元中,AT89C51是一種高效的微控制器,為很多嵌入式系統提供了高靈活性且價廉的方案。
3.2 溫度感測器的選擇
DS18B20是美國達拉斯半導體公司的產品,與其他產品相比較它的性能有如下特點:①採用單匯流排專用技術,既可通過串列口線,也可通過其它I/O口線與微機介面,無須經過其它變換電路,直接輸出被測溫度值(9位二進制數,含符號位),②測溫范圍為-55℃-+125℃,測量解析度為0.0625℃,③內含64位經過激光修正的只讀存儲器ROM,④適配各種單片機或系統機,⑤用戶可分別設定各路溫度的上、下限,⑥內含寄生電源。所以在本設計中,我採用了DS18B20作為溫度感測器。【8】
3.3 模擬軟體的選擇
Proteus 是英國Labcenter公司開發的電路分析與實物模擬軟體。它運行於Windows操作系統上,可以模擬、分析(SPICE)各種模擬器件和集成電路,該軟體的特點是:
①實現了單片機模擬和SPICE電路模擬相結合。具有模擬電路模擬、數字電路模擬、單片機及其外圍電路組成的系統的模擬、RS232動態模擬、I2C調試器、SPI調試器、鍵盤和LCD系統模擬的功能;有各種虛擬儀器,如示波器、邏輯分析儀、信號發生器等。
②支持主流單片機系統的模擬。目前支持的單片機類型有:ARM7(LPC21xx)、 8051/52系列、AVR系列、PIC10/12/16/18系列、HC11系列以及多種外圍晶元。
③提供軟體調試功能。在硬體模擬系統中具有全速、單步、設置斷點等調試功能,同時可以觀察各個變數、寄存器等的當前狀態,因此在該軟體模擬系統中,也必須具有這些功能;同時支持第三方的軟體編譯和調試環境,如Keil C uVision2、MPLAB等軟體。【9】
3.4 編譯軟體的選擇
KEIL C51標准C編譯器為8051微控制器的軟體開發提供了C語言環境,同時保留了匯編代碼高效,快速的特點。C51編譯器的功能不斷增強,使你可以更加貼近CPU本身,及其它的衍生產品。C51已被完全集成到uVision2的集成開發環境中,這個集成開發環境包含:編譯器,匯編 器,實時操作系統,項目管理器,調試器。uVision2 IDE可為它們提供單一而靈活的開發環境。
C51 V7版本是目前最高效、靈活的8051開發平台。它可以支持所有8051的衍生產品,也可以支持所有兼容的模擬器,同時支持其它第三 方開發工具。因此,C51 V7版本無疑是8051開發用戶的最佳選擇。
uVision2集成開發環境具有如下功能:
一、項目管理
工程(project)是由源文件、開發工具選項以及編程說明三部分組成的。
一個單一的uVision2工程能夠產生一個或多個目標程序。產生目標程序的源文件構成「組」。開發工具選項可以對應目標,組或單個文件。
uVision2包含一個器件資料庫(device database),可以自動設置匯編器、編譯器、連接定位器及調試器選項,來滿足用戶充分利用特定 微控制器的要求。此資料庫包含:片上存儲器和外圍設備的信息,擴展數據指針(extra data pointer)或者加速器(math accelerator)的特 性。
uVision2可以為片外存儲器產生必要的連接選項:確定起始地址和規模。
二、集成功能
uVision2的強大功能有助於用戶按期完工。
1.集成源極瀏覽器利用符號資料庫使用戶可以快速瀏覽源文件。用詳細的符號信息來優化用戶變數存儲器。
2.文件尋找功能:在特定文件中執行全局文件搜索。
3.工具菜單:允許在V2集成開發環境下啟動用戶功能。
4.可配置SVCS介面:提供對版本控制系統的入口。
5.PC-LINT介面:對應用程序代碼進行深層語法分析。
6.Infineon的EasyCase介面:集成塊集代碼產生。【10】
3.5 PROTEUS 模擬電路圖
圖1是基於單片機的智能溫度檢測系統電路原理圖。控制加熱熱水器電源電路用LED燈模擬代替,取消無水報警電路。裝上水後接通電源,下方LED數碼管顯示當前水溫。上方LED數碼管顯示預設水溫。操作「個位」鍵和「十位」鍵可預設水溫(如99℃)控制點。該電路具有如下功能:
(1) 測量水溫,精度為1℃,范圍為0~99℃;
(2) 三位數碼管實時顯示水溫;
(3) 可預設水溫(如99℃)控制點,當水加熱到該水溫時自動斷電,當水溫低於該水溫時自動上電加熱;
(4) 無水自動斷電和報警功能(略)。

圖1 基於單片機的智能溫度檢測系統電路原理圖

第4章 匯編語言程序
4.1 主程序和溫度值轉換成顯示值子程序的流程圖

4.2 DS18B20溫度子程序和顯示子程序的流程圖

4.3 匯編語言源程序
ORG 0
LJMP MAIN1
ORG 0003H
LJMP ZINT0
ORG 13H
LJMP ZINT1

TMPH: EQU 28H
FLAG1: EQU 38H
DATAIN: BIT P3.7
MAIN1: SETB IT0
SETB EA
SETB EX0
SETB IT1
SETB EX1
SETB P3.6
SETB P3.2
MOV 74H,#0
MOV 75H,#0
MOV 76H,#0
MOV 77H,#0
MAIN: LCALL GET_TEMPER
LCALL CVTTMP
LCALL DISP1
AJMP MAIN
INIT_1820:
SETB DATAIN
NOP
CLR DATAIN
MOV R1,#3
TSR1: MOV R0,#107 ;保持642ms
DJNZ R0,$
DJNZ R1,TSR1
SETB DATAIN ;釋放DS18B20匯流排
NOP
NOP
NOP
MOV R0,#25H
TSR2: JNB DATAIN,TSR3
DJNZ RO,TSR2
CLR FLAG1
SJMP TSR2
TSR3: SETB FLAG1 ;標志位置1,證明DS18b20存在
CLR P1.7
MOV R0,#117
TSR6: DJNZ R0,$
TSR7: SETB DATAIN
RET ;延時254us
GET_TEMPER:
SETB DATAIN
LCALL INIT_1820
JB FLAG1,TSS2
NOP
RET ;DS18B20檢測程序
TSS2: MOV A,#0CCH ;跳過ROM,使用存儲器
LCALL WRITE_1820
MOV A,#44H ;對RAM操作,開始溫度轉換
LCALL WRITE_1820
ACALL DISP1
LCALL INIT_1820
MOV A,#0CCH
LCALL WRITE_1820
MOV A,#0BEH
LCALL WRITE_1820
LCALL READ_1820;讀暫存器中的溫度數值
RET
WRITE_1820:
MOV R2,#8
CLR C
WR1: CLR DATAIN
MOV R3,#6
DJNZ R3,$
RRC A
MOV DATAIN,C
MOV R3,#23
DJNZ R3,$
SETB DATAIN
NOP
DJNZ R2,WR1
SETB DATAIN
RET
READ_1820:
MOV R4,#2
MOV R1,#29H
RE00: MOV R2,#8
RE01: CLR C
SETB DATAIN
NOP
NOP
CLR DATAIN
NOP
NOP
NOP
SETB DATAIN
MOV R3,#9
RE10: DJNZ R3,RE10
MOV C,DATAIN
MOV R3,#23
RE20: DJNZ R3,RE20
RRC A
DJNZ R2,RE01
MOV @R1,A
DEC R1
DJNZ R4,RE00
RET
CVTTMP: MOV A,TMPH
ANL A,#80H ;判斷溫度正負,正不變,負則取反加1
JZ TMPC1
CLR C
MOV A,TMP1
CPL A
ADD A,#1
MOV TMP1,A
MOV A,TMPH
CPL A
ADDC A,#0
MOV TMPH,A
MOV 73H,#0BH
SJMP TMPC11
TMPC1: MOV 73H,#0AH
TMPC11: MOV A,TMP1
ANL A,#0FH
MOV DPTR,#TMPTAB
MOVC A,@A+DPTR
MOV 70H,A
MOV A,TMP1
ANL A,#0FH
SWAP A
ORL A,TMPL
B2BCD: MOV B,#100
DIV AB
JZ B2BCD1
MOV 73H,A
B2BCD: MOV A,#10
XCH A,B
DIV AB
MOV 72H,A
MOV 71H,B
TMPC12: NOP
DISBCD: MOV A,73H
ANL A,#0FH
CJNE A,#1,DISBCD0
SJMP DISBCD1
DISBCD0: MOV A,72H
ANL A,#0FH
JNZ DISBCD1
MOV A,73H
MOV 72H,A
MOV 73H,#0AH
DISBCD1: RET
TMPTAB: DB 0,1,1,2,3,3,4,4,5,6,6,7,8,8,9,9
DISP1: MOV R1,#70H
MOV R0,#74H
MOV R5,#0FEH ;顯示實際溫度
PLAY: MOV P1,#0FFH
MOV A,R5
MOV P2,A
MOV A,@R1
MOV DPTR,#TAB
MOVC A,@A+DPTR
MOV P1,A
MOV P1,A
MOV A,@R0
MOVC A,@A+DPTR
MOV P0,A
MOV A,R5
JB ACC.1,LOOP1
JB P1.7
CLR P1.7
CLR P0.7 ;顯示小數點
LOOP1: LCALL DL1MS
INC R1
INC R0
MOV A,R5
JNB ACC.3,ENDOUT
RL A
MOV R5,A
MOV A,73H
CJNE A,#1,DD2
SJMP LEDH
DD2: MOV A,72H
CJNE A,72H,DDH
SJMP DD1
DDH: JNE PLAY1
LEDH: CLR P3.6
SJMP PLAY
PLAY1: SETB P3.6
SJMP PLAY
ENDOUT: MOV P1,#0FFH
MOV P2,#0FFH
RET
TAB: DB 0C0H,0F9H,0A4H,0B0H,99H
DB 92H,82H,0F8H,80H,90H,0FFH,0BFH
DL1MS: MOV R6,#14H
DL1: MOV R7,#100
DJNZ R7,$
DJNZ R6,DL1
RET
ZINT0: PUSH A
INC 75H
MOV A,,75H
CJNE A,#10,ZINT01
MOV 75H,#0
ZINT01: POP A
RETI
ZINTT1: PUSH A
INC 76H
MOV A,76H
CJNE A,#10,ZINT11
MOV 76H,#0
ZINT11: POP A
RETI

『貳』 求一個單片機設計(電冰箱單片機控制系統)

我好像做過,你等等,我找到發給你

已經找到了,給你發過去了,Hi上給你留言了

『叄』 基於單片機的溫度控制系統的設計

利用溫度感測器DS18B20檢測環境溫度並直接輸出數字溫度信號給單片機AT89C52進行處理。

在LCD液晶上顯示當前環境溫度值、預設溫度值、使用者設定的溫度差以及目前風扇所處的檔位。其中預設溫度值只能為整數形式,檢測到的當前環境溫度可精確到小數點後一位。

同時採用PWM脈寬調制方式來改變直流風扇電機的轉速。

並通過兩個按鍵改變預設溫度值,一個提高預設溫度,另一個降低預設溫度值。通過另一個按鍵控制溫度差的大小。

設有紅外熱釋感測器檢測環境范圍內是否有人,如果有人確定出風方向,如果無人,降低轉速或一定時間內自動關閉。

回答

正如你所說的,一共用了DS18B20模塊,LCD模塊,紅外感測模塊,按鍵,直流電機模塊,程序方面只有一個PWM。現在一一為你分析:

DS18B20模塊:

下圖是它的原理圖,採用單匯流排來進行開發,不像電賽的哪個溫度感測器需要AD轉換,它是可以直接傳出數字信號的。

『肆』 急求:基於MCS-51單片機的溫度控制器匯編語言軟體設計和硬體電路圖

第2章 硬體電路詳細設計
DS18B20的性能特點:1、採用單匯流排專用技術,既可通過串列口線,也可通過其它I/O口線與微機介面,無須經過其它變換電路,直接輸出被測溫度值(9位二進制數,含符號位),2、測溫范圍為-55℃-+125℃,測量解析度為0.0625℃,3、內含64位經過激光修正的只讀存儲器ROM,4、適配各種單片機或系統機,5、用戶可分別設定各路溫度的上、下限,6、內含寄生電源。溫度感測器DS18B20連接方式:在寄生電源供電方式下,DS18B20從單線信號線上汲取能量,在信號線DQ處於高電平期間把能量儲存在內部電容里,在信號線處於低電平期間消耗電容上的電能工作,直到高電平到來再給寄生電源(電容)充電。如圖2.3所示。
2.4 復位電路的設計
本設計採用人工復位,將一個按扭開關並聯於上電自動復位電路按一下開關就在RST端出現一段時間的高電平,即器件復位。
2.5 晶振電路的設計
2.6 DS18B20溫度感測器與單片機的介面電路
DS18B20可以採用兩種方式供電,一種是採用電源供電方式,此時DS18B20的1腳接地,2腳作為信號線,3腳接電源。另一種是寄生電源供電方式,如所示單片機埠接單線匯流排,為保證在有效的DS18B20時鍾周期內提供足夠的電流,可用一個MOSFET管來完成對匯流排的上拉。
當DS18B20處於寫存儲器操作和溫度A/D轉換操作時,匯流排上必須有強的上拉,上拉開啟時間最大為10us。採用寄生電源供電方式時VDD端接地。由於單線制只有一根線,因此發送介面必須是三態的。
2.7 溫度測量系統整體硬體電路
Wei1 BIT P3.0 ;;數碼管第1位
Wei2 BIT P3.1 ;;數碼管第2位
Wei3 BIT P3.2 ;;數碼管第3位
Wei4 BIT P3.3 ;;數碼管第4位
Dian EQU 20H ;;小數點狀態狀態保存位元組
DisData1 EQU 30H ;;第1位顯示數據
DisData2 EQU 31H ;;第2位顯示數據
DisData3 EQU 32H ;;第3位顯示數據
DisData4 EQU 33H ;;第4位顯示數據
DisTime EQU 34H ;;設置顯示幾次後讀取溫度值
;;溫度數據存儲單元標號定義
TempL EQU 35H ;;溫度高位
TempH EQU 36H ;;溫度低位
;;與DS18B20通迅部分存儲單元及標號定義
DS18B20 BIT P1.0 ;;與DS18B20通迅的位地址
RFail BIT 21H.0 ;;復位失敗標記
Var EQU 22H ;;變數位元組,溫度數據處理時用到
Var2 EQU 3FH ;;變數位元組
主程序部分:
ORG 00H
LJMP START
ORG 100H
START: ;;-----初始化
MOV SP,#60H ;;初始化堆棧指針
Set18B20:;;-----DS18B20初始化
;;DS18B20復位
ACALL Reset
JB RFail,LOOP ;;復位失敗則直接跳至顯示部分
;;對DS18B20發出Skip ROM命令
MOV A,#0CCH
ACALL Write
;;對DS18B20發出溫度轉換命令
MOV A,#44H
ACALL Write
SetDisT:MOV DisTime,#3 ;;設置下一個循環體的循環8次
LOOP:
ACALL Display ;;顯示
JB RFail,Set18B20 ;;DS18B20復位失敗時,在顯示完一次後重新復位
DJNZ DisTime,LOOP
JNB DS18B20,$ ;;判斷DS18B20是否已完成溫度轉換
ACALL GetTemp ;;從DS18B20讀出溫度值
ACALL DealTemp ;;溫度值處理
ACALL SendDisDT ;;根據當前系統狀態設置顯示內容
SJMP SetDisT ;;;;;;;

;;根據當前狀態給顯示模塊設置顯示參數
SendDisDT:
MOV Dian,#7FH ;;最高位為0代表顯示小數點
;;傳送溫度值
MOV A,TempH ;;送高位數據
MOV VAR,TempL ;;送低位數據
ACALL TransData
RET
;;A中保存高位值,Var中保存低位值
TransData:
;;取個位值
MOV B,#10
DIV AB
MOV DisData2,B
;;取十位值
JZ HavNot1 ;;判斷商是否為0
MOV B,#10
DIV AB
MOV DisData3,B
JZ HavNot2 ;;判斷商是否為0
MOV DisData4,A
SJMP XiaoShu ;;跳至百位符號處理部分
HavNot1:MOV DisData3,#10 ;;十位開始沒有數字
HavNot2:MOV DisData4,#10 ;;百位開始沒有數字
SignJudge:;;符號處理部分
JNB VAR.7,XiaoShu ;;當為負數顯示符號
MOV A,#10
CJNE A,DisData3,BWSign
MOV DisData3,#11 ;;負號在十位
SJMP XiaoShu
BWSign:MOV DisData4,#11 ;;負號在百位
XiaoShu:;;小數處理部分,用查表法獲取小數值,精確到小數點後1位
MOV A,VAR
ANL A,#0FH
MOV DPTR,#XSTab
MOVC A,@A+DPTR
MOV DisData1,A
RTransTemp:
RET
XSTab: DB 0,1,1,2,3,3,4,4,5,6,6,7,8,8,9,9
DS18B20通迅模塊組
-------復位模塊
Reset: ;;3微秒高電平
SETB DS18B20
MOV R7,#250
CLR RFail ;;清0復位失敗標記
CLR DS18B20
;;延遲501uS
DJNZ R7,$
SETB DS18B20 ;;釋放匯流排(拉高數據線)
;;等待DS18B20作出復位成功反應,最大等待時間為69uS
MOV R7,#17
Wait:
JNB DS18B20,RReset ;;若DS18B20在作出復位成功反應,不再等待
DJNZ R7,Wait
SETB RFail ;;70uS內DS18B20作出復位成功反應,置1復位失敗標記
RReset:
;;延遲350Us
MOV R7,#174
DJNZ R7,$
SETB DS18B20
RET
/
;;-------向DS18B20寫一個字的模塊,要寫的內容提前裝入ACC中
Write:
MOV R6,#8 ;寫8位
WriteBit:
;;2微秒高電平
SETB DS18B20
MOV R7,#3
;;7微秒低電平
CLR DS18B20
DJNZ R7,$
;;ACC低位送至DS18B20
RRC A
MOV DS18B20,C
;;延遲60Us
MOV R7,#28
DJNZ R7,$
;;是否已寫完8位
DJNZ R6,WriteBit
RWrite:
SETB DS18B20
RET
; /
;;-------從DS18B20讀回一個位元組的內容,讀回的內容裝入ACC中
Read:
MOV R6,#8 ;;讀回8位
MOV A,#0 ;;讀回的內容裝入ACC中
ReadBit:
;;2微秒高電平
SETB DS18B20
MOV R7,#7
;;2微秒低電平
CLR DS18B20
NOP
;;16微秒高電平
SETB DS18B20
DJNZ R7,$
;;讀回一位數據放入ACC中
MOV C,DS18B20
RRC A
;;延遲66Us
MOV R7,#33
DJNZ R7,$
;;是否已讀完8位
DJNZ R6,ReadBit
RRead:
SETB DS18B20
RET
/
;;-------與DS18B20通迅,讀回兩位元組溫度值,並裝入ACC中TempL和TempH中
GetTemp:
ACALL Reset ;;復位
JB RFail,RGetTemp ;;判斷復位是否成功
;;復位成功
;;對DS18B20發出Skip ROM命令
MOV A,#0CCH
ACALL Write
;;對DS18B20發出讀命令
MOV A,#0BEH
ACALL Write
;;從DS18B20讀回低8位溫度值
ACALL Read
MOV TempL,A
;;從DS18B20讀回高8位溫度值
ACALL Read
MOV TempH,A
ACALL Reset ;;復位
JB RFail,RGetTemp ;;判斷復位是否成功
;;對DS18B20發出Skip ROM命令
MOV A,#0CCH
ACALL Write
;;對DS18B20發出溫度轉換命令
MOV A,#44H
ACALL Write
RGetTemp:
RET
溫度數據處理模塊
DealTemp:
;;將整數的二進制數部分移到一個位元組,符號位和小數部分移到一個位元組
MOV R1,#Var
MOV Var,TempH
MOV A,TempL
XCHD A,@R1 ;;符號位、小數部分至VAR(@R1),整數部分至ACC
SWAP A
;;整數部分處理
JNB Var.7,NotNeg ;;判斷是否為負數
CPL A ;;為負數,取反後加1得其絕對值
;;小數部分取反
XRL Var,#1FH ;;
INC Var
NotNeg:
MOV TempH,A
MOV TempL,Var
RET
顯示模塊
-------顯示DisData(30H)從開始的三個位元組保存顯示信息
Display:
MOV DPTR,#Tab
;;**顯示小數部分
MOV A,DisData1
MOVC A,@A+DPTR
MOV P2,A
CLR Wei1
ACALL Delay
SETB Wei1
;;**顯示個位
MOV A,DisData2
MOVC A,@A+DPTR
;;小數點處理
ANL A,Dian
MOV P2,A
CLR Wei2
ACALL Delay
SETB Wei2
;;**顯示十位
MOV A,DisData3
MOVC A,@A+DPTR
MOV P2,A
CLR Wei3
ACALL Delay
SETB Wei3
;;**顯示百位
MOV A,DisData4
MOVC A,@A+DPTR
MOV P2,A
CLR Wei4
ACALL Delay
SETB Wei4
RET
Tab: ;;0~9、空白、負號的編碼
DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H,0FFH,0BFH
;;延遲
Delay:
MOV R6,#6
DD1:MOV R5,#250
DJNZ R5,$
DJNZ R6,DD1
RET
END
這裡面插不了圖,我有這個的整套課程設計報告,想要找我,[email protected]

『伍』 基於單片機的溫度控制系統設計

第一章 緒論 1. 1 選題背景 防潮、防霉、防腐、防爆是倉庫日常工作的重要內容,是衡量倉庫管理質量的重要指標。它直接影響到儲備物資的使用壽命和工作可靠性。為保證日常工作的順利進行,首要問題是加強倉庫內溫度與濕度的監測工作。但傳統的方法是用與濕度表、毛發濕度表、雙金屬式測量計和濕度試紙等測試器材,通過人工進行檢測,對不符合溫度和濕度要求的庫房進行通風、去濕和降溫等工作。這種人工測試方法費時費力、效率低,且測試的溫度及濕度誤差大,隨機性大。因此我們需要一種造價低廉、使用方便且測量准確的溫濕度測量儀。1.2 設計過程及工藝要求 一、基本功能~ 檢測溫度、濕度~ 顯示溫度、濕度~ 過限報警 二、主要技術參數 ~ 溫度檢測范圍 : -30℃-+50℃~ 測量精度 : 0.5℃~ 濕度檢測范圍 : 10%-100%RH~ 檢測精度 : 1%RH~ 顯示方式 : 溫度:四位顯示 濕度:四位顯示~ 報警方式 : 三極體驅動的蜂鳴音報警 第二章 方案的比較和論證 當將單片機用作測控系統時,系統總要有被測信號懂得輸入通道,由計算機拾取必要的輸入信息。對於測量系統而言,如何准確獲得被測信號是其核心任務;而對測控系統來講,對被控對象狀態的測試和對控制條件的監察也是不可缺少的環節。感測器是實現測量與控制的首要環節,是測控系統的關鍵部件,如果沒有感測器對原始被測信號進行准確可靠的捕捉和轉換,一切准確的測量和控制都將無法實現。工業生產過程的自動化測量和控制,幾乎主要依靠各種感測器來檢測和控制生產過程中的各種參量,使設備和系統正常運行在最佳狀態,從而保證生產的高效率和高質量。2. 1溫度感測器的選擇 方案一:採用熱電阻溫度感測器。熱電阻是利用導體的電阻隨溫度變化的特性製成的測溫元件。現應用較多的有鉑、銅、鎳等熱電阻。其主要的特點為精度高、測量范圍大、便於遠距離測量。鉑的物理、化學性能極穩定,耐氧化能力強,易提純,復制性好,工業性好,電阻率較高,因此,鉑電阻用於工業檢測中高精密測溫和溫度標准。缺點是價格貴,溫度系數小,受到磁場影響大,在還原介質中易被玷污變脆。按IEC標准測溫范圍-200~650℃,網路電阻比W(100)=1.3850時,R0為100Ω和10Ω,其允許的測量誤差A級為±(0.15℃+0.002 |t|),B級為±(0.3℃+0.005 |t|)。銅電阻的溫度系數比鉑電阻大,價格低,也易於提純和加工;但其電阻率小,在腐蝕性介質中使用穩定性差。在工業中用於-50~180℃測溫。 方案二:採用AD590,它的測溫范圍在-55℃~+150℃之間,而且精度高。M檔在測溫范圍內非線形誤差為±0.3℃。AD590可以承受44V正向電壓和20V反向電壓,因而器件反接也不會損壞。使用可靠。它只需直流電源就能工作,而且,無需進行線性校正,所以使用也非常方便,借口也很簡單。作為電流輸出型感測器的一個特點是,和電壓輸出型相比,它有很強的抗外界干擾能力。AD590的測量信號可遠傳百餘米。綜合比較方案一與方案二,方案二更為適合於本設計系統對於溫度感測器的選擇。 2. 2 濕度感測器的選擇 測量空氣濕度的方式很多,其原理是根據某種物質從其周圍的空氣吸收水分後引起的物理或化學性質的變化,間接地獲得該物質的吸水量及周圍空氣的濕度。電容式、電阻式和濕漲式濕敏原件分別是根據其高分子材料吸濕後的介電常數、電阻率和體積隨之發生變化而進行濕度測量的。方案一:採用HOS-201濕敏感測器。HOS-201濕敏感測器為高濕度開關感測器,它的工作電壓為交流1V以下,頻率為50HZ~1KHZ,測量濕度范圍為0~100%RH,工作溫度范圍為0~50℃,阻抗在75%RH(25℃)時為1MΩ。這種感測器原是用於開關的感測器,不能在寬頻帶范圍內檢測濕度,因此,主要用於判斷規定值以上或以下的濕度電平。然而,這種感測器只限於一定范圍內使用時具有良好的線性,可有效地利用其線性特性。方案二:採用HS1100/HS1101濕度感測器。HS1100/HS1101電容感測器,在電路構成中等效於一個電容器件,其電容量隨著所測空氣濕度的增大而增大。不需校準的完全互換性,高可靠性和長期穩定性,快速響應時間,專利設計的固態聚合物結構,由頂端接觸(HS1100)和側面接觸(HS1101)兩種封裝產品,適用於線性電壓輸出和頻率輸出兩種電路,適宜於製造流水線上的自動插件和自動裝配過程等。相對濕度在1%---100%RH范圍內;電容量由16pF變到200pF,其誤差不大於±2%RH;響應時間小於5S;溫度系數為0.04 pF/℃。可見精度是較高的。綜合比較方案一與方案二,方案一雖然滿足精度及測量濕度范圍的要求,但其只限於一定范圍內使用時具有良好的線性,可有效地利用其線性特性。而且還不具備在本設計系統中對溫度-30~50℃的要求,因此,我們選擇方案二來作為本設計的濕度感測器。2. 3 信號採集通道的選擇 在本設計系統中,溫度輸入信號為8路的模擬信號,這就需要多通道結構。方案一、採用多路並行模擬量輸入通道。這種結構的模擬量通道特點為:(1) 可以根據各輸入量測量的餓要求選擇不同性能檔次的器件。總體成本可以作得較低。(2) 硬體復雜,故障率高。(3) 軟體簡單,各通道可以獨立編程。方案二、採用多路分時的模擬量輸入通道。 這種結構的模擬量通道特點為:(1) 對ADC、S/H要求高。(2) 處理速度慢。(3) 硬體簡單,成本低。(4) 軟體比較復雜。綜合比較方案一與方案二,方案二更為適合於本設計系統對於模擬量輸入的要求,比較其框圖,方案二更具備硬體簡單的突出優點,所以選擇方案二作為信號的輸入通道。本文來源於: http://www.waibaowang.net/dianzi/

『陸』 如何用單片機來控製冰箱製冷

這要看你的冰箱採用的是什麼製冷系統,現在比較常見的採用蒸發器和內部強制對流風扇來製冷的話你可以這樣設置。
單片機的輸出端控制變頻器、壓縮機和三個對流風扇,三個倉的閥門。
在三個倉里分別設置多個溫度感測器來測定艙內的溫度是否達標和均勻。單片機根據這些參數判斷是否打開這個倉的閥門和對流風扇,並決定是否暫時關停壓縮機。
另外,有技術條件的話編制根據溫度變化速度調整壓縮機頻率和功率的程序。

『柒』 MCS-51單片機的溫度測控設計(開題報告)

溫度變化范圍不大的用DS18B20 (-55~85)好象,控制用繼電器或者其它的都好,自己做吧,會在其中學到很多東西

閱讀全文

與單片機的冰箱溫度控制的設計相關的資料

熱點內容
華為v10模擬加密門禁卡 瀏覽:721
android修改app名稱 瀏覽:640
輻射3夥伴命令 瀏覽:247
蘋果電腦pdf轉換成word 瀏覽:921
純小數運演算法則 瀏覽:385
php什麼是事務 瀏覽:859
怎麼添加網名文件夾 瀏覽:769
啊哈演算法語言 瀏覽:677
馬來西亞加密貨幣政策 瀏覽:233
交通銀行app鎖定怎麼解鎖 瀏覽:54
php登錄驗證session 瀏覽:730
粵政易文件放在手機哪個文件夾 瀏覽:107
列印機和傳真命令 瀏覽:550
php添加購物車 瀏覽:5
安卓怎麼下載植物大戰僵屍1無盡版 瀏覽:267
程序員上班下班難嗎 瀏覽:299
夢的pdf微盤 瀏覽:186
材料結構分析pdf 瀏覽:795
程序員預研的項目 瀏覽:346
新華保險伺服器登錄不上怎麼回事 瀏覽:397