M031/M032:ADC 對連續(xù)外部信號進行采樣的概念和用法
M031/ M032 內(nèi)建逐次逼近式模擬數(shù)字控制器 (SAR ADC),支持 12 位分辨率,每秒可實現(xiàn)兩百萬次采樣 (Msps)。內(nèi)建模擬多任務(wù)器 (Analog Multiplexer), ADC 輸入信號可選擇從外部管腳或者內(nèi)部電壓。利用 PDMA 功能,ADC 可以在沒有 CPU 參與的情況下運行,執(zhí)行最大采樣率,最小化系統(tǒng)電流消耗,或允許 CPU 執(zhí)行其它工作項目。
完整應(yīng)用筆記討論了 ADC 一般操作流程、軟硬件注意事項及 PDMA 的使用方法。最后范例程序以 PDMA 和 ADC 來展示連續(xù)采樣外部信號的流程。
概述
下圖說明輸入信號,參考電壓選擇和寄存器的內(nèi)部連接方式,并包含以下功能:
一組 12 位分辨率 SAR ADC 并帶獨立 VREF 管腳
多達 16 路的單端輸入通道或 8 組全差分仿真輸入通道
1 個內(nèi)部輸入通道 band-gap voltage (VBG)
A/D 轉(zhuǎn)換開始條件:
軟件向 ADST 位寫1
外部 (STADC) 管腳觸發(fā)
Timer 0~3 溢出脈沖觸發(fā)
PWM 事件觸發(fā)
每個信道的轉(zhuǎn)換結(jié)果儲存在相應(yīng)數(shù)據(jù)寄存器內(nèi),并帶有有效和覆蓋標志
支持 PDMA 傳輸模式,將轉(zhuǎn)換結(jié)果儲存在用戶指定的目標地址
一般操作:時鐘源選擇
ADC 具有一組 8-bit 預(yù)分頻器,按照以下列公式得出 ADC 時鐘頻率 (ADCCLK) 為:
ADC 時鐘頻率 (ADCCLK) = (ADC 時鐘源頻率) / (ADCDIV + 1);其中 M031/ M032 ADC 時鐘頻率 (ADCCLK) 最大值為 34 MHz。使用者可以透過 PLL 倍頻,產(chǎn)生 34 MHz 或者 68 MHz 頻率。將 PLL 設(shè)定為 ADC 時鐘源,并透過 ADCDIV 除頻產(chǎn)生 34 MHz,即可讓 ADC 運行在最高速度。
輸入模式選擇
ADC 輸入模式可以選擇為單端輸入或全差分輸入。當 DIFFEN(ADC_ADCR [10]) 為 1,ADC 為差分輸入。
單端輸入
如圖「ADC 單端輸入信號」所示,在單端輸入模式下,AVSS 或者 VSS 為 ADC 負端輸入的信號 (AIN-),外部輸入電壓為 ADC 正端輸入的信號 (AIN+)。如「ADC 單端輸入模式轉(zhuǎn)換結(jié)果映像圖」所示,在 0V 和參考電壓 (VREF) 之間,切分出微小電位階。其數(shù)字結(jié)果以 0 到 4095 的無符號數(shù),表示輸入電壓位于 0V 和參考電壓 (VREF) 之間的位置。
如圖「ADC 全差分輸入信號」所示,在全差分輸入模式下,測量值是兩個輸入信號之間的差值,兩個輸入信號必須為 180° 反相信號,并固定共模電壓為 VREF/2。由于一個輸入管腳被定義為正輸入管腳 (AIN+) 而另一個被定義為負輸入管腳 (AIN-),因此根據(jù)哪個輸入信號更高,差值可以是正的或負的。如「ADC 全差分輸入模式轉(zhuǎn)換結(jié)果映像圖」所示,當 DMOF(ADC_ADCR [31]) 設(shè)置為 1 時,轉(zhuǎn)換結(jié)果是以二的補碼碼形式表示的有符號數(shù),或者當 DMOF(ADC_ADCR [31]) 設(shè)置為 0 時,轉(zhuǎn)換結(jié)果是以二進制格式表示的無符號數(shù)。
結(jié)論
完整的應(yīng)用筆記基于應(yīng)用角度,介紹模擬數(shù)字轉(zhuǎn)換器的規(guī)格和特性。然后說明如何透過外部參考電壓管腳 VREF、TSMP 設(shè)定及校準,最小化 ADC 誤差并獲得最佳 ADC 精準度的方法和應(yīng)用設(shè)計規(guī)則。一旦用戶掌握了這良好工作知識,就可以依照應(yīng)用要求,基于速度、精準度及計算能力選擇最適合軟硬件設(shè)計參數(shù)。另外在 ADC 運行過程中,介紹利用 PDMA 快速地搬移數(shù)據(jù)或者利用數(shù)字比較器功能來偵測溫度傳感器、壓力傳感器及聲音傳感器,減少進出 ADC 中斷次數(shù),降低 CPU 負擔,讓 CPU 可以處理更多任務(wù)。
如需要了解更多新唐MCU產(chǎn)品,請聯(lián)系新唐代理QQ微信(980010600)!
編輯:admin 最后修改時間:2022-09-01