漫談TMS320F28027中兩種A/D采樣方式的實(shí)現方法
摘要:以TMS320F28027為代表的TI C28x Piccolo系列微處理器采用了以SOC為基礎的ADC,其配置方式不同于TI其他系列MCU基于Sequencer的ADC。在TMS320F28027的基礎上,詳細介紹了其ADC的工作原理,以及順序采樣和同步采樣兩種采砰方式的配置方法。
本文引用地址:http://dyxdggzs.com/article/248196.htm關(guān)鍵詞:TI C28x Piccolo系列微處理器:基于SOC的ADC;順序采樣;同步采樣
引言
TI C28x Piccolo系列微處理器,因其低功耗、高性能的特點(diǎn),被廣泛應用在太陽(yáng)能逆變器、白色家電設備、混合動(dòng)力汽車(chē)電池、電力線(xiàn)通信和LED照明等控制領(lǐng)域。A/D轉換實(shí)現了模擬量到數字量的轉換,是控制應用中必不可少的環(huán)節之一。A/D轉換的精度和速度直接關(guān)系到控制系統的準確性和快速性。
相比于TI其他類(lèi)型微處理器,TI C28x Piccolo系列內部集成了新一代的基于SOC的ADC。此ADC的內核包含一個(gè)12位轉換器,此轉換器由兩個(gè)采樣保持電路供源。這兩個(gè)采樣保持電路可同時(shí)或者順序采樣。對于用戶(hù)來(lái)講,可以很容易地從一個(gè)單觸發(fā)來(lái)創(chuàng )建一系列的轉換。但此ADC在寄存器沒(méi)置和配置方式上與基于Sequencer的ADC有很大的不同,主要體現在控制寄存器ADCCTRL的數量和功能位設置、中斷和丁作方式的配置方式等方面,更新后的寄存器設置可以參見(jiàn)TI的相關(guān)文獻。
1 ADC的工作原理和初始化
1.1 工作原理
對基于SOC的ADC,其核心在于對16個(gè)SOC(Start Of Conversion)的配置,單個(gè)SOC對應單個(gè)A/D轉換過(guò)程,SOC的配置數量取決于應用中需要A/D轉換的數目。每個(gè)SOC中都有三種配置項:?jiǎn)?dòng)轉換的觸發(fā)源、采樣通道以及采樣窗口時(shí)間。
其中,觸發(fā)源可選擇軟件、PWM、GPIO,以及CPU定時(shí)器等多種觸發(fā)方式,采樣通道可根據采樣方式的不同選擇ADCINA1~8、ADCINB1~8共16個(gè)或8對采樣通道,采樣窗口時(shí)間也可根據需要設置。
對于單個(gè)轉換,ADC的工作過(guò)程為:在收到相應的觸發(fā)信號后,即開(kāi)始按設置的采樣窗口時(shí)間對指定通道進(jìn)行采樣,隨后,采樣值與參考電壓進(jìn)行比較,得到轉換值。同時(shí),在轉換開(kāi)始時(shí)或轉換完成時(shí)觸發(fā)與SOC編號對應的EOC(End Of Conversion)脈沖,標志轉換結束。轉換的結果存儲在與SOC編號對應的ADCRESULT寄存器中。
1.2 轉換結果的計算
若在初始化中選擇內部參考,ADC將會(huì )選擇其內部的帶隙電路產(chǎn)生參考電壓。此時(shí)ADC的轉換范圍為0~3.3 V,轉換結果的計算公式如下:

若選擇外部電壓參考,則需要從VREFHI/VREFLO引腳引入參考電壓,此時(shí)ADC的轉換范同為0~VREFHI,轉換上限為參考電壓值,轉換結果的計算公式如下:

1.3 初始化和中斷設置
使用ADC時(shí),應進(jìn)行4步初始化操作:設置ADC校準;內部各電路上電;選擇內部或外部采樣參考;打開(kāi)ADC。一般情況下ADC校準可使用廠(chǎng)家設定值,調用函數Device cal()即可。
若選擇默認校準值和內部參考電壓,ADC的初始化程序如下:

以上設置在TI C2000系列v129版本的頭文件DSP2802x_Adc.c中被編譯成了函數InitAdc(),可在程序中直接調用。
ADC的每次轉換完成后都可觸發(fā)中斷,若需要使用ADC中斷,則可進(jìn)行如下步驟的設置:設置中斷觸發(fā)時(shí)刻,可選擇開(kāi)始轉換時(shí)觸發(fā)或轉換結果產(chǎn)生時(shí)觸發(fā);選擇中斷編號;設置中斷產(chǎn)生與中斷標志的關(guān)系,可選擇在中斷產(chǎn)生與中斷標志狀態(tài)無(wú)關(guān)或在存在中斷標志時(shí)不產(chǎn)生中斷;選擇觸發(fā)中斷的EOC信號。
若需要在SOC2的轉換結果產(chǎn)生后觸發(fā)ADCINT1中斷,且在存在中斷標志時(shí)不再產(chǎn)生中斷,配置程序如下:

在完成對ADC的初始化設置后,即可根據應用需要配置采樣方式和單次轉換。
2 順序采樣方式的實(shí)現
2.1 順序采樣方式
順序采樣是最常用的采樣方式,即單次轉換按照觸發(fā)-采樣-轉換的順序進(jìn)行。順序采樣只要按需求配置SOC即可。
ADC中共有16個(gè)SOCCx,x表示編號為0~15。每個(gè)SOC可沒(méi)置由不同或相同的觸發(fā)源觸發(fā),對任意采樣通道進(jìn)行可調時(shí)間的采樣和轉換。用戶(hù)在設置好3個(gè)配置項后,ADC按照SOC0~SOC15的默認優(yōu)先級進(jìn)行轉換。SOC的優(yōu)先級也可通過(guò)優(yōu)先級控制寄存器SOCPRICTL進(jìn)行設置。
順序采樣方式的時(shí)序可以參見(jiàn)TI的相關(guān)文獻。
在實(shí)際應用中,通??稍O置多個(gè)SOC對同一通道進(jìn)行采樣,并對采樣結果取平均值,即可有效地消除模擬信號中高頻噪聲的影響,提高A/D轉換的精度。
若要在收到定時(shí)器Timer0的觸發(fā)信號后按照通道ADCINA4、ADCINA2、ADCINA6的順序進(jìn)行轉換,SOC的配置程序如下:

ADCINA4通道的采樣結果存儲在A(yíng)DCRESULT0中,ADCINA2通道采樣結果存儲在A(yíng)DCRESULT1中,ADCINA6的采樣結果存儲在A(yíng)DCRESULT2中。
此外,需要指出的是,此類(lèi)ADC的采樣通道在空閑時(shí)也可以作為普通I/O端口使用,這也是與其他系列不同的地方。
2.2 采樣和轉換時(shí)間的計算
通過(guò)ADCSOCxCTL寄存器的ACQPS位,可設置采樣窗口大小,即采樣時(shí)間。采樣時(shí)間設置的基本單位為一個(gè)時(shí)鐘周期,ACQPS可設置為6~63的任意數值,采樣時(shí)間可通過(guò)如下公式計算:
采樣時(shí)間=(ACQPS+1)×時(shí)鐘周期
評論