版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
緒論 12總體設(shè)計方案 12.1進水控制 12.2加熱控制 22.3基本的設(shè)計要求 23系統(tǒng)的硬件設(shè)計 23.1溫度控制與顯示電路 23.1.1顯示電路 23.1.2溫度檢測電路 33.1.3CPU主電路 53.2水位控制 43.3電加熱電路 53.4時間繼電器控制電路 53.5漏電檢測及報警電路 63.6電源電路 74系統(tǒng)的軟件設(shè)計 74.1抗干擾設(shè)計 74.2程序設(shè)計 75結(jié)束語 9致謝 9參考文獻 9附錄 11
1緒論電熱水器是為人們提供溫水或飲用水的電熱器具,它具有衛(wèi)生、方便、加熱迅速等特點,得到了廣泛的應用。電熱水器種類很多,但是就目前的產(chǎn)品來看,都存在著水不能沸騰且冷熱水混流,也就是人們所謂的“陰陽水”的問題。傳統(tǒng)的熱水器注水方式采用的是浮球閥,當箱內(nèi)的水流出后冷水就會自動進入箱內(nèi),冷熱水混流形成“陰陽水”,當人們飲用后造成無畏的傷害,且它所使用的地理位置也嚴重受到限制。本設(shè)計在保留原產(chǎn)品的基礎(chǔ)上,加入了水位的檢測及自動注水控制,沸騰后自動斷電等電路,解決了傳統(tǒng)產(chǎn)品的缺點。此外,還對系統(tǒng)的硬件和軟件采取抗干擾措施,以保障系統(tǒng)的穩(wěn)定運行。2總體設(shè)計方案圖1結(jié)構(gòu)示意圖熱水器結(jié)構(gòu)如圖1所示。系統(tǒng)通電加熱管發(fā)熱,并顯示當前溫度,溫度逐漸上升,當水溫達到溫度傳感器的設(shè)定值時,時間繼電器通電,開始延時,延時時間到水沸騰,然后加熱管停止加熱。當箱內(nèi)水位下降到低于水位探頭1時,產(chǎn)生一個電信號送給進水電磁閥的控制電路,電磁閥打開進水口注水,水位超過水位探頭3時,電磁閥斷電,停止注水。電磁閥采用DF系列水用的電磁閥。本閥適用于以水或其它氣液體為工作介質(zhì),可自動化控制或遠程控制空氣、水、油液體等工作介質(zhì)管路的通斷。適用溫度-5~125℃,開閥能力0.03-0.8Mpa,最高工作壓力0.8Mpa,公稱通徑2.5-50mm。2.1進水控制當水位傳感器檢測到水位低于水位探頭2時,輸出一個電信號去控制電磁閥,其線圈得電,形成電磁場,銜鐵在磁力的作用下,打開閥門向箱內(nèi)注水;它可以保證箱內(nèi)有充足的水。當水位高于水位探頭3時,輸出一個電信號讓電磁閥閉合,進水停止。通過水位探頭與電磁閥打開與閉合來完成進水的循環(huán)過程。2.2加熱控制水位探頭1的位置高于加熱管,其作用是當通電后若檢測到水位低于探頭1時,加熱將不會能通電,這樣就完成了防止干燒的控制。當水位高于探頭1且水溫低于85度時加熱管通電,開始加熱。當水加熱到溫度傳感器的設(shè)定值,時間繼電器通電開始延時,延時時間到加熱管斷電。通過時間繼電器與溫度傳感器的雙重控制可以保證水能循環(huán)加熱。2.3基本的設(shè)計要求以單片機為主控芯片構(gòu)成的電熱水器控制器,其基本的設(shè)計要求:(1)具有漏電保護功能;(2)水沸騰后能自動斷電;(3)溫度低于85℃時自動加熱;(4)測量水溫,并通過顯示器實時顯示水溫,其顯示范圍為0~105℃;(5)具有超溫斷電保護并報警提示的功能;(6)出現(xiàn)傳感器故障時,可迅速切斷加熱元件電源并報警提示;還要求控制器有較強的抗干擾能力,達到或超過家用電器檢測標準,并符合國家安全認證和國際上的相關(guān)安全認證標準[1]。3系統(tǒng)的硬件設(shè)計AT89S51AT89S51電源電路溫度檢測電路漏電檢測報警顯示電路電加熱電路時鐘復位電路壓力控制電路圖2系統(tǒng)框圖3.1溫度控制與顯示電路3.1.1顯示電路圖3顯示電路根據(jù)溫度的顯示范圍(0-105)需要三個LED數(shù)碼顯示器,采用共陽極靜態(tài)顯示。LED具有耗電省,成本低,配置靈活,安裝方便等優(yōu)點。顯示器采用串行口設(shè)置為方式0輸出方式,外接74LS164移位寄存器構(gòu)成顯示器接口電路,如圖3。3.1.2溫度檢測電路由DALLAS半導體公司生產(chǎn)的DS18B20型單線智能溫度傳感器,屬于新一代適配微處理器的智能溫度傳感器,可廣泛用于工業(yè)、民用、軍事等領(lǐng)域的溫度測量及控制儀器、測控系統(tǒng)和大型設(shè)備中。它具有體積小,接口方便,傳輸距離遠等特點。DS18B20的性能特點:①采用單總線專用技術(shù),既可通過串行口線,也可通過其它I/O口線與微機接口,無須經(jīng)過其它變換電路,直接輸出被測溫度值(9位二進制數(shù),含符號位),②測溫范圍為-55℃--+125℃,測量分辨率為0.0625℃,③內(nèi)含64位經(jīng)過激光修正的只讀存儲器ROM,④適配各種單片機或系統(tǒng)機,⑤用戶可分別設(shè)定各路溫度的上、下限,⑥內(nèi)含寄生電源。DS18B20內(nèi)部結(jié)構(gòu)主要由四部分組成:64位光刻ROM,溫度傳感器,非揮發(fā)的溫度報警觸發(fā)器TH和TL,高速暫存器。DS18B20的管腳排列如圖4所示。64位光刻ROM是出廠前被光刻好的,它可以看作是該DS18B20的地址序列號。不同的器件地址序列號不同[2]。
圖4DS18B20封裝在硬件上,DS18B20與單片機的連接有兩種方法,一種是Vcc接外部電源,GND接地,I/O與單片機的I/O線相連;另一種是用寄生電源供電,此時UDD、GND接地,I/O接單片機I/O。無論是內(nèi)部寄生電源還是外部供電,I/O口線要接5KΩ左右的上拉電阻。CPU對DS18B20的訪問流程是:先對DS18B20初始化,再進行ROM操作命令,最后才能對存儲器操作,數(shù)據(jù)操作。DS18B20每一步操作都要遵循嚴格的工作時序和通信協(xié)議。如主機控制DS18B20完成溫度轉(zhuǎn)換這一過程,根據(jù)DS18B20的通訊協(xié)議,須經(jīng)三個步驟:每一次讀寫之前都要對DS18B20進行復位,復位成功后發(fā)送一條ROM指令,最后發(fā)送RAM指令,這樣才能對DS18B20進行預定的操作,如圖5。圖5DS18B20應用電路3.1.3CPU主電路CPU主電路主要包括復位電路,時鐘電路,單片機。8051的外部振蕩脈沖信號由XTAL2端輸入,直接送到內(nèi)部時鐘電路。電容器C1和C2通常取30PF左右,振蕩頻率范圍是1.2MHz~12MHz。3.2水位控制水位控制電路如圖6所示。A棒處于下限水位,棒處于上限水位,B棒在上、下限水位之間。A棒接+5v電源,B棒、C棒各通過一個電阻與地相連。供水時,水位上升,當達到上限時,由于水的導電作用,B棒、C棒聯(lián)通+5v。因此,b、c兩端均為“1”狀態(tài),這時,應關(guān)閉電磁閥停止供水。當水位降到下限時,B棒、C棒都不能與A棒導通,因此b、c兩端均為“0”狀態(tài)。這時,應打開電磁閥供水。當水位處于上下限之間時,B棒與A棒導通。因C棒不能與A棒導通,b端為“1”狀態(tài),c端為“0”狀態(tài)。這時,無論電磁閥是打開的還是關(guān)閉的水位是上升的還是下降的,都應繼續(xù)維持原有的工作狀態(tài)[6]。圖6水位檢測電路3.3電加熱電路 圖7電加熱電路該部分的設(shè)計主要解決兩個問題:弱電(單片機系統(tǒng))和強電(AC220v)的隔離.對此,采用了光電耦合器和雙向可控硅實現(xiàn)對電熱絲的控制.電加熱電路由電熱板、雙向可控硅,光電隔離器等組成。當溫度傳感器檢測到箱內(nèi)溫度低于設(shè)定溫度時,通過其輸出口輸出一個控制電平,經(jīng)過光電隔離送到雙向可控硅的控制柵極,可控硅觸發(fā)導通,電熱板有電流流過,通電對水加熱,其電路圖如圖7。3.4時間繼電器控制電路當貯水箱中的水位高于水位設(shè)定值后,限制開關(guān)K閉合。當溫度低于溫控器設(shè)定溫度后,溫控器開關(guān)JW閉合;中間繼電器線圈KM1通電,觸頭KM1閉合;KM2線圈通電,觸頭KM2閉合,電熱管R工作,指示燈XD通電發(fā)亮。KT線圈通電,觸頭KT閉合。當水溫達到設(shè)定溫度后,JW斷開,線圈KM1失電,觸頭KM1斷開。時間繼電器KT失電,但觸頭KT因延時依然閉合,交流接觸器線圈KM2依然通電,電熱管R繼續(xù)工件。達到預設(shè)的延時時間后,觸頭KT才斷開,這時交流接觸器線圈KM2失電,電熱管R停止工件。指示燈XD熄滅,表示水可飲用??梢姡灰訒r時間設(shè)得合適,就能確保水被加熱到沸騰后才跳閘。時間繼電器延時時間的設(shè)定方法在調(diào)試電熱水器時,先把時間繼電器KT的線路切除,然后,如果是冬天可把溫控器調(diào)到接近水沸騰的溫度(99℃以上),夏天則可以調(diào)到98℃-99℃左右,重新接上時間繼電器,把時間設(shè)在2-5分鐘即可。也可根據(jù)公式pt=4.2m△T計算出時間,舉例:某廠的電熱水器功率為p=6千瓦(電熱管是純電阻),容量為40L(升)即m=40千克。如果是夏天△T=2℃(100℃—98℃),可算出延時時間t=56秒。考慮散熱等因素,取兩倍的時間2分鐘比較合適。其電路如圖8。KTKT圖8改進后的電氣原理圖3.5漏電檢測及報警電路圖9漏電檢測電路電熱水器工作在潮濕的場合,為了確保人身安全,控制器應具備漏電檢測及報警功能,其電路圖如圖9。漏電檢測是由漏電檢測線圈的輸出經(jīng)整形后送入IC的中斷輸入端IRQ。一旦漏電電流超過規(guī)定的閾值,單片機將立即響應中斷,通過漏電開關(guān),切斷整個系統(tǒng)的供電電源,確保人身安全。系統(tǒng)中還設(shè)有報警功能,當超溫或傳感器出現(xiàn)故障時,蜂鳴器報警提示。它是用一位AbstractI/O線來完成,從I/O口輸出一定頻率的方波信號,由晶體三極管驅(qū)動蜂鳴器,使蜂鳴器發(fā)出聲音[1]。3.6電源圖10電源電路系統(tǒng)采用220V供電,220V市電經(jīng)過T1降壓、D1~D4整流、C1濾波后產(chǎn)生12V直流電,作為繼電器的驅(qū)動電壓。12V電壓經(jīng)過7805穩(wěn)壓后產(chǎn)生5V電壓,作為控制器的主電源。電容C2作為高頻旁路電容,將高頻信號旁路到地。同樣電容C3為濾波電容,C4為高頻旁路電容。R1為限流電阻,LED1為5V電源指示燈,如圖10。在設(shè)計的過程中,濾波電容要盡量選擇的大,因為在電路中要求電壓比較穩(wěn)定。4系統(tǒng)的軟件設(shè)計4.1抗干擾設(shè)計為了防止程序在執(zhí)行控制加熱管動作時出現(xiàn)干擾,使用指令復執(zhí)、程序卷回的方法,讓程序在一段時間內(nèi)連續(xù)循環(huán)執(zhí)行這個動作,確??刂茰蚀_無誤。在各功能模塊子程序適當位置設(shè)置軟件陷阱,進行冗余設(shè)計,在信號采集與處理程序中采用多種數(shù)字濾波的方法,消除隨機的尖脈沖干擾。4.2程序設(shè)計開水箱的工作狀態(tài)總共有三個,它們分別是初次使用、用水之后和閑置狀態(tài)。三個狀態(tài)所執(zhí)行的動作是不相同的,所以要分別考慮每個的狀態(tài)的所運用的程序,其中初次使用和用水之后都會檢測水溫及水位信號,然后根據(jù)檢測到的水位及水溫信號執(zhí)行動作;當開水箱閑置時它只會檢測水溫,如果水溫低于設(shè)定值時加熱管就會通電,系統(tǒng)總流程圖如圖11。主程序用水之后檢測水位,水溫主程序用水之后檢測水位,水溫系統(tǒng)初始化系統(tǒng)初始化低于探頭2?低于探頭2?Y是否漏電Y是否漏電打開電磁閥,開始進水N打開電磁閥,開始進水N檢測水位,水溫并顯示水溫檢測水位,水溫并顯示水溫低于探頭3?低于探頭3?低于探頭1?N低于探頭1?NNN關(guān)閉電磁閥,停止進水運行子程序關(guān)閉電磁閥,停止進水運行子程序YY打開電磁閥,開始進水打開電磁閥,開始進水子程序運行閑置時低于探頭3?子程序運行閑置時低于探頭3?NN關(guān)閉電磁閥,停止進水關(guān)閉電磁閥,停止進水子程序子程序水溫低于85度?水溫低于85度?YY加熱器通電加熱器通電NN水溫低于99度?水溫低于99度?時間繼電器通電,延時時間繼電器通電,延時2分鐘后加熱管斷電圖11主程序流程圖5結(jié)束語本系統(tǒng)通過采用以AT89S51單片機作為核心檢測、控制器件實現(xiàn)了電熱水器的自動快速恒溫的功能,克服了陰陽水的問題。并且加強了安全保護,加入了人為控制、抗干擾等功能,對傳統(tǒng)的設(shè)計方案提出了改進措施,加入了前饋控制環(huán)節(jié),使調(diào)溫速度更快,精確性更高,加入多項保護措施使系統(tǒng)使用更安全可靠。用DS18B20測溫,在其內(nèi)部就能進行A/D轉(zhuǎn)換,輸出數(shù)字量與單片機直接進行通訊,無需外加轉(zhuǎn)換器A/D,轉(zhuǎn)換速度快,降低了成本,而且大大簡化了電路,提高了集成度,使其滿足小型化的要求。致謝非常感謝指導老師在畢業(yè)設(shè)計及論文寫作中給予我的指導與幫助。從畢業(yè)設(shè)計和論文寫作開始,指導老師就給我們制訂了詳盡卻又環(huán)環(huán)相扣的計劃,并且在每周都進行檢查和指導,使我們循序漸進、有條不紊地在所學課程的基礎(chǔ)上展開應用。在這個實用性很強的課題中,指導老師豐富的經(jīng)驗,淵博的知識,深邃的思想,嚴謹?shù)闹螌W風格、平易近人處事態(tài)度,讓我們在學習知識和解決問題時感到無比的輕松和愉快,使我們少走了很多彎路,也讓我們學到很多書本上沒有的內(nèi)容。至此論文定稿之際,對指導老師表示衷心的感謝!感謝老師能在繁忙之中抽出時間為我提供耐心的指導,幫我們解決在設(shè)計過程中遇到的種種問題。在做畢業(yè)設(shè)計期間,我還有幸得到其它同學的大力幫助,有了他們,我才能克服各種困難,順利完成畢業(yè)設(shè)計和論文。在這里一并向他們表示感謝!最后,再次向各位領(lǐng)導、各位老師致以崇高的敬意和最衷心的感謝!參考文獻[1]國家標準局.家用和類似用途電器的安全—貯水式電熱水器的特殊要求.北京:國家標準局,GB4706.12-86[2]張福學.傳感器應用及其電路精選(上、下冊)[M].北京;電子工業(yè)出版社,1992[3]滕召生,童調(diào)生.智能檢測系統(tǒng)與數(shù)據(jù)融合[M].北京;機械工業(yè)出版社,1999[4]李娜.自動化儀表[M].北京;燕山大學出版社,2004[5]康華光,鄒壽彬.電子技術(shù)基礎(chǔ)數(shù)字部分[M].北京;高等教育出版社,1999.6[6]王培東.單片機原理及應用[M].哈爾濱;哈爾濱工業(yè)大學出版社,1996.3[7]姚福安.電子電路設(shè)計與實踐[M].濟南;山東科學技術(shù)出版社,2002[8]余永權(quán).模糊控制技術(shù)與模糊家用電器[M].北京:北京航空航天大學出版社,2002[9]周明寶,瞿文龍.電力電子技術(shù)[M].北京;機械工業(yè)出版社,1997.5[10]宋春榮.通用集成電路速查手冊[M].濟南;山東科技大學出版社,1995.9[11]徐君毅.單片微型計算機原理與應用[M].上海;上??茖W技術(shù)出版社,1986[12]金權(quán)林.電熱水器的熱平衡及參數(shù)選擇[J].家用電器科技,1996.1[13]張漢屏.八通道溫度巡查控制儀[J].Electronics,DIY2001,(3);86-871[14]徐征明.基于模糊模型設(shè)計自校正調(diào)節(jié)器的研究[J].自動化學報,1987,13(3)[15]陶永華.新型PID控制及其應用[M].北京;機械工業(yè)出版社,2002[16]李科杰.新編傳感器手冊[M].北京;國防工業(yè)出版社,2002[17]許毓榮.影響溫控器漂移的因素[J].電機電器技術(shù),2004,3:32-33附錄:DISP1EQU6FH;顯示緩沖區(qū)域DISP2EQU6EHDISP3EQU6DHDISP4EQU6CHDISP5EQU6BH;D100EQU6AH;溫度的百位數(shù)據(jù)緩存。EVEQU69H;沒有刪分BCD的溫度值DAYEQU68HSUMEQU67H;控制訂定時器1的中段次數(shù)SUMMEQU66H;查表得出的定時器需要設(shè)置的延時初值的循環(huán)次數(shù)。SVEQU65H;當前溫度值DUAN1_WEQU64HDUAN2_WEQU63HDUAN3_WEQU62HDUAN4_WEQU61H;3段溫度值BEEPBITP2.7;蜂鳴器DS18B20_INBITP3.7CHCEK_ZEROBITP3.2S10KEQU33H;一秒到,溫度刷MS50EQU34H;50MS的存儲單元。TEMPHDATA35H;從18b20中得到的溫度TEMPLDATA36H;從18b20中得到的溫度CBCDEQU38H;拆B(yǎng)CDORG0000HLJMPMAINORG0003HLJMPEX_ZEROORG000BHLJMPTOITORG001BHLJMPTO2TORG0030HMAIN;MOVSP,#70HMOVTMOD,#11HMOVTH0,#9EHMOVTL0,#58HMOVTH1,#0FFHMOVTL1,#0E7H;T1定時為0.05msMOVS10K,#0MOVSECOND,#0MOVMINUTE,#0MOVHOUR,#0MOVDAY,#0SETBBEEPMOVS11,#1MOVS22,#0MOVS55,#0MOVDUAN1_W,#30MOVDUAN2_W,#37MOVDUAN3_W,#40MOVDUAN4_W,#38MOVDAY_1,#6MOVDAY_2,#10MOVDAY_3,#20MOVDISP1,#0HMOVDISP2,#11HMOVDISP3,#11HMOVDISP4,#10HMOVDISP5,#0FH;系統(tǒng)初始化ACALLTZHDISPSETBEASETBET0SETBET1CLRTR0SETBEX0CLRIT0SETBPT0SETBPT1CLRPSCLRPX0CLRPX1CLRCH_A;SETBCH_B;SETBCH_C;CLRP0.0;START;MOVA,S10KCJNEA,#1,START1LCALLWENDULCALLDISPMOVS10K,#0MAIN1;JBFLAG.1, NE7JBS2,NET1ACALLT12MSJBS2,NET1JNBS2,$MAIN1_1;INCS22MOVA,S22NET1;CJNEA,#1,NE1MOVR0,#DUAN1_W;R0送入第一段要調(diào)的溫度單元地址MOVDISP3,#11MOVDISP2,#12MOVDISP1,#1LJMPTZNE1;CJNEA,#2,NE2MOVR0,#DUAN2_W;R0送入第二段要調(diào)的溫度單元地址MOVDISP3,#11MOVDISP2,#12MOVDISP1,#2LJMPTZNE2;CJNEA,#3,NE3MOVR0,#DUAN3_W;R0送入第三段要調(diào)的溫度單元地址MOVDISP3,#11MOVDISP2,#12MOVDISP1,#3LJMPTZSETBTR0SETBEX0MOVSV,DUAN1_W;系統(tǒng)開始運行,調(diào)入第一段溫度SETBFLAG.1MA1;CJNEA,#2,MAIN2CLRTR0CLREX0SETBRUNCLRTR1SETBCONTROL_GMOVS55,#0MAIN2;LJMPSTART;一秒定時中段(時鐘程序);************************************TOIT;PUSHPSWPUSHACCMOVTH0,#03CHMOVTL0,#0B0HINCMS50MOVA,MS50CJNEA,#20,RETURN;20MOVS10K,#1MOVMS50,#00HINCSECONDMOVA,SECONDCJNEA,#60,RETURNMOVSECOND,#0INCDAYMOVA,DAYCJNEA,DAY_1,N1MOVSV,DUAN2_WN1;CJNEA,DAY_2,N2MOVSV,DUAN3_WSETBFLAG.0;第二段溫度送出N2;CJNEA,DAY_3,N3CLRFLAG.0MOVSV,DUAN4_WN3;MOVA,DAYCJNEA,#60,RETURNMOVMINUTE,#0INCHOUR;JNBFLAG.0,PASS;如果標志位為0,通過;INCDJ;MOVA,DJ;CJNEA,#2,PASSPASS;MOVA,HOURMOVA,HOURCJNEA,#24,RETURNMOVHOUR,#0INCDAYRETURN;POPACCPOPPSWRETI;*********************************************;定時器1中段程序TO2T;PUSHACCPUSHPSWDJNZSUM,CHUCLRCONTROL_GCLRP0.0CLRTR1CHU;MOVTH1,#0FFHMOVTL1,#0E7H;T1定時為0.05msPOPPSWPOPACCRETI;*****************************************************************************;通過外部中斷口調(diào)整溫度EX_ZERO;PUSHACCPUSHPSWMOVTH1,#0FFHMOVTL1,#0E7H;T1定時為0.05msSETBP0.0SETBCONTROL_GMOVSUM,SUMM;SUMMM差值查出的,TR1中段次數(shù)SETBTR1POPPSWPOPACCRETIKIND;ACALLTZHDISPACALLT12MSACALLT12MSJBS1,NET10ACALLT12MSJBS1,NET12JNBS1,$KIND1;INCS11MOVA,S11NET10;CJNEA,#1,NET11MOVDUAN1_W,#20MOVDUAN2_W,#21MOVDUAN3_W,#22MOVDUAN4_W,#23MOVDAY_1,#5MOVDAY_2,#10MOVDAY_3,#15MOVDISP1,#1MOVDISP2,#1MOVDISP3,#1MOVDISP4,#1MOVDISP5,#1CLRCH_A;SETBCH_B;SETBCH_C;NET11;CJNEA,#2,NET12MOVDUAN1_W,#10MOVDUAN2_W,#11MOVDUAN3_W,#12MOVDUAN4_W,#13MOVDAY_1,#10MOVDAY_2,#15MOVDAY_3,#20MOVDISP1,#2MOVDISP2,#2MOVDISP3,#2MOVDISP4,#2MOVDISP5,#2CLRCH_ASETBCH_BCLRCH_CNET12;CJNEA,#3,NET13MOVDUAN1_W,#20MOVDUAN2_W,#21MOVDUAN3_W,#22MOVDUAN4_W,#23MOVDAY_1,#11MOVDAY_2,#16MOVDAY_3,#21MOVDISP1,#3MOVDISP2,#3MOVDISP3,#3MOVDISP4,#3MOVDISP5,#3SETBCH_ACLRCH_BCLRCH_CNET13;CJNEA,#4,NET14MOVS11,#0MOVDISP1,#0MOVDISP2,#0MOVDISP3,#0MOVDISP4,#0MOVDISP5,#0SETBCH_ACLRCH_BSETBCH_CNET14;JBS2,NET15ACALLT12MSJBS2,NET15JNBS2,$MOVDISP1,#0MOVDISP2,#0MOVDISP3,#0MOVDISP4,#0MOVDISP5,#0LJMPMAIN1_1NET15;JBS5,NET16ACALLT12MSJBS5,NET16JNBS5,$MOVSV,DUAN1_W;系統(tǒng)開始運行,調(diào)入第一段溫度LJMPS55_1NET16;LJMPKIND;===============================;溫度總子程序;===============================WENDU;ACALLINIT_1820ACALLRE_CONFIGACALLGET_TEMPERACALLCONVTEMP_BCDACALLSUBBBRET;;DS18B20初始化程序;INIT_1820;SETBDS18B20_INNOPCLRDS18B20_INMOVR0,#06BHMOVR1,#03HTSR1;DJNZR0,TSR1;延時MOVR0,#6BHDJNZR1,TSR1SETBDS18B20_INNOPNOPNOPMOVR0,#25HTSR2;JNBDS18B20_IN,TSR3DJNZR0,TSR2LJMPTSR4;延時TSR3;SETB20H.1;置標志位,表示DS1820存在LJMPTSR5TSR4;CLR20H.1;清標志位,表示DS1820不存在LJMPTSR7TSR5;MOVR0,#06BHMOVR1,#03HTSR6;DJNZR0,TSR6;延時MOVR0,#6BHDJNZR1,TSR6TSR7;SETBDS18B20_INRET;;重新寫DS18B20暫存存儲器設(shè)定值;RE_CONFIG;CLREX0;關(guān)閉外部中斷CLRET1JB20H.1,RE_CONFIG1;若DS18B20存在,轉(zhuǎn)RE_CONFIG1RETRE_CONFIG1;MOVA,#0CCH;發(fā)SKIPROM命令LCALLWRITE_1820MOVA,#4EH;發(fā)寫暫存存儲器命令LCALLWRITE_1820MOVA,#00H;TH(報警上限)中寫入00HLCALLWRITE_1820MOVA,#00H;LCALLWRITE_1820MOVA,#1FH;選擇9位溫度分辨率LCALLWRITE_1820SETBEX0SETBET1RET;;讀出轉(zhuǎn)換后的溫度值;GET_TEMPER;CLREX0CLRET1SETBDS18B20_IN;定時入口LCALLINIT_1820JB20H.1,TSS2RET;若DS18B20不存在則返回TSS2;MOVA,#0CCH;跳過ROM匹配LCALLWRITE_1820MOVA,#44H;發(fā)出溫度轉(zhuǎn)換命令LCALLWRITE_1820LCALLINIT_1820MOVA,#0CCH;跳過ROM匹配LCALLWRITE_1820MOVA,#0BEH;發(fā)出讀溫度命令LCALLWRITE_1820LCALLREAD_18200MOV37H,A;將讀出的溫度數(shù)據(jù)保存SETBEX0SETBET1RET;寫DS18B20的程序WRITE_1820;MOVR2,#8CLRCWR1;CLRDS18B20_INNOPNOPNOPNOPRRCAMOVDS18B20_IN,CMOVR3,#35DJNZR3,$SETBDS18B20_INNOPDJNZR2,WR1SETBDS18B20_INRET;;讀DS18B20的程序,從DS18B20中讀出兩個字節(jié)的溫度數(shù)據(jù);READ_18200;MOVR4,#2;將溫度高位和低位從DS18B20中讀出MOVR1,#36H;低位存入36H(TEMPER_L),高位存入35H(TEMPER_H)RE00;MOVR2,#8RE01;CLRCSETBDS18B20_INNOPNOPCLRDS18B20_INNOPNOPNOPSETBDS18B20_INNOPNOPMOVC,DS18B20_INMOVR3,#35RE20;DJNZR3,RE20RRCADJNZR2,RE01MOV@R1,ADECR1DJNZR4,RE00RET;*****************************************;處理溫度BCD碼子程序;***************************************CONVTEMP_BCD;MOVA,TEMPLANLA,#0FHMOVDPTR,#DOTTABMOVCA,@A+DPTRMOVDISP3,AMOVA,TEMPLANLA,#0F0HSWAPAMOVTEMPL,AMOVA,TEMPHANLA,#0FHSWAPAORLA,TEMPLMOVEV,A;存入沒有刪分的當前溫度值MOVB,#100DIVABMOVD100,AMOVA,#10XCHA,BDIVABMOVDISP4,BMOVDISP5,ARETDOTTAB;DB00H,01H,01H,02H,03H,03H,04H,04H,05H,05H,06HDB06H,07H,08H,09H,09H;********************************************************;計算出,所測溫度和當前溫度的差值并查出,要T1定時的次數(shù)SUBBB;PUSHPSWPUSHACCCLRCMOVA,SVSUBBA,EVJNBACC.7,ZHENG;A中存入設(shè)定溫度和當前溫度的差值CPLAINCACJNE A,#5,LLLL;JCLLLMOV50H,A;測試用,檢查,溫差CLRBEEPLLL;CLREX0CLRTR1SETBCONTROL_GSJMPCH;比設(shè)定溫度高出,立即停止加熱ZHENG;SETBEX0SETBBEEPMOV50H,A;測試用,檢查溫度MOVDPTR,#SUMTABMOVCA,@A+DPTRMOVSUMM,ACH;POPACCPOPPSWRETSUMTAB;DB165,125,100,80,80,60,60,50,50,40,40;0~0.101~0.142~0.163~0.224~0.335~0.396~0.487~0.558~0.649~0.7210~0.82DB40,40,30,30,30,20,20,20,20,20,15;11~0.9112~1.013
溫馨提示
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 浙江經(jīng)貿(mào)職業(yè)技術(shù)學院《試驗設(shè)計》2023-2024學年第一學期期末試卷
- 中國民航大學《高等高分子化學》2023-2024學年第一學期期末試卷
- 小學學校網(wǎng)絡文明傳播志愿者考評細則及獎懲制度
- 浙江財經(jīng)大學《電子科學與技術(shù)學科前沿與進展》2023-2024學年第一學期期末試卷
- 張家口學院《新醫(yī)療技術(shù)與法》2023-2024學年第一學期期末試卷
- 缺陷分析與質(zhì)量改進流程規(guī)范
- 五年級列方程應用題100道(有答案)
- 雙11房產(chǎn)銷售策略模板
- 生物研究月報模板
- 新蘇教版一年級數(shù)學下冊第二單元《圖形的初步認識(二)》全部教案(共3課時)
- 區(qū)域合作伙伴合作協(xié)議書范本
- 中學數(shù)學教學設(shè)計全套教學課件
- 環(huán)衛(wèi)公司年終工作總結(jié)
- 2023年德宏隴川縣人民法院招聘聘用制書記員考試真題及答案
- 第四章-國防動員
- 酒店行業(yè)pest模型分析
- 汽車經(jīng)營計劃書
- 2024屆山東省濱州無棣縣聯(lián)考物理九上期末綜合測試試題含解析
- 兩高環(huán)境污染罪司法解釋解讀
- 部編版小學六年級語文上冊第六單元集體備課記錄表
- 肩袖損傷的護理查房課件
評論
0/150
提交評論