基于AVR單片機的電冰箱控制系統(tǒng)的設計
1)主程序
主程序是整個電冰箱的總控制程序,比如控制單元的初始化、控制中斷、定時、顯示、鍵盤程序的啟動與重復等。主程序流程框圖如圖2所示。本文引用地址:http://butianyuan.cn/article/172180.htm
2)子程序
子程序包括顯示子程序、鍵盤掃描子程序、依標志位調(diào)相應的顯示子程序、加一及減一處理子程序、讀ADC0809通道轉換數(shù)子程序、速冷處理子程序、溫度比較并處理子程序和除霜控制子程序等8個子程序。
顯示子程序就是將顯示緩沖區(qū)的數(shù)據(jù)一位一位地從RXD端輸出給顯示器,顯示出數(shù)據(jù)和狀態(tài)。鍵盤掃描子程序具有判斷鍵盤上是否有鍵按下和判斷閉合的鍵號兩個方面的功能。
依標志位調(diào)相應的顯示子程序就是根據(jù)標志位的內(nèi)容把相應的設置數(shù)通過7段字型碼轉換后送入到顯示緩沖區(qū)去。
加一與減一處理子程序都是當主程序判斷到是加一或減一操作時就是依標志位將相應的設置數(shù)加一或是減一處理。
讀ADC0809通道轉換數(shù)子程序就是啟動ADC0809并且將轉換后的數(shù)讀入相應的緩沖區(qū)中。
速冷控制子程序就是人工設定一個連續(xù)速冷時間,單片機再進行控制,讓壓縮機連續(xù)工作時間為設定的連續(xù)速冷時間。
溫度比較并處理就是將冷凍室溫度與冷藏室溫度實際溫度的平均值與設置溫度進行比較,若超出范圍就進行處理,否則就返回。
除霜控制子程序就是將ADC0809轉換后的值與霜厚為3 mm時的對應值進行比較,若小于3 mm時就不需要除霜,否則就啟動除霜加熱絲進行除霜。
3)中斷程序
當中央處理器正在處理內(nèi)部數(shù)據(jù)時,外界發(fā)生了緊急情況,要求CPU暫停當前的工作轉去處理這個緊急事件。處理完畢后,再回到原來被中斷的地址,繼續(xù)原來的工作,這樣的過程稱為中斷。實現(xiàn)這一功能的部件稱為中斷系統(tǒng),申請CPU中斷的請求源稱為中斷源,處理“急件”的程序被稱為中斷服務程序,是事先編好的某個特定的程序。本系統(tǒng)中涉及到了T0和T1中斷服務程序。
T0中斷服務程序主要完成讀ADC0809通道的轉換數(shù)、電源電壓欠壓、過壓處理、并門狀態(tài)檢測及處理等。
T1中斷服務程序主要完成3 min定時及根據(jù)檢測結果,比較、分析、控制執(zhí)行各元件的工作。即進行速冷處理、溫度比較并處理、霜厚控制并處理等。
2 結束語
該系統(tǒng)在設計出之后進行了多次試驗,試驗數(shù)據(jù)表明該系統(tǒng)的各項性能指標和功能達到了預期的設計目的,具有功能齊全、操作簡單、使用方便等優(yōu)點,在國內(nèi)同類產(chǎn)品中處于較高水平,具有較高的實用和推廣價值。
評論