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

正文內容

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

2025-07-24 20:14 本頁面
 

【文章內容簡介】 式,來顯示和控制溫度的。主要包括四段程序的設計:DS18B20讀溫度程序,數碼管的驅動程序,鍵盤掃描程序,以及抱經處理程序。圖 41 主程序流程圖由于DS18B20采用的是一根數據線實現數據的雙向傳輸,而對AT89S52單片機來說,硬件上并不支持單總線協議,因此,我們必須采用軟件的方法來模擬單總線的協議時序來完成對DS18B20芯片的訪問。DS18B20單線通信功能是分時完成的,它有嚴格的時隙概念。因此系統(tǒng)對DS18B20的各種操作必須按協議進行。操作協議為:初始化DS18B20(發(fā)復位脈沖)→發(fā)ROM功能命令→發(fā)存儲器操作命令→處理數據DS18B20雖然具有測溫系統(tǒng)簡單、測溫精度高、連接方便、占用口線少等優(yōu)點, DS18B20必須首先調用啟動溫度轉換函數,根據數據手冊上對應轉換時間來超作,如為12位轉換,則應該是最大750mS,另外在對DS18B20超作時,時序要求非常嚴格,因此最好禁止系統(tǒng)中斷。由于DS18B20是在一根I/O線上讀寫數據,因此,對讀寫的數據位有著嚴格的時序要求。DS18B20有嚴格的通信協議來保證各位數據傳輸的正確性和完整性。該協議定義了幾種信號的時序:初始化時序、讀時序、寫時序。所有時序都是將主機作為主設備,而每一次命令和數據的傳輸都是從主機主動啟動寫時序開始,如果要求單總線器件回送數據,在進行寫命令后,主機需啟動讀時序完成數據接收。數據和命令的傳輸都是低位在先。DS18B20的讀時序:(1)對于DS18B20的讀時序分為讀0時序和讀1時序兩個過程。 (2)對于DS18B20的讀時隙是從主機把單總線拉低之后,在15秒之內就得釋放單總線,以讓DS18B20把數據傳輸到單總線上。DS18B20在完成一個讀時序過程,至少需要60us才能完成。DS18B20的寫時序:(1)對于DS18B20的寫時序仍然分為寫0時序和寫1時序兩個過程。 (2)對于DS18B20寫0時序和寫1時序的要求不同,當要寫0時序時,單總線要被拉低至少60us,保證DS18B20能夠在15us到45us之間能夠正確地采樣IO總線上的“0”電平,當要寫1時序時,單總線被拉低之后,在15us之內就得釋放單總線。 系統(tǒng)程序設計主要包括三部分:讀出溫度子程序、溫度轉換命令子程序、顯示溫度子程序。圖42讀取溫度DS18B20模塊的流程圖程序代碼為:GET_TEMPER: SETB DQ 。讀出轉換后的溫度值 LCALL INIT_1820 。先復位DS18B20 JB FLAG1,TSS2 RET 。判斷DS1820是否存在?若DS18B20不存在則返回TSS2: MOV A,0CCH 。DS18B20已經被檢測到!!!!!!!!!!!!!!!跳過ROM匹配 LCALL WRITE_1820 MOV A,44H 。發(fā)出溫度轉換命令 LCALL WRITE_1820LCALL DISPLAY 。這里通過調用顯示子程序實現延時一段時間,等待AD轉換結束,12位的話750微秒 LCALL INIT_1820 。準備讀溫度前先復位 MOV A,0CCH 。跳過ROM匹配 LCALL WRITE_1820 MOV A,0BEH 。發(fā)出讀溫度命令 LCALL WRITE_1820 LCALL READ_18200 。將讀出的溫度數據保存到35H/36H RET此流程為鍵盤掃描處理,CPU通過檢測各數據線的狀態(tài)(0或1)就能知道是否有按鍵閉合以及哪個按鍵閉合。鍵盤管理程序的功能是檢測是否有按鍵閉合,如果有按鍵閉合,消除抖動,根據鍵號轉到相應的鍵處理程序,按鍵流程圖如圖43所示。 圖 43鍵盤掃描子程序流程圖 報警處理流程運行程序后,溫度傳感器DS18B20即可對環(huán)境進行溫度采集,并送LED數碼管顯示。我們可以在程序里設定溫度上限值,當采集到的外界溫度高于當前所設定溫度上限值時,程序就會進入報警子程序,觸發(fā)蜂鳴器進行報警。其程序流程圖如圖44所示。圖44 報警子程序流程圖 5 系統(tǒng)調試 硬件電路調試仔細檢查所接電路,按照硬件原理圖接線,理論上是能實現的,如果數碼管不顯示,則應該檢查線路是否正確,或是因為單片機沒有工作,還有集電極和發(fā)射極是否接對。如果只顯示兩個八,則可能是DS18B20沒有接正確,檢查上拉電路是否接好。另外要注意的是,由單片機輸出的控制信號比較小,需要進行放大才能驅動繼電器工作,否則就不能實現升溫過程,通常選用8550三極管來進行放大。還有220V交流電綠色接頭和加熱管黃色接頭必須接正確,否則導致電路燒壞。蜂鳴器是低電平有效。如果能注意這些問題,電路基本不會出錯。 軟件調試如果硬件電路檢查后,沒有問題卻實現不了設計要求,則可能是軟件編程的問題,首先應檢查初始化程序,然后是讀溫度程序,顯示程序,以及繼電器控制程序,對這些分段程序,要注意邏輯順序,調用關系,以及涉及到了標號,有時會因為一個標號而影響程序的執(zhí)行,除此之外,還要熟悉各指令的用法,以免出錯。還有一個容易忽略的問題就是,源程序生成的代碼是否燒入到單片機中,如果這一過程出錯,那不能實現設計要求也是情理之中的事。本人在設計的時候在偉福仿真軟件進行調試,通過此軟件進行調試可以很方便的觀察單片機內部各個寄存器及內部存儲器變化情況,以方便進行調試。圖為單片機功能調試圖。圖51 單片機功能調試圖硬件與軟件調試相結合,仔細檢查各個模塊的設計,舊能順利完成任務,實現設計要求,在調試過程中必須認真耐心,不能有一點馬虎,否則遺漏一個小的問題就會導致整個設計的失敗。 20 系統(tǒng)操作說明本系統(tǒng)上電后數碼管顯示當前測量溫度,此時加熱指示燈和保溫指示燈均不點亮;若此時按“自動加熱”鍵,則單片機自動將預加熱溫度設置為80℃并開始加熱,送出一個加熱信號,并點亮加熱指示燈;若按“溫度設置”鍵,則進入預加熱溫度設置界面,此時數碼管閃爍顯示預設置溫度,此時通過按鍵“+”和“-”進行設置溫度,預設置溫度按“5”遞增或遞減,設置好溫度后再按一次“溫度設置”鍵確定,單片機保存預設置溫度,并開始加熱。此時單片機通過數碼管顯示實時檢測的溫度并和預設置溫度進行對比,如果實測溫度大于或等于預設置溫度,則單片機發(fā)出停止加熱信號并熄滅加熱指示燈,點亮保溫指示燈,且當超過預設溫度時發(fā)出報警;當溫度下降到預設置溫度以下5度時,單片機再次發(fā)出加熱信號,同時熄滅保溫指示燈,點亮加熱指示燈,依次循環(huán)控制。1.靜態(tài)數據測試取一桶凈水,改變它的溫度,觀察數碼管上顯示的溫度值,并用溫度計進行測溫,記錄兩組數據,比較差異。記錄表如下:表51 靜態(tài)溫度數據測試表溫度℃123456顯示溫度234763778490測量溫度244763808491有測試數據可知,本系統(tǒng)測溫結果與溫度計測溫基本一致,能滿足設計,證明了設計的合理性。2.動態(tài)數據測試進行溫度設定,通過設定溫度值(75℃),觀察加熱管的加熱情況,以及數碼管的顯示值,再用溫度計測量水溫,每隔一段時間記錄一次數據,將兩組值進行比較。記錄表如下:(設定前溫度為25℃)表52 靜態(tài)溫度數據測試表組數分組12345678910111213顯示溫度25293439424853586267707375測量溫度25283438424953596367717475通過上表可看出在加熱的過程中,顯示的溫度與實測的溫度近似一樣,說明系統(tǒng)的設計達到精度要求,但還是略有偏差,基本
點擊復制文檔內容
法律信息相關推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1