由于高新技術的不斷發(fā)展,儀器儀表的微型化,數字化已得到實現。90年代高精確度、高性能、多功能儀器儀表都已經采用微處理器件。而作為工業(yè)控制和自動化領域的各種新技術、新方法、新產品的發(fā)展趨勢和顯著標志智能化是自動化技術當前和今后發(fā)展的動向之一。本文采用AT89C52單片機開發(fā)了鍵盤、液晶顯示器、多路溫度檢測來實現溫度的采集、溫度的文字顯示和圖形顯示三個系統(tǒng)。實驗證明,采用AT89C52開發(fā)的系統(tǒng)性能可靠、成本較低、軟件設計靈活簡單、硬件接口功能豐富,具有擴展性好、通用性強等優(yōu)點。 1 元器件的選擇 1.1 核心芯片的選擇 AT89C52單片機價格低廉,輸入輸出口豐富,無需再另外擴展,簡化了外圍電路。256 B內部RAM,8 kB內部ROM,程序存儲空間大,防止由于字模過多而造成存儲空間不夠。另外由于前期開發(fā)需要多次的寫入、擦除,而89C52可以完成1 000次寫/擦,故滿足要求。 1.2 模數轉換芯片的選擇 ADC0809是8位的A/D轉換芯片,為逐次逼近型。由單一的+5 V電源供電,片內帶有所存功能的8路模擬多路開關,可對8路0~5 V的輸入模擬電壓信號分時進行轉換,完成一次轉換約需100μs;片內的地址譯碼和鎖存電路,將單片機的三條地址信號譯碼生成選擇八路模擬通道。輸出具有TTL三態(tài)鎖存緩沖器,可以直接接到單片機的數據線上。 1.3 溫度傳感器的選擇 溫度傳感器類型很多,目前出現的石英體溫度傳感器如AD590具有很高的穩(wěn)定性、準確度和良好的線性,抗干擾能力強。單總線數字型的溫度傳感器DS18B20直接產生溫度數字信號,不需要A/D轉換,準確度、穩(wěn)定性都相當高,但這些傳感器的適用范圍不廣,不利于以后其他功能的擴展。所以本次采用TREND公司的鉑熱電阻溫度傳感器T/PI/HT,傳感器的工作電壓為24 V,輸出電流為4~20 mA,外接250 Ω精確電阻用于提取電壓時進行A/D轉換,ADC0809的輸入電壓在1~5 V范圍內對應的測量溫度范圍為-10~+160℃。 2 AT89C52的設計應用 2.1 硬件設計 根據設計儀表的功能要求,本設計要完成以下功能: (1)數字化測量,顯示及報警裝置; (2)顯示指定位置溫度的數值及其動態(tài)曲線圖; (3)多路模擬數據的采集、處理; (4)溫度值字體的放縮。 系統(tǒng)結構圖如圖1所示。 2.2 軟件設計 用C語言進行單片機程序設計,采用結構化程序設計思想:在總體設計中采用“自頂而下”(TOP-DOWN)的方法,在程序設計中采用模塊化編程。把整體任務分成一個個子任務,子任務再分子任務,逐層細分,每個子程序都完成其規(guī)定的功能,明確輸入輸出。將這些程序連接起來就構成整體流程圖。模塊化編程,每個模塊結構完整,相互獨立的程序段。如液晶模塊的寫控制指令、寫顯示數據、清屏;數據處理中的工程量轉換,均值濾波等。這些程序可以任意調用、修改,使整個程序結構清晰,組合靈活,維護調試方便。 2.2.1 主流程圖 主流程圖如圖2所示。主要包括程序初始化部分,主要完成的任務是初始化液晶顯示屏,初始化單片機各口狀態(tài)和設初始閾值,檢測位置為第一路;按確定鍵后系統(tǒng)開始工作,顯示第一路位置的溫度及其動態(tài)顯示圖的主頁面;當按下設置鍵時,液晶屏幕顯示一個選擇界面,可選擇設置檢測位置,檢測位置閾值;通過上下鍵可進行選擇,選擇界面的箭頭指向設置位置時,按確定就可進入位置的設置,設置完畢后,確定健返回;直接再按確定鍵可顯示放大的溫度字體。 2.2.2 測溫流程圖和曲線顯示流程 啟動ADC0809時需根據啟動的檢測位置不同查表選用不同的通道地址表;設定ADC0809轉換時間,采用延時等待后,再讀取它的轉換數據;根據溫度傳感器的量程得出轉換公式;為了便于顯示,需要把各位數分離,分離出了百位數、十位、個位、十分位和百分位;建立一個0~9的數字字模表,取模顯示。溫度顯示和曲線顯示流程圖分別如圖3和圖4所示。 2.2.3 閾值設置流程圖 閾值溫度ft為外部變量,在整個程序中都有效,每按一次“上”鍵ft=ft+1,按“下”鍵時ft=ft-1,檢測位置的設定與其相似。閾值設置流程圖如圖5所示。 3 結語 本文對AT89c52單片機在智能溫度檢測中的應用進行了設計研究,該系統(tǒng)還可方便接人其他模擬量傳感器,功能擴展性好。液晶模塊顯示和鍵盤操作設置系統(tǒng)參數,人機交互界面好。檢測數據準確可靠,線性度好,降低了系統(tǒng)成本,增強了系統(tǒng)的通用性。軟件設計采用C語言,可移植性好,結構嚴謹,開發(fā)速度快,大大減少了軟件開發(fā)的時間,具有一定的實用價值。 |