• <li id="00i08"><input id="00i08"></input></li>
  • <sup id="00i08"><tbody id="00i08"></tbody></sup>
    <abbr id="00i08"></abbr>
  • 新聞中心

    EEPW首頁 > 嵌入式系統 > 設計應用 > 漫談TMS320F28027中兩種A/D采樣方式的實現方法

    漫談TMS320F28027中兩種A/D采樣方式的實現方法

    作者: 時間:2014-06-12 來源:網絡 收藏

    摘要:以為代表的TI C28x Piccolo系列微處理器采用了以SOC為基礎的ADC,其配置方式不同于TI其他系列MCU基于Sequencer的ADC。在的基礎上,詳細介紹了其ADC的工作原理,以及順序采樣和同步采樣兩種采砰方式的配置方法。

    本文引用地址:http://www.czjhyjcfj.com/article/248196.htm

    關鍵詞:TI C28x Piccolo系列微處理器:基于SOC的ADC;順序采樣;同步采樣

    引言

    TI C28x Piccolo系列微處理器,因其低功耗、高性能的特點,被廣泛應用在太陽能逆變器、白色家電設備、混合動力汽車電池、電力線通信和LED照明等控制領域。A/D轉換實現了模擬量到數字量的轉換,是控制應用中必不可少的環節之一。A/D轉換的精度和速度直接關系到控制系統的準確性和快速性。

    相比于TI其他類型微處理器,TI C28x Piccolo系列內部集成了新一代的基于SOC的ADC。此ADC的內核包含一個12位轉換器,此轉換器由兩個采樣保持電路供源。這兩個采樣保持電路可同時或者順序采樣。對于用戶來講,可以很容易地從一個單觸發來創建一系列的轉換。但此ADC在寄存器沒置和配置方式上與基于Sequencer的ADC有很大的不同,主要體現在控制寄存器ADCCTRL的數量和功能位設置、中斷和丁作方式的配置方式等方面,更新后的寄存器設置可以參見TI的相關文獻。

    1 ADC的工作原理和初始化

    1.1 工作原理

    對基于SOC的ADC,其核心在于對16個SOC(Start Of Conversion)的配置,單個SOC對應單個A/D轉換過程,SOC的配置數量取決于應用中需要A/D轉換的數目。每個SOC中都有三種配置項:啟動轉換的觸發源、采樣通道以及采樣窗口時間。

    其中,觸發源可選擇軟件、PWM、GPIO,以及CPU定時器等多種觸發方式,采樣通道可根據采樣方式的不同選擇ADCINA1~8、ADCINB1~8共16個或8對采樣通道,采樣窗口時間也可根據需要設置。

    對于單個轉換,ADC的工作過程為:在收到相應的觸發信號后,即開始按設置的采樣窗口時間對指定通道進行采樣,隨后,采樣值與參考電壓進行比較,得到轉換值。同時,在轉換開始時或轉換完成時觸發與SOC編號對應的EOC(End Of Conversion)脈沖,標志轉換結束。轉換的結果存儲在與SOC編號對應的ADCRESULT寄存器中。

    1.2 轉換結果的計算

    若在初始化中選擇內部參考,ADC將會選擇其內部的帶隙電路產生參考電壓。此時ADC的轉換范圍為0~3.3 V,轉換結果的計算公式如下:

     

     

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

     

     

    1.3 初始化和中斷設置

    使用ADC時,應進行4步初始化操作:設置ADC校準;內部各電路上電;選擇內部或外部采樣參考;打開ADC。一般情況下ADC校準可使用廠家設定值,調用函數Device cal()即可。

    若選擇默認校準值和內部參考電壓,ADC的初始化程序如下:

     

     

    以上設置在TI C2000系列v129版本的頭文件DSP2802x_Adc.c中被編譯成了函數InitAdc(),可在程序中直接調用。

    ADC的每次轉換完成后都可觸發中斷,若需要使用ADC中斷,則可進行如下步驟的設置:設置中斷觸發時刻,可選擇開始轉換時觸發或轉換結果產生時觸發;選擇中斷編號;設置中斷產生與中斷標志的關系,可選擇在中斷產生與中斷標志狀態無關或在存在中斷標志時不產生中斷;選擇觸發中斷的EOC信號。

    若需要在SOC2的轉換結果產生后觸發ADCINT1中斷,且在存在中斷標志時不再產生中斷,配置程序如下:

     

     

    在完成對ADC的初始化設置后,即可根據應用需要配置采樣方式和單次轉換。

    2 順序采樣方式的實現

    2.1 順序采樣方式

    順序采樣是最常用的采樣方式,即單次轉換按照觸發-采樣-轉換的順序進行。順序采樣只要按需求配置SOC即可。

    ADC中共有16個SOCCx,x表示編號為0~15。每個SOC可沒置由不同或相同的觸發源觸發,對任意采樣通道進行可調時間的采樣和轉換。用戶在設置好3個配置項后,ADC按照SOC0~SOC15的默認優先級進行轉換。SOC的優先級也可通過優先級控制寄存器SOCPRICTL進行設置。

    順序采樣方式的時序可以參見TI的相關文獻。

    在實際應用中,通常可設置多個SOC對同一通道進行采樣,并對采樣結果取平均值,即可有效地消除模擬信號中高頻噪聲的影響,提高A/D轉換的精度。

    若要在收到定時器Timer0的觸發信號后按照通道ADCINA4、ADCINA2、ADCINA6的順序進行轉換,SOC的配置程序如下:

     

     

    ADCINA4通道的采樣結果存儲在ADCRESULT0中,ADCINA2通道采樣結果存儲在ADCRESULT1中,ADCINA6的采樣結果存儲在ADCRESULT2中。

    此外,需要指出的是,此類ADC的采樣通道在空閑時也可以作為普通I/O端口使用,這也是與其他系列不同的地方。

    2.2 采樣和轉換時間的計算

    通過ADCSOCxCTL寄存器的ACQPS位,可設置采樣窗口大小,即采樣時間。采樣時間設置的基本單位為一個時鐘周期,ACQPS可設置為6~63的任意數值,采樣時間可通過如下公式計算:

    采樣時間=(ACQPS+1)×時鐘周期


    上一頁 1 2 下一頁

    關鍵詞: TMS320F28027 A/D

    評論


    技術專區

    關閉
    主站蜘蛛池模板: 古田县| 沾化县| 呈贡县| 祁东县| 松桃| 洮南市| 百色市| 大名县| 锦州市| 徐水县| 澳门| 同江市| 汉沽区| 桂平市| 纳雍县| 开平市| 阿克苏市| 太谷县| 定安县| 镇赉县| 涞水县| 惠东县| 宁津县| 潼南县| 绵阳市| 安化县| 弥勒县| 昌乐县| 株洲县| 双峰县| 铜陵市| 吴堡县| 凌云县| 阜城县| 东山县| 鄂伦春自治旗| 巢湖市| 垫江县| 文登市| 襄樊市| 龙江县|