基于SPI接口的溫度測量系統(tǒng)
2 軟件設(shè)計
在單片機系統(tǒng)中,單片機之所以處于核心地位,最重要的原因在于單片機上能夠運行強大的軟件。因此可以說,硬件是設(shè)計的基礎(chǔ),軟件是設(shè)計的關(guān)鍵。只有軟硬件協(xié)調(diào)配合,應(yīng)用系統(tǒng)才能良好的工作。
2.1 系統(tǒng)總流程圖
流程圖分析:當(dāng)電源上電后,系統(tǒng)進行初始化,系統(tǒng)開始運行,啟動TC72溫度傳感器并讀取溫度;若此時溫度沒有超出設(shè)置的報警溫度,則液晶正常顯示;若超出報警溫度,則蜂鳴器開始報警,按ESC鍵可退出報警。液晶正常顯示后,系統(tǒng)程序?qū)︽I盤進行掃描,若有設(shè)置鍵按下,則開始對報警溫度進行設(shè)置,設(shè)置完成后重新讀取溫度并顯示。系統(tǒng)總流程圖如圖5所示。本文引用地址:http://butianyuan.cn/article/192801.htm
2.2 鍵盤程序流程圖
流程圖分析:若有設(shè)置鍵按下,則進入設(shè)置溫度模式;若無按鍵按下,則讀取溫度數(shù)據(jù)送入液晶屏顯示。在設(shè)置模式下設(shè)置溫度,完成后再送數(shù)據(jù)到液晶屏顯示。鍵盤程序流程圖如圖6所示。
2.3 LCD顯示程序流程圖
流程圖分析:首先對1602顯示屏進行初始化,然后進行忙信號檢查,如果BF=0,則開始讀取溫度并寫入相應(yīng)的數(shù)據(jù)進行顯示;如果BF=1,則表示模塊正在進行內(nèi)部操作,暫時不會接收任何數(shù)據(jù)及外部指令,直到BF=0為止。LCD顯示程序流程圖如圖7所示。
3 仿真與調(diào)試
單片機應(yīng)用系統(tǒng)的調(diào)試主要從軟件調(diào)試和硬件調(diào)試兩方面入手。兩種調(diào)試過程緊密相關(guān),而并非分開或孤立的,在基于SPI接口的溫度測量系統(tǒng)設(shè)計中,用到了AVR Studio 4+Win AVR和Proteus ISIS軟件。
模擬調(diào)試:首先運行AVR Studio軟件,在新建項目窗口中輸入設(shè)計所用的程序,輸入完成后進行編譯、運行、保存。然后在Proteus ISIS軟件中畫出硬件電路圖并進行電氣規(guī)則檢查;如果電路設(shè)計無誤,選中單片機ATmega16并雙擊,在對話框中點擊Program File按鈕,找到經(jīng)過AVR Studio軟件編譯生成的hex文件,載入后點擊OK按鈕。完成后在Proteus ISIS的Debug菜單中選擇Execute,即可運行程序。
實現(xiàn)功能的具體方法:按高溫設(shè)置鍵,可調(diào)整當(dāng)前溫度的最高值,按0~9鍵,輸入溫度最高值的大小,按Enter鍵完成設(shè)置;按低溫設(shè)置鍵,可調(diào)整當(dāng)前溫度最低值,按0~9鍵,可輸入溫度最低值大小,按Enter鍵完成設(shè)置;在進行高低溫設(shè)置的過程中,可使用鍵盤中的ESC、Backspace鍵進行返回和刪除操作。高低溫設(shè)置完成后,可通過調(diào)節(jié)TC72溫度傳感器上的加減鍵進行實時溫度調(diào)節(jié);此時,如果調(diào)節(jié)的溫度超出設(shè)置的溫度范圍,就會產(chǎn)生報警。
4 結(jié)束語
設(shè)計了一種基于SPI接口的溫度測量系統(tǒng),介紹了如何利用AVR單片機控制TC72溫度傳感器的新型設(shè)計方法。該設(shè)計利用單片機C語言,以AVR單片機為控制核心,通過使用具有SPI接口功能的TC72溫度傳感器,實現(xiàn)對溫度進行實時監(jiān)控顯示和報警功能。
評論