基于SOC的高精度紅外測溫系統設計
在本設計中采用第二種濾波電路,因為集成運放的開(kāi)環(huán)電壓增益和輸入阻抗均很高,輸出阻抗又低,所以有源濾波電路有一定的電壓放大和緩沖作用,濾波效果好,提高了傳感器信號的準確度。
2.3 AD轉換電路
TLC2543是 12位開(kāi)關(guān)電容逐次逼近模數轉換器。其設置方法如下:DATA INPUT端串行輸入的 8位數據,它規定了 TLC2543要轉換的模擬量通道、轉換后的輸出數據長(cháng)度、輸出數據的格式。其中高4位(D7~ D4)決定通道號。對于0通道至l0通道,該4位分別為 0000~IOIOH,當為 1011~1101時(shí),用于對 TLC2543的自檢,當為 1110時(shí) ,TLC2543進(jìn)入休眠狀態(tài)。低 4位決定輸出數據長(cháng)度及格式。其中 D3、D2決定輸出數據長(cháng)度,0l表示輸出數據長(cháng)度為 8位 ,11表示輸出數據長(cháng)度為 16位 ,其他為 12位 。D1決定輸出數據是高位先送出 ,還是低位先送出,為 0表示高位先送出 。D0決定輸出數據是單極性(二 進(jìn) 制 )還是雙極性(2的補碼),若為單極性,該位為0,反之為1。當片選 cs從高到低的時(shí)候,開(kāi)始一次工作周期,此時(shí) EOC為高,輸入數據寄存器被置為 0,輸出數據寄存器的內容是隨機的。開(kāi)始時(shí),片選 CS為高,I/OCLOCK、DATAINPUT被禁止,DATAOU呈高阻狀態(tài) ,EOC為高。使變低,I/OCLOCK、DATAINPUT使能,DATAOU脫離高阻狀態(tài) 。12個(gè)時(shí)鐘信號從 I/OCLOCK端依次加入,隨著(zhù)時(shí)鐘信號的加入,控制字從 DATAINPUT一位一位地在時(shí)鐘信號的上升沿時(shí)被送入TLC2543(高位先送入),同時(shí)上一周期轉換的A/D數據,即輸出數據寄存器中的數據從 DATAOUT一位一位地移出。TLC2543收到第 4個(gè)時(shí)鐘信號后,通道號也已收到,此時(shí)TLC2543開(kāi)始對選定通道的模擬量進(jìn)行采樣,并保持到第 12個(gè)時(shí)鐘的下降沿。在第 12個(gè)時(shí)鐘下降沿,EOC變低,開(kāi)始對本次采樣的模擬量進(jìn)行A/D轉換,轉換時(shí)間約需lOt1s,轉換完成后 EOC變高,轉換的數據在輸出數據寄存器中,待下一個(gè)工作周期輸出。該芯片與微處理器接口的時(shí)候只需占用四個(gè) IO口,其 12個(gè)時(shí)鐘的工作時(shí)序看參考相關(guān)手冊。
2.4 SOC級微處理器特性本系統所采用的是 SOC級 STC系列單片機,指令代碼完全兼容傳統 51單片機,工作頻率可達48HZ,本設計中使用的微處理器為 6時(shí)鐘周期,故其工作頻率相當于普通 51單片機的96MHZ,為本系統提供了速度保證。另外,本設計選用的 STC89C58RD含有 32K的程序存儲區,并在內部擴展了 32K的數據 FLASH存儲器,從而使本設計能方便的擴展相關(guān)功能,如參數的記憶功能等。該微處理器還支持 IAP與ISP,不需專(zhuān)用的編程器,通過(guò)普通串口即可調試程序??垢蓴_也是選用該單片機的理由之一,本設計主要應用于對工業(yè)設備進(jìn)行溫度監控,故抗干擾十分重要。
3.系統軟件設計
紅外線(xiàn)溫度檢測系統的軟件設計主要有如下幾個(gè)主要模塊:初始化模塊pI/O口查詢(xún)模塊pAD轉化模塊p數據處理模塊p數據糾正模塊p顯示驅動(dòng)模塊等。另外還一個(gè)中斷程序處理模塊:0外部中斷,主要用于參數設定。
軟件設計流程如圖 3所示。
整個(gè)程序采用 c51編寫(xiě),初始化模塊主要是初始化各路報警信號,將發(fā)射率等參數設定成默認的值并顯示。主程序不斷通過(guò) I/O口查詢(xún)模塊掃描 AD轉換模塊送過(guò)來(lái)的 12位數字信號,本程序中采用的是 SPI總線(xiàn)的通信方式,串行的接口方式節約了大量 IO口。接受過(guò)來(lái)的數字信號通過(guò)數據處理模塊處理之后按查表的方式得出溫度值,把該溫度值經(jīng)過(guò)數據糾正模塊糾正后送顯示模塊顯示,并將數據傳給上位機界面進(jìn)行顯示,從而完成了一路溫度測量。在程序的運行過(guò)程中,隨時(shí)可以對發(fā)射率,報警值等參數進(jìn)行設定。當功能鍵按下的時(shí)候觸發(fā)單片機的 0外部中斷,在中斷程序中對參數設定按鍵進(jìn)行掃描,并將結果存儲起來(lái)。每路測溫結束后系統通過(guò) RS485將溫度值傳送給上位機,在 VB界面上顯示。
評論