CW32系列模數(shù)轉(zhuǎn)換器(ADC)
模數(shù)轉(zhuǎn)換器(ADC)的主要功能是將模擬量轉(zhuǎn)換為數(shù)字量,方便MCU進(jìn)行處理。下面以CW32L083為例介紹CW系列的模數(shù)轉(zhuǎn)換器的特點(diǎn)和功能,并提供演示實(shí)例。
一、概述
CW32L083 內(nèi)部集成一個(gè) 12 位精度、最高 1M SPS 轉(zhuǎn)換速度的逐次逼近型模數(shù)轉(zhuǎn)換器 (SAR ADC),最多可將 16 路模擬信號(hào)轉(zhuǎn)換為數(shù)字信號(hào)?,F(xiàn)實(shí)世界中的絕大多數(shù)信號(hào)都是模擬量,如光、電、聲、圖像信號(hào)等,都要由 ADC 轉(zhuǎn)換成數(shù)字信號(hào),才能由 MCU 進(jìn)行數(shù)字化處理。
二、主要特性
? 12 位精度?
? 可編程轉(zhuǎn)換速度,最高達(dá) 1M SPS?
? 16 路輸入轉(zhuǎn)換通道:13 路外部引腳輸入 - 內(nèi)置溫度傳感器 - 內(nèi)置 BGR 1.2V 基準(zhǔn) - 1/3 VDDA 電源電壓?
? 4 路參考電壓源(Vref):- VDDA 電源電壓 - ExRef(PB00)引腳電壓 - 內(nèi)置 1.5V 參考電壓 - 內(nèi)置 2.5V 參考電壓?
? 采樣電壓輸入范圍:0 ~ Vref
?多種轉(zhuǎn)換模式,全部支持轉(zhuǎn)換累加功能 - 單次轉(zhuǎn)換 - 多次轉(zhuǎn)換 - 連續(xù)轉(zhuǎn)換 - 序列掃描轉(zhuǎn)換 - 序列斷續(xù)轉(zhuǎn)換?
? 支持單通道、序列通道兩種通道選擇,最大同時(shí)支持 8 個(gè)序列?
? 支持輸入通道電壓閾值監(jiān)測(cè)
? 內(nèi)置信號(hào)跟隨器,可轉(zhuǎn)換高阻抗輸入信號(hào)?
? 支持片內(nèi)外設(shè)自動(dòng)觸發(fā) ADC 轉(zhuǎn)換?
? 支持 ADC 轉(zhuǎn)換完成觸發(fā) DMA
三、轉(zhuǎn)換時(shí)序
ADC 的轉(zhuǎn)換時(shí)序如下圖所示:
向 ADC 控制寄存器 ADC_CR0 的 EN 位域?qū)懭?1,使能 ADC 模塊。?
ADC_CR0.EN 由 0 變?yōu)?1 約 40μs 后 ADC_ISR.READY 標(biāo)志位置 1,表示模擬電路初始化完成,可以開始進(jìn)行 ADC 轉(zhuǎn)換。?
向 ADC 啟動(dòng)寄存器 ADC_START 的 START 位域?qū)懭?1,啟動(dòng) ADC 轉(zhuǎn)換,轉(zhuǎn)換完成后硬件自動(dòng)清零。?
ADC 工作時(shí)鐘 ADCCLK,由系統(tǒng)時(shí)鐘 PCLK 經(jīng)預(yù)分頻器分頻得到,通過控制寄存器 ADC_CR0 的 CLK 位域可選擇 1 ~ 128 分頻
四、工作模式
ADC 控制寄存器 ADC_CR0 的 MODE 位域配置 ADC 工作模式

啟動(dòng) ADC 轉(zhuǎn)換,可通過向 ADC 啟動(dòng)寄存器 ADC_START 的 START 位域?qū)?1;也可通過其他外設(shè)來觸發(fā)。
五、實(shí)際案例
GTIM1定時(shí)器定時(shí)1S,定時(shí)器1S中斷觸發(fā)啟動(dòng)ADC轉(zhuǎn)換,采樣AIN1,并通過GTIM2以PWM方波輸出ADC采樣值:PWM占空比50%,周期為1Hz-5000Hz,對(duì)應(yīng)ADC的0-4095采樣值。
1.配置ADC測(cè)試IO口
2.LED初始化
3.PWM IO初始化
4.GTIM初始化
5.主程序main
6.實(shí)驗(yàn)展示
通用定時(shí)器GTIM1定時(shí)1s自動(dòng)觸發(fā)ADC模塊進(jìn)行轉(zhuǎn)換,ADC通道為AIN1:PA01。
通用定時(shí)器GTIM2將AIN1的ADC采樣值轉(zhuǎn)換成頻率可變的PWM方波,占空比50%,使用PA05作為PWM輸出。ADC采樣值為0時(shí),PWM方波頻率為1Hz;ADC采樣值為4095時(shí),PWM方波頻率為5KHz。
