基于C8051F020單片機的多路壓力測量儀
壓力測量對實時監(jiān)測和安全生產(chǎn)具有重要的意義。在工業(yè)生產(chǎn)中,為了高效、安全生產(chǎn),必須有效控制生產(chǎn)過程中的諸如壓力、流量、溫度等主要參數(shù)。由于壓力控制在生產(chǎn)過程中起著決定性的安全作用,因此有必要準(zhǔn)確測量壓力。為了測到不同位置的壓力值,研制了基于C8051F020單片機的測量儀。通過壓力傳感器將需要測量的位置的壓力信號轉(zhuǎn)化為電信號,再經(jīng)過OP07運算放大器進(jìn)行信號放大,送至C805lF020單片機內(nèi)部的高速率12位A/D轉(zhuǎn)換器,然后將模擬信號轉(zhuǎn)換成單片機可以識別的數(shù)字信號,再經(jīng)單片機轉(zhuǎn)換成液晶顯示器可以識別的信息,最后顯示輸出。與此同時,可以利用SD卡存儲器將各通道設(shè)定的壓力值、系統(tǒng)參數(shù)存儲起來,以便在系統(tǒng)斷電或復(fù)位后,能使其繼續(xù)運行,增強系統(tǒng)的抗干擾性能。
2 硬件電路
圖l給出多路壓力測量儀的系統(tǒng)框圖。其硬件部分主要由壓力傳感器、C8051F020單片機、SD卡存儲器、液晶顯示器、鍵盤及信號調(diào)理電路等組成。
2.1 壓力傳感器信號采集電路
圖2給卅壓力傳感器信號采集電路。它選用了測量范圍廣,精度較高,性能價格比好的電阻應(yīng)變式壓力傳感器;信號放大部分采用功耗低,輸入失調(diào)電壓小,線性度好的OP07運算放大器:A/D轉(zhuǎn)換模塊采用C8051F020內(nèi)部設(shè)置的高速率12位A/D轉(zhuǎn)換器。圖2中OP07的輸出失調(diào)電壓為2 mV,通過滑動變阻器R8可調(diào)節(jié)輸出失調(diào)電壓的大小。
2.2 單片機處理電路
單片機處理電路是測量儀的核心。在此采用美國Cygnal公司生產(chǎn)的C805lF020微控制器。該器件采用獨特的CIP-8051結(jié)構(gòu),對指令運行實行流水作業(yè),大大提高了指令的運行速度,可在25 MHz時鐘頻率下提供高達(dá)25 MI/s的輸出,并具有下述獨特功能:①真正12位、100 Ks/s的8通道A/D轉(zhuǎn)換器,并帶PGA和模擬多路開關(guān);②64 K字節(jié)可在系統(tǒng)編程的Flash存儲器,其扇區(qū)為512字節(jié);③兩個12位D/A轉(zhuǎn)換器,具有可編程數(shù)據(jù)更新方式;④工作電壓為2.7~3.6V;⑤用于硬件實現(xiàn)的SPI,SMBus/I2C和兩個UART串行接口;⑥片內(nèi)看門狗定時器、VDD監(jiān)視器和溫度傳感器。
2.3 SD卡存儲電路
將SD卡作為外部掉電存儲介質(zhì)用于多路壓力測量儀中,利用C8051F020單片機的SPI接口,實現(xiàn)單片機與SD卡存儲數(shù)據(jù)的擴展,并設(shè)計了單片機的SD卡驅(qū)動電路.以滿足測量儀對存儲大容量數(shù)據(jù)的要求。SD卡的工作模式有SD模式和SPI模式兩種。在此,多路壓力測量儀選用SD卡.且工作在SPI模式下。表1給出SD卡各引腳功能定義。圖3給出SD卡與單片機的連接電路。其中,CS是SD卡的片選線,在SPI模式下,CS必須保持低電平有效;DI不但傳輸數(shù)據(jù),還發(fā)送命令,其傳輸方向是由單片機到SD卡;D0除了發(fā)送數(shù)據(jù),還傳送應(yīng)答信號,其傳輸方向是由SD卡到單片機;SCLK是操作SD卡的時鐘線。相應(yīng)地將C805lF020的交叉開關(guān)配置成SPI模式,與SD卡所對應(yīng)的引腳連接,并針對SPI總線電路設(shè)計了上拉電阻。
2.4 液晶顯示電路
液晶顯示模塊選用HSl2864圖形點陣液晶顯示器。圖4給出它與C8051F020單片機的連接電路。主要由行驅(qū)動器/列驅(qū)動器及128x64全點陣液晶顯示器組成,可完成圖形、漢字和數(shù)據(jù)的顯示。圖4中CSl為片選1;CS2為片選2;GND為電源地;VCC為電源正;VO為液晶顯示驅(qū)動電源;RS為數(shù)據(jù),指令選擇信號;R/W為讀/寫選擇信號;E為使能信號;DBO~DB7為數(shù)據(jù)總線;A為背光電壓正:K為背光電壓負(fù):RST為復(fù)位信號;VOUT為負(fù)電壓輸出。必須在使能線E為低時,改變控制線R/W,CSl,CS2,RS;在使能線E為高時,不能改變控制線R/W,CSl,CS2,RS;但可以從數(shù)據(jù)線DB0~DB7輸出數(shù)據(jù)。
根據(jù)指令的要求及HSl2864的時序,單片機對HSl2864的訪問方式有直接訪問方式和間接訪問方式兩種。前者,無需輔助器件即可控制液晶顯示器的顯示;后者,則需要加一些輔助器件才可控制液晶顯示器的顯示。在此,采用直接訪問方式對液晶進(jìn)行操作。
3 軟件設(shè)計
為了使測量儀獲得測量壓力值并顯示相關(guān)數(shù)據(jù)到液晶上,必須設(shè)計相應(yīng)的軟件系統(tǒng)來支持硬件電路。在此,采用Keil C軟件編程進(jìn)行測量儀軟件的設(shè)計。圖5給出具體的單片機數(shù)據(jù)采集和處理子程序軟件流程。其中,系統(tǒng)程序由主程序、數(shù)據(jù)采集子程序、數(shù)據(jù)處理子程序、中斷子程序、顯示子程序及存儲子程序等組成。
主程序代碼如下:
4 測試結(jié)果
在完成測試儀硬件電路的設(shè)計后.需要通過單片機編程器將設(shè)計的軟件程序下載到單片機中,這樣就制成了多路壓力測量儀。將壓力傳感器連接到待測位置后,即可通過液晶顯示器看出各測點的壓力變化情況。經(jīng)測試,該系統(tǒng)穩(wěn)定,功耗低,實時性好。
5 結(jié)語
設(shè)計中,該測量儀采用了高精度壓力傳感器、低輸入失調(diào)電壓和線性度好的運算放大器構(gòu)成信號調(diào)理電路,同時還采用了12位高速A/D轉(zhuǎn)換采集模塊。因此,采用它可提高測量精度,滿足用戶需要。此外,由于該測量儀采用了功能強大的C8051F020單片機作為控制核心,因此電路結(jié)構(gòu)簡單,成本低,性能好。不僅能降低系統(tǒng)成本,而且因外圍電路簡單,還可減少干擾。