為提高數(shù)據(jù)采集系統(tǒng)的采集精度和轉(zhuǎn)換速度,設(shè)計(jì)基于AD7862和dstPIC30F6010A的數(shù)據(jù)采集系統(tǒng),,詳細(xì)介紹AD7862和dsPIC30F6010A的特點(diǎn)和性能;并介紹該系統(tǒng)硬件部分和軟件部分,,實(shí)踐證明,該系統(tǒng)取得很好的效果,。本系統(tǒng)還采用SD卡作為存儲(chǔ)器,,實(shí)現(xiàn)數(shù)據(jù)存儲(chǔ)功能。
引言:
本采集系統(tǒng)采用ADI公司生產(chǎn)的12位模數(shù)轉(zhuǎn)換器AD7862,,它是一款高速,、低功耗、雙核12位模數(shù)轉(zhuǎn)換器,。能夠滿足系統(tǒng)對采樣精度和采樣速度的要求,。控制器件采用dsPIC30F6010A數(shù)字信號(hào)控制芯片,,它是Microchip公司生產(chǎn)的高性能16位數(shù)字信號(hào)控制器,,內(nèi)核包含一個(gè)DSP引擎,從而能夠顯著增強(qiáng)系統(tǒng)的運(yùn)算和吞吐能力,。
在某些數(shù)據(jù)采集系統(tǒng)中,,不僅對數(shù)據(jù)采集系統(tǒng)的精度和實(shí)時(shí)性提出要求,而且要求其具有數(shù)據(jù)存儲(chǔ)功能,,為了實(shí)現(xiàn)存儲(chǔ)功能,,本系統(tǒng)使用SD卡,。SD卡(Seeure Digital Memory Card)為安全數(shù)碼卡,是一種基于半導(dǎo)體快閃記憶器的新一代記憶設(shè)備,,它具有存儲(chǔ)容量大,,速度快等特點(diǎn),被廣泛用于便攜式裝置上,。
1 AD7862簡介
AD7862是一款高速,、低功耗、雙核12位模數(shù)轉(zhuǎn)換器(ADC),,采用+5 V單電源供電,。該器件內(nèi)置2個(gè)4μs逐次逼近型ADC、2個(gè)采樣保持放大器,、1個(gè)+2.5 V內(nèi)部基準(zhǔn)電壓源和1個(gè)高速并行接口,。其內(nèi)部結(jié)構(gòu)如圖l所示。

由于AD7862內(nèi)置2個(gè)ADC和2個(gè)采樣保持放大器,,可以對2路模擬輸入信號(hào)進(jìn)行同時(shí)采樣和轉(zhuǎn)換,從而保留這兩個(gè)模擬輸入信號(hào)的相對相位信息,。這一功能適用在逆變器采集系統(tǒng)中,。它共有4個(gè)模擬輸入,分成2個(gè)通道(A和B),,通過AO輸入選擇通道,。每個(gè)通道的2個(gè)輸入(VA1與VA2或VB1與VB2)使用不同的ADC和采樣保持放大器可同時(shí)進(jìn)行采樣和轉(zhuǎn)換。該器件可接收的模擬輸入范圍為±10 V(AD7862~10),、±2.5 V(AD7862-3)和O~2.5 V(AD7862-2),。本系統(tǒng)采用AD7862-10。模擬輸入均具有過壓保護(hù),,允許輸入電壓分別達(dá)到±17 V,、±7 V或+7 V而不會(huì)造成損壞。
轉(zhuǎn)換開始信號(hào)低電平有效,,同時(shí)將2個(gè)采樣保持放大器置于保持狀態(tài),,并啟動(dòng)兩個(gè)輸入轉(zhuǎn)換操作。轉(zhuǎn)換開始后,,置BUSY信號(hào)為高電平,,表示轉(zhuǎn)換還未結(jié)束,當(dāng)再次回到低電平時(shí),,表示轉(zhuǎn)換結(jié)束,,此時(shí)便可讀取2個(gè)通道的轉(zhuǎn)換結(jié)果。實(shí)際應(yīng)用中,,先置為低電平一段時(shí)間,,然后檢測BUSY信號(hào),,當(dāng)為低電平時(shí),就開始讀取轉(zhuǎn)換結(jié)果,。轉(zhuǎn)換結(jié)束后的第一次讀取操作訪問VA1或VB1的結(jié)果,,而第二次讀取操作訪問VA2或VB2的結(jié)果,具體取決于多路復(fù)用器選擇AO是低電平還是高電平,。AO為低電平時(shí),,讀取VA1或VA2;A0為高電平時(shí),讀取VB2或VB2,。該器件的時(shí)序如圖2所示,。

2 dsPIC30F6010A簡介
16位dsPIC30F6010A數(shù)字信號(hào)控制器是16位處理器系列。它是dsPIC30F電機(jī)控制和電源轉(zhuǎn)換系列,,用于支持電機(jī)控制應(yīng)用,,也適用于不間斷電源、逆變器,、開關(guān)電源及相關(guān)設(shè)備,。
內(nèi)部有144 KB片上閃存程序空間,8 KB片上數(shù)據(jù)RAM,,4 KB非易失性數(shù)據(jù)EEPROM:工作速度最高可達(dá)30MI/s;5個(gè)16位定時(shí)器/計(jì)數(shù)器;可選擇將16位定時(shí)器配對組成32位定時(shí)器模塊;16位捕捉輸入功能;8個(gè)PWM輸出通道:具有互補(bǔ)或獨(dú)立輸出模式,、邊沿對齊模式和中心對齊模式,4個(gè)占空比發(fā)生器,、互補(bǔ)模式的死區(qū)時(shí)間控制:2個(gè)UART,、2個(gè)SPI、1個(gè)I2C總線和2個(gè)CAN總線:最大I/O引腳數(shù)為68個(gè),。
dsPIC30F601OA處理器采用改進(jìn)的哈佛架構(gòu),,具有獨(dú)立的程序和數(shù)據(jù)存儲(chǔ)器總線。在執(zhí)行訪問數(shù)據(jù)RAM當(dāng)前指令的同時(shí)可從程序存儲(chǔ)器中預(yù)取下一條指令,,這就加快了處理速度,。數(shù)據(jù)空間為64 KB,大多數(shù)指令將其看作一個(gè)線性地址空間,。當(dāng)使用某些DSP指令,,如DSP乘法指令時(shí),該存儲(chǔ)空間被分成2塊,,分別稱為X和Y數(shù)據(jù)空間,。因此,這些DSP指令支持雙操作數(shù)讀操作,,即,,同一條指令可同時(shí)從X存儲(chǔ)空間和Y存儲(chǔ)空間中取數(shù)據(jù)。3 系統(tǒng)設(shè)計(jì)
本采樣系統(tǒng)主要分為硬件部分設(shè)計(jì)和軟件部分設(shè)計(jì)。硬件部分是以dsPIC30F601OA為控制和處理核心,,去控制AD7862和SD卡來實(shí)現(xiàn)數(shù)據(jù)的高精度,、實(shí)時(shí)采集和實(shí)時(shí)存儲(chǔ)。信號(hào)的高精度和實(shí)時(shí)模數(shù)轉(zhuǎn)換由AD7862來實(shí)現(xiàn),,數(shù)據(jù)的存儲(chǔ)由控制器通過SPI接口訪問SD卡來實(shí)現(xiàn),。軟件部分主要由控制器I/O引腳的初始化、模數(shù)轉(zhuǎn)換開始控制,、數(shù)據(jù)讀取和數(shù)據(jù)存儲(chǔ)等部分組成,。
3.1 硬件部分實(shí)現(xiàn)
數(shù)據(jù)采集系統(tǒng)以16位dsPIC30F6010A數(shù)字信號(hào)控制器作為系統(tǒng)的控制和數(shù)據(jù)處理核心,產(chǎn)生控制信號(hào)控制AD7862實(shí)現(xiàn)高精度的實(shí)時(shí)數(shù)據(jù)采集,。AD7862共需4個(gè)控制信號(hào),,分別為、AO,、和,。為轉(zhuǎn)換開始控制信號(hào),A0為讀取通道選擇控制信號(hào),,它控制該通道進(jìn)行A/D轉(zhuǎn)換和讀取其A/D轉(zhuǎn)換結(jié)果,。為片選信號(hào),低電平有效,,在本系統(tǒng)中使其直接與地相連,。為讀控制信號(hào),低電平有效,,當(dāng)為低電平時(shí)可以按順序讀取VA1、VA2或VBl,、VB2上的A/D轉(zhuǎn)換結(jié)果,。通過以上分析共需3個(gè)控制信號(hào),即dsPIC230F6010A的I/O接口RB8,、RB9和RBl0,,通過軟件產(chǎn)生。
AD7862還產(chǎn)生BUSY信號(hào),,通過它告知控制器A/D轉(zhuǎn)換完成,,可以讀取結(jié)果。dsPIC30F6010A的中斷控制器支持5種外部中斷請求信號(hào):IN-T0~I(xiàn)NT4,。這些輸入是邊沿敏感的;它們要求一個(gè)由低到高或由高到低的跳變以產(chǎn)生一個(gè)中斷請求,。INTCON2寄存器具有5個(gè)位(INTOEP~I(xiàn)N-T4EP),用于選譯邊沿檢測電路的極性,。本系統(tǒng)中采用由高到低的跳變產(chǎn)生中斷請求,,BLISY控制信號(hào)與dsPIC30F60lOA的INTO相連。數(shù)據(jù)轉(zhuǎn)換結(jié)果通過dsPIC30F60IOA的I/O口,,讀到控制器內(nèi)部,。AD7862與控制器的電路連接圖如圖3所示,。


3.2 軟件部分實(shí)現(xiàn)

軟件部分流程如圖5所示,系統(tǒng)啟動(dòng)后先初始化I/O,、SD卡,、AD7862和設(shè)置INT0中斷,為A/D采樣和數(shù)據(jù)存儲(chǔ)做準(zhǔn)備,。由于AD7862有兩個(gè)通道,。需對這兩個(gè)通道分別進(jìn)行A/D轉(zhuǎn)換,先采樣A通道后采樣B通道,,具體是哪個(gè)通道由AO決定,,也就是控制器的RB8引腳。
數(shù) 據(jù)采集過程中要獲知A/D轉(zhuǎn)換已結(jié)束的方法有:
1)定時(shí) 使用定時(shí)器,,轉(zhuǎn)換開始后過一段時(shí)間讀取轉(zhuǎn)換結(jié)果;
2)掃描 掃描BUSY引腳,,當(dāng)變?yōu)榈碗娖綍r(shí),即可知轉(zhuǎn)換結(jié)束,,讀取轉(zhuǎn)換結(jié)果;
3)中斷 BUSY作為中斷信號(hào),,輸入到INTO中,并設(shè)置為從高到低觸發(fā)中斷,,當(dāng)轉(zhuǎn)換結(jié)束后,,BUSY信號(hào)由高變低,觸發(fā)中斷,。

本系統(tǒng)采用第3種方法,,即中斷方法。中斷服務(wù)子程序如圖6所示,,進(jìn)入中斷服務(wù)子程序后,,首先清中斷標(biāo)示,然后分兩次讀取,,即Vx1和Vx2(X代表A或B),,讀完之后對數(shù)據(jù)進(jìn)行處理并存儲(chǔ)到SD卡相應(yīng)位置中,最后置采樣結(jié)束標(biāo)示,。
4 結(jié)束語
實(shí)踐表明,,通過對模數(shù)轉(zhuǎn)換器件的正確使用,完全可以達(dá)到很高的采樣精度,,并能滿足系統(tǒng)實(shí)時(shí)性的需要,。通過外擴(kuò)模擬電路部分,可以用于各種高精度高速的數(shù)據(jù)采集存儲(chǔ)系統(tǒng),。