




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、溫度控制器的設(shè)計與制作一、功能要求設(shè)計并制作一個溫度控制器,用于自動接通或斷開室內(nèi)的電加熱設(shè)備,從而使室內(nèi)溫度達到設(shè)定溫度要求,并能實時顯示室內(nèi)溫度。當室內(nèi)溫度大于等于設(shè)定溫度時,控制器斷開電加熱設(shè)備;當室內(nèi)溫度比設(shè)定溫度小2時,控制器接通電加熱設(shè)備。 控溫范圍:051 控溫精度: 1二、硬件系統(tǒng)設(shè)計1硬件系統(tǒng)由七部分組成,即單片機及看門狗電路、溫度檢測電路、控制輸出電路、鍵盤電路、顯示電路、設(shè)置溫度儲存電路及電源電路。 (1)單片機及看門狗電路 根據(jù)設(shè)計所需的單片機的內(nèi)部資源(程序存儲器的容量、數(shù)據(jù)存儲器的容量及I/O口數(shù)量),選擇AT89C51-24PC較合適。為了防止程序跑飛,導致溫度失
2、控,進而引起可怕的后果,本設(shè)計加入了硬件看門狗電路IMP813L,如果它的WDI腳不處于浮空狀態(tài),在1.6秒內(nèi)WDI不被觸發(fā)(即沒有檢測到上什沿或下降沿),就說明程序已經(jīng)跑飛,看門狗輸出端將輸出低電平到手動復位端,使復位輸出端RST發(fā)出復位信號,使單片機可靠復位,即程序重新開始執(zhí)行。(注:如果選用AT89S51,由于其內(nèi)部已具有看門狗電路,就不需外加IMP813L) (2)溫度檢測電路 溫度傳感器采用AD590,它實際上是一個與絕對溫度成正比的電流源,它的工作電壓為430V,感測的溫度范圍為-550C+1500C,具有良好的線性輸出,其輸出電流與溫度成正比,即1A/K。因此在00C時的輸出電流
3、為273.2A,在1000C時輸出電流為373.2A。溫度傳感器將溫度的變化轉(zhuǎn)變?yōu)殡娏餍盘?,通過電阻后轉(zhuǎn)變電壓信號,經(jīng)過運算放大器JRC4558運算處理,處理后得到的模擬電壓信號傳輸給A/D轉(zhuǎn)換部分。A/D轉(zhuǎn)換器選用ADC0804,它是用CMOS集成工藝制成的逐次逼近型模數(shù)轉(zhuǎn)換芯片,分辨率8位,轉(zhuǎn)換時間100s,基準電壓05V,輸入模擬電壓05V。 (3)控制輸出電路 控制信號由單片機的P1.4引腳輸出,經(jīng)過光耦TLP521-1隔離后,經(jīng)三極管C8550直接驅(qū)動繼電器WJ108-1C-05VDC,如果所接的電加熱設(shè)備的功率2KW,則可利用繼電器的常開觸點直接控制加熱設(shè)備,如果加熱設(shè)備的功率&g
4、t;2KW,可以繼電器控制接觸器,由接觸器直接控制加熱設(shè)備。 (4)鍵盤電路 鍵盤共有四個按鍵,分別是S1(設(shè)置)、S2(+)、S3(-)、S4(儲存)。通過鍵盤來設(shè)置室內(nèi)應(yīng)達到的溫度,鍵盤采用中斷方式控制。 (5)顯示電路 顯示電路由兩位E10501_AR數(shù)碼管組成,由兩片74LS164驅(qū)動,實現(xiàn)靜態(tài)顯示,74LS164所需的串行數(shù)據(jù)和時鐘由單片機的P3.0和P3.1提供。對于學過“串行口”知識的班級,實習時,可以采用串行口工作于方式0,即同步移位寄存器的輸出方式,通過串行口輸出顯示數(shù)據(jù)(實時溫度值或設(shè)置溫度值);對于沒學過“串行口”知識的班級,實習時,可以采用模擬串行口的輸出方式,實現(xiàn)顯示
5、數(shù)據(jù)的串行輸出。 (6)設(shè)置溫度存儲電路 為了防止設(shè)定溫度在電源斷電后丟失,此設(shè)計加入了儲存電路,儲存器選用具有I2C總線功能的AT24C01或FM24C01均可。每次通過鍵盤設(shè)置的室內(nèi)設(shè)定溫度都通過儲存器儲存起來,即使是電源斷電,儲存器存儲的設(shè)定溫度也不丟失,在電源來電后,單片機自動將設(shè)定溫度從儲存器中讀出,一方面避免了斷電后的更新設(shè)置工作;另一方面也保護了控制器控制的安全性,可靠性。 (7)電源電路 電源采用了串聯(lián)型集成穩(wěn)壓器電路,電源有兩路輸出,一路由L7805CV穩(wěn)壓輸出+5V,除JRC4558、AD590外,電路的其它部分均由+5V供電;一路由MC78L12和LM79L12穩(wěn)壓輸出&
6、#177;12V,給JRC4558、AD590供電。當然這里還可以選擇現(xiàn)成的開關(guān)型穩(wěn)壓電源,但它的價格相對來說要高一些。2硬件系統(tǒng)電路原理圖: 3材料表型號數(shù)量對應(yīng)元件序號種類3301R26電阻47019R1R17、R28、R298202R20、R251K2R22、R232K1R273K2R21、R2410K2R18、R192K2RP3、RP4電位器5K2RP1、RP210P1C9瓷片電容30P2C17、C18100/25V4C1、C2、C3、C4電解電容470/16V2C5、C61N41482D2、D3整流二極管3.9V/1W1D1穩(wěn)定二極管紅色、32D4、D5發(fā)光二極管DB1071ZLQ1
7、整流橋KBP2061ZLQ2C85501Q1三極管12M1Y1晶振74LS1642U11、U12ICAD5901U9ADC08041U5AT24C011U6AT89C511U4IMP813L1U7JRC45581U8L7805CV1U3LM79L121U2MC78L121U1TLP521-11U10E10501-AR2DS1、DS2數(shù)碼管WJ108-1C-05VDC1K1繼電器220V/8V/2×15V/2.5W1T1電源變壓器VH-22CN1、CN2連接座三、軟件系統(tǒng)設(shè)計 1溫控系統(tǒng)采用模塊化程序結(jié)構(gòu),可分為四大模塊: (1)系統(tǒng)初始化模塊:完成變量的設(shè)定、中斷入口的設(shè)定、各變量賦
8、初值、堆棧設(shè)定、讀設(shè)置溫度、定時器T0工作方式及初值的設(shè)定并啟動、開中斷。 (2)循環(huán)模塊:完成A/D轉(zhuǎn)換及溫度值的換算、溫度值顯示、溫度比較、看門狗的觸發(fā)。 (3)定時器T0中斷模塊:完成1秒的定時。 (4)外部中斷INT1中斷模塊:完成鍵盤對溫度值的設(shè)定。 2軟件流程框圖: 3參考程序:;-;溫度控制器源程序;-s1 bit p1.0 ;s1按鍵控制口位s2 bit p1.1 ;s2按鍵控制口位 s3 bit p1.2 ;s3按鍵控制口位s4 bit p1.3 ;s4按鍵控制口位wdkz bit p1.4 ;溫度控制口位wdi bit p1.5 ;看門狗觸發(fā)端sda bit p1.7 ;A
9、T24C01的數(shù)據(jù)線scl bit p1.6 ;AT24C01的時鐘線drxd bit p3.0 ;74LS164數(shù)據(jù)dtxd bit p3.1 ;74ls164時鐘intr bit p3.2 ;A/D轉(zhuǎn)換結(jié)束信號控制口位szled bit p3.5 ;設(shè)置LEDsbz bit 00h ;秒標志位swwd equ 30h ;十位溫度的BCD碼存儲單元gwwd equ 31h ;個位溫度的BCD碼存儲單元adpj equ 32h ;A/D轉(zhuǎn)換后的平滑濾波值存儲單元szwd equ 33h ;設(shè)置溫度值存儲單元adwz equ 34h ;5次A/D值的初始位置,即34h38hmjsz equ 39
10、h ;1秒記數(shù)值(50ms次數(shù))smjsz equ 3ah ;3秒記數(shù)值(200ms次數(shù))shmjsz equ 3bh ;10秒記數(shù)值(200ms次數(shù)) org 0000h ljmp start org 000bh ljmp timezd ;T0中斷 org 0013h ljmp temszzd ;INT1中斷 org 0030hstart: clr sbz mov mjsz,#20 mov smjsz,#15 mov shmjsz,#50 mov sp,#60h ;-賦初值 ;lcall durom mov szwd,a ;-讀設(shè)置溫度 mov tmod,#01h mov th0,#3ch
11、mov tl0,#0b0h setb tr0 ;-定時器T0的設(shè)定及啟動 setb it1 setb ex1 setb et0 setb ea ;-開中斷(INT1和T0中斷)cyc: lcall adzh mov a,adpj lcall bcdzh lcall disp lcall tembj jnb sbz,$ clr sbz lcall wdog sjmp cyc;-;模數(shù)轉(zhuǎn)換子程序名:adzh;入口參數(shù):無;出口參數(shù):adpj;-adzh: push psw push acc mov r1,#adwz mov r2,#5adzh1: movx r0,a jb intr,$ movx
12、a,r0 mov r1,a inc r1 djnz r2,adzh1 ;-5次A/D值完成 mov r0,#adwz mov r2,#5 lcall paix ;-5次A/D值排序 mov r5,#00h mov r6,#00h mov r7,#3 mov a,#adwz add a,#1 mov r1,ajiafa: mov a,r1 add a,r5 mov r5,a mov a,r6 addc a,#0 mov r6,a inc r1 djnz r7,jiafa ;-去極值后,余下的3個值求和(和在r6r5中)chufa: mov r3,#16 mov r4,#30 mov r7,#0
13、mov a,r5 add a,r5 mov r5,a mov a,r6 addc a,r6 mov r6,a mov a,r5 add a,#15 mov r5,a mov a,r6 addc a,#0 mov r6,a ;-為"四舍五入"作準備即和值乘以2加上15除以30chufa1: clr c mov a,r5 rlc a mov r5,a mov a,r6 rlc a mov r6,a mov a,r7 rlc a subb a,r4 jnc chufa2 add a,r4 sjmp chufa3chufa2: inc r5chufa3: mov r7,a djnz
14、 r3,chufa1 mov adpj,r5 ;-完成溫度平均值 pop acc pop psw ret;-;排序子程序名:paix(從大到小);入口參數(shù):R0指向數(shù)據(jù)存儲區(qū)的首地址,R2存放數(shù)據(jù)長度;-paix: push psw push accpaix0: mov a,r0 mov r1,a mov a,r2 mov r5,a dec r5 clr f0paix1: mov a,r1 inc r1 clr c subb a,r1 jnc paix2 setb f0 add a,r1 xch a,r1 dec r1 mov r1,a inc r1paix2: djnz r5,paix1 j
15、nb f0,paix3 clr f0 dec r2 cjne r2,#01h,paix0paix3: pop acc pop psw ret;-;T0中斷程序名:timezd;出口參數(shù):sbit;-timezd: mov th0,#3ch mov tl0,#0b0h djnz mjsz,timezd1 mov mjsz,#20 setb sbztimezd1: reti;-;溫度設(shè)置中斷程序名:temszzd;入口參數(shù):szwd;出口參數(shù):szwd;-temszzd: push psw push acc clr rs1 setb rs0 clr tr0 mov a,szwd lcall bcd
16、zh lcall disptemsz0: lcall wdog lcall delay200ms jb s1,temsz0a ljmp temsz0btemsz0a: ljmp ret0temsz0b: djnz smjsz,temsz0 mov smjsz,#15 clr szledwdog1: lcall wdog lcall delay200ms jnb s1,wdog1 ljmp temsz2temsz1: lcall delay200ms djnz shmjsz,temsz2 mov shmjsz,#50 ljmp ret0temsz2: jb s2,temsz3 lcall del
17、ay20ms jb s2,temsz3wdog2: lcall wdog lcall delay200ms jnb s2,wdog2 inc szwd mov a,szwd cjne a,#52,temsz2a mov a,#51 mov szwd,atemsz2a: lcall bcdzh lcall disp mov shmjsz,#50 sjmp temsz2temsz3: jb s3,temsz4 lcall delay20ms jb s3,temsz4wdog3: lcall wdog lcall delay200ms jnb s3,wdog3 dec szwd mov a,szwd
18、 cjne a,#255,temsz3a mov a,#0 mov szwd,atemsz3a: lcall bcdzh lcall disp mov shmjsz,#50 sjmp temsz2temsz4: jb s4,temsz1 lcall delay20ms jb s4,temsz1wdog4: lcall wdog lcall delay200ms jnb s4,wdog4 lcall xieromret0: setb szled mov a,adpj lcall bcdzh lcall disp lcall wdog setb tr0 pop acc pop psw reti;-
19、;bcd碼轉(zhuǎn)換子程序名:bcdzh;入口參數(shù):a;出口參數(shù):swwd、gwwd;-bcdzh: push psw push b mov b,#10 div ab mov swwd,a mov gwwd,b pop b pop psw ret;-;溫度比較子程序名:tembj;入口參數(shù):adpj、szwd;出口參數(shù):wdkz;-tembj: push psw push acc mov a,adpj cjne a,szwd,tembj0tembj0: jc tembj1 setb wdkz sjmp tembj3tembj1: add a,#2 cjne a,szwd,tembj2tembj2:
20、jnc tembj3 clr wdkztembj3: pop acc pop psw ret;-;讀ROM子程序名:durom;出口參數(shù):a;-durom: push psw clr sda ;啟動AT24C01 mov a,#0a0h lcall a_send mov a,#08h lcall a_send setb scl setb sda clr sda mov a,#0a1h lcall a_send lcall a_receive clr sda nop nop setb scl nop nop setb sda pop psw ret;-;字節(jié)發(fā)送子程序名:a_send;入口參數(shù):
21、a;-a_send: push psw mov r0,#08ha_send1: clr scl rlc a mov sda,c nop setb scl nop nop nop djnz r0,a_send1 clr scl nop nop nop setb scla_loop: mov c,sda jc a_loop clr scl pop psw ret;-;字節(jié)接收子程序名:a_receive;出口參數(shù):a;-a_receive: push psw mov r0,#08ha_rec: setb scl nop nop mov c,sda rlc a clr scl nop nop djn
22、z r0,a_rec setb sda nop nop setb scl nop nop clr scl pop psw ret;-;寫ROM子程序名:xierom;入口參數(shù):szwd;-xierom: push psw push acc setb scl setb sda clr sda mov a,#0a0h lcall a_send mov a,#08h lcall a_send mov a,szwd lcall a_send clr sda nop nop setb scl nop nop setb sda lcall delay50ms pop acc pop psw ret;-;延
23、時200mS子程序名:delay200ms;-delay200ms: mov r7,#4del1: mov r6,#200del2: mov r5,#123 nop djnz r5,$ djnz r6,del2 djnz r7,del1 ret;-;延時50ms子程序名:delay50ms;-delay50ms:mov r7,#200dela1: mov r6,#123 nop djnz r6,$ djnz r7,dela1 ret;-;延時20ms子程序名:delay20ms;-delay20ms:mov r7,#80delay1: mov r6,#123 nop djnz r6,$ djn
24、z r7,delay1 ret;-;看門狗子程序名:wdog;-wdog: clr wdi setb wdi clr wdi ret;-;顯示子程序disp;入口參數(shù):swwd、gwwd;-disp: push psw push acc push b mov dptr,#tab mov a,swwd cjne a,#00h,n0 mov a,#0ffh ajmp n1n0: movc a,a+dptrn1: lcall zjfs mov a,gwwd movc a,a+dptr lcall zjfs pop b pop acc pop psw retzjfs: mov r0,#08h clr czjfs1: rrc a mov drxd,c setb dtxd nop nop nop nop nop nop clr dtxd nop nop nop nop nop nop djnz r0,zjfs1 rettab: db 0c0h,0
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年發(fā)酵合成控制系統(tǒng)合作協(xié)議書
- 企業(yè)用酒合同范例
- 廠區(qū)用地拆除合同范本
- 手寫的借款合同范本
- 化糞池改造工程合同范本
- 縣城酒吧轉(zhuǎn)讓合同范例
- 吊柜出售轉(zhuǎn)讓合同范本
- 瓦片勞務(wù)合同范本
- 樹木移植合同范本
- 義齒公司員工合同范本
- 智慧物流方案設(shè)計與實施賽題答案
- 雙重血漿置換
- 全面深化改革體會研討發(fā)言
- 產(chǎn)品質(zhì)量檢驗確認單
- 數(shù)控機床故障診斷與維護實驗指導書-實驗報告
- T-CHAS 20-2-11-2022 醫(yī)療機構(gòu)藥事管理與藥學服務(wù) 第2-11部分:臨床藥學服務(wù) 治療藥物監(jiān)測
- 廣州退休申請表范本
- 2023年中國海關(guān)科學技術(shù)研究中心招聘應(yīng)屆畢業(yè)生7人筆試模擬試題及答案解析
- 皮帶機安全-課件
- 傳媒侵權(quán)法介紹
- 初中物理作圖題集萃附答案
評論
0/150
提交評論