新聞中心

        EEPW首頁 > 測試測量 > 設計應用 > 一種提高TMS320F2812 ADC精度的方法

        一種提高TMS320F2812 ADC精度的方法

        作者: 時間:2010-09-26 來源:網絡 收藏


        圖3校正后的電壓轉換電路

        2 ADC校正

        2.1校正方法

        通過以上分析可以看出,的ADC轉換精度較差的主要原因是存在增益誤差和失調誤差,因此要提高轉換精度就必須對兩種誤差進行補償。對于ADC模塊采取了如下方法對其進行校正。

        選用ADC的任意兩個通道作為參考輸入通道,并分別提供給它們已知的直流參考電壓作為輸入(兩個電壓不能相同),通過讀取相應的結果寄存器獲取轉換值,利用兩組輸入輸出值求得ADC模塊的校正增益和校正失調,然后利用這兩個值對其他通道的轉換數據進行補償,從而提高了ADC模塊轉換的準確度。圖1示出了如何利用方程獲取ADC的校正增益和校正失調。具體計算過程如下:

        ① 獲取已知輸入參考電壓信號的轉換值yL和yh。

        ② 利用方程y=x×ma+b及已知的參考值(xL,yL)和(xH,yH)計算實際增益及失調誤差:

        實際增益ma=(yH-yL)/(xH-xL);

        失調誤差 b=yL -xL×ma。

        ③ 定義輸入x=y×CalGain-CalOffset,則由方程y=x×ma+b得校正增益CalGain=1/ma=(xH-xL)/(yH -yL),校正失調CalOffset=b/ma=yL/ma-xL。

        ④ 將所求的校正增益及校正失調應用于其他測量通道,對ADC轉換結果進行校正。

        上述即為實現ADC校正的全過程,通過使用這種方法,ADC的轉換精度有很大提高。由于這種方法是通過某個通道的誤差去修正其他通道的誤差,因此要采用這種方法,必須保證通道間具有較小的通道誤差。對ADC轉換模塊,由于其通道間的增益及失調誤差均在0.2%以內,所以可以采用這種方法對其進行校正。

        2.2 軟件實現

        與一般的ADC轉換程序相比,帶校正的ADC轉換程序需要另外增加兩個程序段:校正值的計算以及利用校正值對ADC進行處理。為了方便操作及轉換結果獲取,實現中定義了結構體變量ADCCALIBRATIONVARS,用來保存ADC轉換后的各種數據。另外,提高程序的通用性,采樣的方式、參考電壓值及高低電壓理想的轉換值均在ADC轉換頭文件ADCCalibration.h中定義。ADCCALIBRATIONVARS定義如下:

        typedefstruct{

        Uint*RefHighChAddr;//參考高電壓所連通道地址

        Uint*RefHighChAddr;//參考低電壓所連通道地址

        Uint*ChoAddr;//0通道地址

        UintAvg_RefHighActualCount;//參考高電壓實際轉換值

        UintAvg_RefHighActualCount;//參考低電壓實際轉換值

        UintRefHighIdealCount;//參考高電壓理想轉換值

        UintRefLowCount;//參考低電壓實際轉換值

        UintCalGain;//校正增益

        UintCalOffset;//校正失調

        //校正通道的轉換值

        UintCh0;

        UintCh16;

        }ADC CALIBRATION VARS;

        整個A/D轉換任務由中斷函數intADC()和主函數ADCCalibration()構成。中斷函數主要用于轉換數據的讀取,而校正參數計算及各通道轉換結果的修正在主函數完成。校正完后,將結果保存到所定義的結構體變量中。此處,對ADC的校正采用單采樣單校正的處理方法,當然也可以采用多采樣單校正的處理方法,但是為了提高精度,如果設計系統開支允許,建議最好使用單采樣單校正的方法,以提高ADC精度。

        2.3實驗結果

        筆者在自己所使用的系統上進行了實驗,選用1 V和2 V作為參考電壓,選用通道A6和A7作為參考通道,通過對0 V、0.5 V、1.5 V、2.5 V校正前后的數據進行比較,發現采用上述校正方法后,ADC的轉換準確度明顯得到改善,比較結果如表2所列。



        注:由參考電壓計算得:CalGain=0.965;CalOffset=6.757。

        表2中所給出的數據只是筆者進行大量實驗后所得數據的一組,實驗證明通過校正后ADC的誤差能被控制在0.5%以內,這對大多數測控系統來說已滿足要求,對于轉換精度要求更高的系統,可以采用外擴A/D轉換器。

        結語

        A/D轉換器是數據采集電路的核心部件,其良好的精度與準確性是提高數據采集電路性能的關鍵。2812作為TI公司推出的一款集微控制器及數字信號處理器于一身的32位處理器,以其運行速度高和強大的處理功能得到廣泛應用,而對其ADC模塊精度的提高,將進一步提高其在控制領域中的應用。本文提出的用于提高ADC模塊精度的校正算法,經實際應用證明實用可行。

        本文引用地址:http://www.104case.com/article/195285.htm

        上一頁 1 2 下一頁

        關鍵詞: F2812 2812 320F TMS

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 泗水县| 共和县| 宁波市| 汾西县| 蓬莱市| 南乐县| 古蔺县| 镇雄县| 清涧县| 犍为县| 永福县| 辽源市| 乐东| 虞城县| 黄龙县| 工布江达县| 图木舒克市| 平谷区| 台江县| 繁昌县| 长武县| 方正县| 紫金县| 大化| 鄂伦春自治旗| 焉耆| 义乌市| 富蕴县| 威信县| 乌什县| 佛教| 五家渠市| 天津市| 澜沧| 静宁县| 琼海市| 监利县| 泗洪县| 丰宁| 平南县| 东丰县|