freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

畢業(yè)論文-基于at89s52單片機的水溫控制器的設(shè)計(編輯修改稿)

2025-02-12 18:39 本頁面
 

【文章內(nèi)容簡介】 1GND2OUT3U1L 78 0 5( 大 )12+ C122 0 U FV C CR11K1 2D3LED 圖 311 系統(tǒng)電源設(shè)計圖 報警電路設(shè)計 同時可以在系統(tǒng)里設(shè)定溫度上限值,由于加熱停止后,加熱管還有余熱當(dāng)采集到的外界溫度高于當(dāng)前所設(shè)定溫度上限 值時,程序就會進入報警子程序,觸發(fā)蜂鳴器進行報警。報警電路原理圖如圖所示。 VC CR 1 94 .7 KE1C3B2Q48 5 5 0FM 1B E L LP 2 .7 圖 312 報警電路 圖 圖中的三極管 8550的作用是增加驅(qū)動能力,比 9012的驅(qū)動電流還大些,因此選用8550。當(dāng)程序進入報警子程序時,把 0,就會觸發(fā)蜂鳴器, 為了使報警聲音效果更好,對 , 發(fā)出報警 嘟嚕 聲音。 加熱管控制電路設(shè)計 繼電器是常用的輸出控制接口,可以做交直流信號的輸出切換。它具有控制系統(tǒng)(又稱輸入回路)和被控制系統(tǒng)(又稱輸出回路),通常應(yīng)用于自動控制電路中,它實際上是用較小的電流去控制較 大電流的一種 “ 自動開關(guān) ” 。故在電路中起著自動調(diào)節(jié)、安全 12 保護、轉(zhuǎn)換電路等作用。繼電器控制接點操作說明如下: ● COM: Common,共同點。輸出控制接點的共同接點。 ● NC: Normal Close常閉點。以 Com為共同點, NC與 COM在平時是呈導(dǎo)通狀態(tài)的。 ● NO: Normal Open常開點。 NO與 COM在平時是呈開路狀態(tài)的,當(dāng)繼電器動作時,NO與 COM導(dǎo)通, NC與 COM則呈開路狀態(tài)。 當(dāng) 89S52的 ,繼電器不導(dǎo)通,反之當(dāng)輸出低電平時,繼電器導(dǎo)通,這樣就激活了連接回路。 圖 313 單片機控制繼電器電路圖 4 系統(tǒng)軟件設(shè)計 本系統(tǒng)采用的是循環(huán)查詢方式,來顯示和控制溫度的。主要包括四段程序的設(shè)計:DS18B20讀溫度程序,數(shù)碼管的驅(qū)動程序,鍵盤掃描程序,以及抱經(jīng)處理程序。 主程序流程圖 (這兩個圖簡單說明一下) 13 自 動 加 熱 ? 設(shè) 置 溫 度 ?NYNY溫 度 ‘ + ’ 溫 度 ‘ ’ 設(shè) 置 完 成 ?N NY Y N加 熱控 制開 始初 始 化讀 D 1 8 B 2 0溫 度 轉(zhuǎn) 換顯 示 溫 度加 熱 溫 度 設(shè) 置 8 0 ℃預(yù) 設(shè) 溫 度 + 5 預(yù) 設(shè) 溫 度 5Y實 測 溫 度 = 預(yù) 設(shè) 溫 度 保 溫 指 示 燈 亮 , 停 止 加 熱 加 熱 指 示 燈 亮 , 開 始 加 熱設(shè) 置 溫 度 ? 溫 度 ‘ + ’預(yù) 設(shè) 溫 度 加 5 溫 度 ‘ ’預(yù) 設(shè) 溫 度 減 5設(shè) 置 完 成 ?加 熱控 制實 測 溫 度 預(yù) 設(shè) 溫 度加 熱控 制讀 1 8 B 2 0溫 度 轉(zhuǎn) 換顯 示 溫 度實 測 溫 度 = 預(yù) 設(shè) 溫 度 加 熱 指 示 燈 亮 , 開 始 加 熱實 測 溫 度 預(yù) 設(shè) 溫 度保 溫 指 示 燈 亮 , 停 止 加 熱YYYNNYYNNNNNYY圖 41 主程序流程 圖 15 5 系統(tǒng)調(diào)試 硬件電路調(diào)試 仔細檢查所接電路,按照硬件原理圖接線,理論上是能實現(xiàn)的,如果數(shù)碼管不顯示,則應(yīng)該檢查線路是 否正確,或是因為單片機沒有工作,還有集電極和發(fā)射極是否接對。如果只顯示兩個八,則可能是 DS18B20沒有接正確,檢查上拉電路是否接好。另外要注意的是,由單片機輸出的控制信號比較小,需要進行放大才能驅(qū)動繼電器工作,否則就不能實現(xiàn)升溫過程,通常選用 8550三極管來進行放大。還有 220V交流電綠色接頭和加熱管黃色接頭必須接正確,否則導(dǎo)致電路燒壞。蜂鳴器是低電平有效。如果能注意這些問題,電路基本不會出錯。 軟件調(diào)試 如果硬件電路檢查后,沒有問題卻實現(xiàn)不了設(shè)計要求,則可能是軟件編程的問題,首先應(yīng)檢查初始化程序 ,然后是讀溫度程序,顯示程序,以及繼電器控制程序,對這些分段程序,要注意邏輯順序,調(diào)用關(guān)系,以及涉及到了標(biāo)號,有時會因為一個標(biāo)號而影響程序的執(zhí)行,除此之外,還要熟悉各指令的用法,以免出錯。還有一個容易忽略的問題就是,源程序生成的代碼是否燒入到單片機中,如果這一過程出錯,那不能實現(xiàn)設(shè)計要求也是情理之中的事。本人在設(shè)計的時候在偉福仿真軟件進行調(diào)試,通過此軟件進行調(diào)試可以很方便的觀察單片機內(nèi)部各個寄存器及內(nèi)部存儲器變化情況,以方便進行調(diào)試。圖為單片機功能調(diào)試圖。 圖 51 單片機功能調(diào)試圖 16 硬件與軟件調(diào)試相 結(jié)合,仔細檢查各個模塊的設(shè)計,舊能順利完成任務(wù),實現(xiàn)設(shè)計要求,在調(diào)試過程中必須認真耐心,不能有一點馬虎,否則遺漏一個小的問題就會導(dǎo)致整個設(shè)計的失敗。 系統(tǒng)操作說明 本系統(tǒng)上電后數(shù)碼管顯示當(dāng)前測量溫度,此時加熱指示燈和保溫指示燈均不點亮;若此時按 “ 自動加熱 ” 鍵,則單片機自動將預(yù)加熱溫度設(shè)置為 80℃ 并開始加熱,送出一個加熱信號,并點亮加熱指示燈;若按 “ 溫度設(shè)置 ” 鍵,則進入預(yù)加熱溫度設(shè)置界面,此時數(shù)碼管閃爍顯示預(yù)設(shè)置溫度,此時通過按鍵 “ + ” 和“ - ” 進行設(shè)置溫度,預(yù)設(shè)置溫度按 “ 5” 遞增或遞減,設(shè)置好溫度后再 按一次“ 溫度設(shè)置 ” 鍵確定,單片機保存預(yù)設(shè)置溫度,并開始加熱。此時單片機通過數(shù)碼管顯示實時檢測的溫度并和預(yù)設(shè)置溫度進行對比,如果實測溫度大于或等于預(yù)設(shè)置溫度,則單片機發(fā)出停止加熱信號并熄滅加熱指示燈,點亮保溫指示燈,且當(dāng)超過預(yù)設(shè)溫度時發(fā)出報警;當(dāng)溫度下降到預(yù)設(shè)置溫度以下 5度時,單片機再次發(fā)出加熱信號,同時熄滅保溫指示燈,點亮加熱指示燈,依次循環(huán)控制。 總 結(jié) 通過本次的設(shè)計,使我們不僅對單片機這門課程有了更深刻的認識,懂得了如何運用課本知識結(jié)合實際來完成定時器的顯示和編程方法以及數(shù)碼顯示電路的驅(qū)動方法,使 我們能夠很快的適應(yīng)現(xiàn)代控制技術(shù)發(fā)展的需求,同時也提高了我們的思維能力和實際操作能力,為以后更好的走上工作崗位奠定了堅實的基礎(chǔ)。另外,這次的設(shè)計還讓我更進一步的認識了關(guān)于 AT89S52 等芯片的引腳功能以及使用方法,使我學(xué)會了應(yīng)用不同的芯片來配合完成整個設(shè)計的操作。 在做硬件電路的這段時間里,從思考設(shè)計到對電路的調(diào)試經(jīng)過了許多困難。同樣在對軟件進行設(shè)計時,也可為一路坎坷。但是通過對軟硬件不斷撞墻,不斷思考解決問題的過程中,我學(xué)會了很多東西,同時對單片機也有了更深的認識。在做設(shè)計的時候,很需要耐心和對事物的細心 ,很多時候一個簡單問題的一個簡單的疏忽就會導(dǎo)致整個電路的不工作,只有不斷的檢查不斷的調(diào)試,才能真正完成一個設(shè)計的制作。只有不斷的發(fā)現(xiàn)問題解決問題,才能從問題中改變自己,提升自己對單片機的能力。 此設(shè)計雖然能夠完成溫度的顯示和控制,但功能和精度有待于進一步提高。以后可以通過加入 PID 算法優(yōu)化控制功能,并通過液晶顯示屏實時顯示溫度。 17 附錄一:系統(tǒng)源程序 EMPER_L EQU 29H 。用于保存讀出溫度的低 8 位 TEMPER_H EQU 28H 。用于保存讀出溫度的高 8 位 FLAG1 EQU 38H 。是否檢測到 DS18B20 標(biāo)志位 A_BIT EQU 20H 。數(shù)碼管個位數(shù)存放內(nèi)存位置 B_BIT EQU 21H 。數(shù)碼管十位數(shù)存放內(nèi)存位置 B1 EQU 70H 。溫度小數(shù)點位 A1 EQU 71H 。設(shè)定溫度值 DQ EQU 。DQ 為 DS18B20 數(shù)據(jù)位 BELL EQU 。//蜂鳴報警 ORG 0000H 。單片機內(nèi)存分配申明 ! AJMP MAIN0 。///////////////////////////////////前面的都是定義 MAIN: MOV R0,10 M1: CPL ACALL DELAY125 DJNZ R0,M1 。//此段為燈閃 5 次 ,無實際意義 。/////////////////////////////////////////////// MAIN0: MOV A1,80 。默認加熱為 80 度 MAIN1: LCALL D1820 。調(diào)用讀溫度子程序 LCALL DISPLAY 。調(diào)用數(shù)碼管顯示子程序 MOV A,29H CLR C CJNE A,A1,MAIN1_1 SETB BELL 。//溫度相等 ,關(guān)閉蜂鳴器 AJMP MAIN1_1_A 。//下等不用叫蜂鳴器 MAIN1_1: JC MAIN1_2 。為 1 轉(zhuǎn)移 ,表示小于設(shè)定溫度 CPL BELL 。蜂鳴器斷續(xù)鳴叫 MAIN1_1_A: CLR 。//下面是表示沒達到溫度 SETB AJMP MAIN2 18 。/////////////////////////////////////主要是檢測溫度是否小于設(shè)定的溫度 ,小于 ,則開發(fā)熱管 CLR MAIN1_2: SETB BELL 。//關(guān)閉蜂鳴器 CLR 。//開發(fā)熱管 SETB 。///////////////////////////////上面的是大于 ,關(guān)發(fā)熱管 MAIN2: JB ,MAIN1 。//看 有否按下 ACALL DELAY125 。//延時防抖動 ,常用的手法 ,網(wǎng)上很多介紹的 JB ,MAIN1 。//再次查看 CLR JNB ,$ 。//等按鍵完全松手才 進入 ! SETB SETB 。///檢測到 按鍵后后進入設(shè)定溫度 MAIN2_1: ACALL DISPLAY1 JB ,MAIN2_2 ACALL DELAY125 JB ,MAIN2_2 JNB ,$ MOV A,5 ADD A,A1 CLR C CJNE A,100,MAIN2_1_1 MOV A,99 AJMP MAIN2_1_3 。////////////////上面這一段是 +5 度按鍵 ,按下 +5 度 MAIN2_1_1: JC MAIN2_1_3 MAIN2_1_2: CLR C MOV A,99 MAIN2_1_3: MOV A1,A MAIN2_2: JB ,MAIN2_3 19 ACALL DELAY125 JB ,MAIN2_3 JNB ,$ MOV A,A1 CJNE A,99,ZY1 MOV B,4 AJMP ZY2 ZY1: MOV B,5 ZY2: CLR C MOV A,A1 SUBB A,B MAIN2_2_1: JNC MAIN2_2_2 MOV A1,0 AJMP MAIN2_3 。////////////////上面這一段是 5 度按鍵 ,按下 5 度 MAIN2_2_2: MOV A1,A MAIN2_3: JB ,MAIN2_1 ACALL DELAY125 JB ,MAIN2_1 CLR JNB ,$ SETB AJMP MAIN1 。/////////////上面這一段是退出的意思的 ! D1820: LCALL GET_TEMPER 。調(diào)用讀溫度子程序 MOV B1,29H MOV A,29H MOV C,40H 。將 28H 中的最低位移入 C RRC A MOV C,41H RRC A 20 MOV C,42H RRC A MOV C,43H
點擊復(fù)制文檔內(nèi)容
規(guī)章制度相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1