利用ADuC834構(gòu)成二次儀表系統(tǒng)
aduc834是一種真正意義上的完整的數(shù)據(jù)采集系統(tǒng)芯片。這種嶄新的微處理轉(zhuǎn)換器和先進(jìn)的混合信號處理工藝顯著提高了數(shù)據(jù)采集系統(tǒng)的性能,并大幅度減少了應(yīng)用系統(tǒng)的開發(fā)時間和成本。aduc834是美國模擬器件(ad)公司最新投入市場的一款微處理轉(zhuǎn)換器產(chǎn)品,它集成了雙路σ-δ型adc、溫度傳感器、增益可程控放大器(pga)、8位51
mcu、62k的可編程程序eeprom、4k的數(shù)據(jù)flash memory、2304字節(jié)的片內(nèi)ram、12位dac以及定時器、i2c兼容的spi和標(biāo)準(zhǔn)的串行i/o等。由此可見,aduc834本身就是一個內(nèi)嵌mcu的高性能數(shù)據(jù)采集系統(tǒng),利用它可以極方便地構(gòu)成各種二次儀表系統(tǒng)。
1 aduc834芯片介紹
aduc834內(nèi)部集成了兩路獨(dú)立的σ-δadc,其中主通道adc為24位,輔助通道adc為16位。兩個獨(dú)立的adc通道由于使用了數(shù)字濾波,因而可以實(shí)現(xiàn)寬動態(tài)范圍的低頻信號測量,非常適用于稱重儀、張力應(yīng)變儀、壓力轉(zhuǎn)換器和溫度測量等方面的應(yīng)用。其中主通道的ad輸入范圍在±20mv~±2.56v之間分為8檔,使用時可任選一檔。由于使用了σ-δ轉(zhuǎn)換技術(shù),因此可以實(shí)現(xiàn)高達(dá)24位無丟失碼性能,且輔助通道還可以作為溫度傳感器使用。
aduc834利用32khz晶振來驅(qū)動片內(nèi)鎖相環(huán)(pll)以產(chǎn)生內(nèi)部所需要的工作頻率,它的微控制器內(nèi)核與8051兼容。片內(nèi)外圍設(shè)備包括一個與spi和i2c兼容的串行端口、多路數(shù)字輸入/輸出端口、看門狗定時器、電源監(jiān)視器以及時間間隔計數(shù)器。同時片內(nèi)還提供了62kb閃速/電擦除程序存儲器以及2304字節(jié)的片內(nèi)ram。
aduc834本身能提供程序串行下載,所以可以直接下載調(diào)試程序,非常方便于程序的開發(fā)和設(shè)計。因此,利用aduc834可以非常簡單地制作各種復(fù)雜的二次儀表。
2二次儀表的硬件電路設(shè)計
本系統(tǒng)設(shè)計主要針對兩路傳感器進(jìn)行采樣,然后進(jìn)行數(shù)據(jù)處理和相應(yīng)的數(shù)據(jù)顯示,同時要求有復(fù)雜菜單設(shè)計。由于數(shù)據(jù)處理過程中要用到浮點(diǎn)乘除運(yùn)算,同時要求有菜單設(shè)置,因此,利用aduc834的62k程序存儲空間可以進(jìn)行各種復(fù)雜的運(yùn)算和處理,而不需要外擴(kuò)程序存儲器。圖1是其硬件設(shè)計原理圖。
本系統(tǒng)利用aduc834的p3口構(gòu)成3×4鍵盤,并通過p0、p2口和74hc138譯碼器來構(gòu)成10個數(shù)碼管動態(tài)顯示屏,然后利用aduc834的p1.0、p1.1和74hc164構(gòu)成8個發(fā)光led的顯示,同時利用a-duc834的串口spi功能進(jìn)行軟件調(diào)試。
2.1數(shù)碼管的動態(tài)顯示
利用aduc834的p2口的p2.0~p2.4,并通過74hc138譯碼可以得到8個地址選通信號,而p2.5和p2.6則用于構(gòu)成剩下的2個選通信號,同時把p0口作為顯示的數(shù)據(jù)接口。
用程序可選擇aduc834定時器t2的自裝入方式,并可將其定時為2ms,同時可采用動態(tài)方式刷新數(shù)碼管的顯示緩沖區(qū),以實(shí)現(xiàn)動態(tài)顯示。
2.2鍵盤控制電路
由aduc834的p3口的p3.0~p3.6可以構(gòu)成鍵盤控制電路,其原理圖如圖2所示。
由圖2可以看出,該鍵盤有3行4列共12個鍵,使用7個i/0作為控制線,其中采用p3.0、p3.1、p3.2作為行掃描線,采用p3.3~p3.6作為列回復(fù)線來構(gòu)成矩陣鍵盤。運(yùn)行中,當(dāng)有鍵按下時,程序并不立即進(jìn)入按鍵處理程序,只有在按鍵按下又松開的時刻才進(jìn)入程序處理,因?yàn)檫@樣可防止按鍵的連擊和抖動。
2.3發(fā)光led設(shè)計
由于本系統(tǒng)要求有8種狀態(tài)顯示,故需要使用8個發(fā)光led來表示當(dāng)前程序運(yùn)行的不同狀態(tài)。而這可利用p1.0、p1.1和74hc164控制8個發(fā)光數(shù)碼管來進(jìn)行顯示。
3二次儀表的軟件程序設(shè)計
3.1數(shù)據(jù)采集程序
進(jìn)行ad采集時,可選擇aduc834的內(nèi)部參考電壓(注意此時內(nèi)部參考電壓是vref=1.25v,所以adc通道輸入范圍都縮小一半),并通過寫寄存器ad0con的rn2、rn1和rn0來選擇不同的輸入范圍,同時通過寫寄存器ad0con的ch1、ch0來進(jìn)行通道替換,以實(shí)現(xiàn)對兩個通道輸入電壓的ad采樣。其初始采集程序如下:
3.2用戶閃速/電擦除數(shù)據(jù)存儲器的編程
aduc834的用戶閃速/電擦除數(shù)據(jù)存儲器的容量為4kb,利用這些eeprom可以進(jìn)行系統(tǒng)配置信息的存儲。具體程序如下:
4結(jié)論
本文所描述的二次儀表的軟硬件設(shè)計具有采集速度快、精度高、系統(tǒng)體積小的特點(diǎn),特別適用于需要進(jìn)行復(fù)雜運(yùn)算且要求采集精度較高、體積較小的系統(tǒng)中。在實(shí)際的設(shè)計開發(fā)中,使用aduc834可在很大程度上縮短開發(fā)時間并降低成本。另外,筆者設(shè)計的這款二次儀表在實(shí)際應(yīng)用中也取得了很好的使用效果。
評論