MSPM0L系列的ADC是一個(gè)12bit的SAR ADC,采樣頻率最高1.45MHz,最高可做到11.2位的實(shí)際有效位(ENOB)
MSPM0L提供了外部的VREF+/-管腳,可以使用外部的參考電壓源以獲得最好的ADC性能,同時(shí)參考電壓還可以選擇VDD電壓,或者內(nèi)部的1.4/2.5V參考電壓,需要注意的是,當(dāng)選用內(nèi)部參考電壓的時(shí)候,ADC的采樣率最大不能超過(guò)200KHz
ADC的采樣模式分為兩種,主要是采樣時(shí)間的區(qū)別
自動(dòng)采樣:有兩個(gè)采樣時(shí)間窗口(Sample Window)定時(shí)器可以配置不同的采樣時(shí)間給到采樣通道選擇,
手動(dòng)采樣:采樣時(shí)間由ADC寄存器的SC位的高電平時(shí)間決定,在這個(gè)模式下ADC不支持事件觸發(fā),只能使用軟件觸發(fā)采樣
ADC的轉(zhuǎn)換模式有單次轉(zhuǎn)換,序列轉(zhuǎn)換,這個(gè)兩個(gè)模式都支持重復(fù)模式,也就是連續(xù)采樣
序列轉(zhuǎn)換MSPM0L系列最大支持4個(gè)通道的配置,每一個(gè)通道都可以單獨(dú)配置參考電壓源和采樣時(shí)間窗口,在數(shù)據(jù)手冊(cè)中,可以查到每一個(gè)通道對(duì)應(yīng)的映射信息
實(shí)操例程1
下面通過(guò)一個(gè)簡(jiǎn)單的ADC單通道單次采樣來(lái)看下SYSCONFIG的配置,主要配置如下
可以看到,ADC時(shí)鐘用的是32MHz的ULPCLK,采樣通道使用的是PA15,也就是9通道采樣,
使用的是自動(dòng)采樣模式,采樣周期用的采樣窗口0的配置,125us,參考電壓使用的是VDDA電壓,這里用的是3.3V,使用軟件觸發(fā)ADC,轉(zhuǎn)換結(jié)果存儲(chǔ)在結(jié)果寄存器0中(MEMRES0)
在中斷設(shè)置中,設(shè)置為結(jié)果寄存器0裝載中斷
在程序中,我寫了一個(gè)串口發(fā)送ADC數(shù)據(jù)用的函數(shù),用來(lái)檢測(cè)ADC數(shù)據(jù)
剩下的程序比較簡(jiǎn)單,需要注意的是,ADC單次轉(zhuǎn)換完成后,需要重新使能ADC才可以繼續(xù)下一次轉(zhuǎn)換
配套例程為ADC_UART,需要復(fù)制到SDK目錄下運(yùn)行
實(shí)操例程2
接下來(lái)配置一個(gè)使用DMA把ADC的轉(zhuǎn)換數(shù)據(jù)搬運(yùn)到指定的內(nèi)存地址的程序
在ADC中使用DMA,有FIFO和非FIFO模式,主要的區(qū)別是結(jié)果存放的位置不一樣,在非FIFO模式中,每個(gè)ADC通道的結(jié)果會(huì)存放在配置的結(jié)果寄存器MEMRESx中,而在FIFO模式中,結(jié)果寄存器會(huì)變成FIFO的緩沖區(qū),MSPM0L系列最大支持4個(gè)結(jié)果寄存器,也就是最大支持4個(gè)FIFO緩沖區(qū),這個(gè)模式下,讀取結(jié)果需要從特定的FIFODAT寄存器中讀取,這個(gè)寄存器會(huì)把兩次轉(zhuǎn)換的結(jié)果拼接在一起,所以FIFO模式下的DMA一次傳輸4個(gè)字節(jié)
下圖是ADC傳輸結(jié)果數(shù)據(jù)的FIFO和非FIFO模式的總結(jié)
非FIFO的DMA讀寫中,SAMPCNT必須為1,也就是一次結(jié)果觸發(fā)一次DMA傳輸,以下是非FIFO的DMA配置
而在FIFO模式的DMA讀寫中,由于FIFODAT寄存器是把兩次結(jié)果拼接,所以在DMA的觸發(fā)源需要選擇MEM1的載入中斷,而SAMPCNT的值根據(jù)實(shí)際需要填寫
例程采用連續(xù)單次采樣模式,軟件觸發(fā)
最后配置ADC中斷為DMA傳輸完成中斷
在程序中我設(shè)置了一個(gè)10組結(jié)果的變量用于存放結(jié)果
在使用DMA傳輸ADC的數(shù)據(jù)的時(shí)候需要注意,每次DMA完成傳輸后,需要在ADC的寄存器中重新使能DMAEN位,才可以再次觸發(fā)DMA傳輸
配套例程為ADC_DMA
-
接口
+關(guān)注
關(guān)注
33文章
8447瀏覽量
150723 -
SAR
+關(guān)注
關(guān)注
3文章
409瀏覽量
45854 -
adc
+關(guān)注
關(guān)注
98文章
6391瀏覽量
543774 -
dma
+關(guān)注
關(guān)注
3文章
556瀏覽量
100347 -
開(kāi)發(fā)板
+關(guān)注
關(guān)注
25文章
4896瀏覽量
97059
原文標(biāo)題:MSPM0L1306開(kāi)發(fā)板教程8 - ADC
文章出處:【微信號(hào):創(chuàng)易棧,微信公眾號(hào):創(chuàng)易?!繗g迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論