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文章
8718瀏覽量
152030 -
SAR
+關(guān)注
關(guān)注
3文章
419瀏覽量
46119 -
adc
+關(guān)注
關(guān)注
99文章
6537瀏覽量
545899 -
dma
+關(guān)注
關(guān)注
3文章
566瀏覽量
101029 -
開(kāi)發(fā)板
+關(guān)注
關(guān)注
25文章
5134瀏覽量
98342
原文標(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)推薦
MSPM0L1306開(kāi)發(fā)板教程之OPA
![<b class='flag-5'>MSPM0L1306</b><b class='flag-5'>開(kāi)發(fā)板</b>教<b class='flag-5'>程之</b>OPA](https://file1.elecfans.com/web2/M00/8C/CC/wKgaomSx_aaAfap2AAAc1R-Ez_I891.png)
電賽:mspm0l1306的開(kāi)發(fā)板可以燒錄程序,但是程序運(yùn)行不了,怎么解決這個(gè)問(wèn)題?
MSPM0L1306開(kāi)發(fā)板教程之開(kāi)發(fā)環(huán)境搭建
![<b class='flag-5'>MSPM0L1306</b><b class='flag-5'>開(kāi)發(fā)板</b>教<b class='flag-5'>程之</b><b class='flag-5'>開(kāi)發(fā)</b>環(huán)境搭建](https://file1.elecfans.com/web2/M00/82/1F/wKgZomRElDSAVO_zAAAL5AnPOg8777.png)
MSPM0L1306開(kāi)發(fā)板教程之DMA
![<b class='flag-5'>MSPM0L1306</b><b class='flag-5'>開(kāi)發(fā)板</b>教<b class='flag-5'>程之</b>DMA](https://file1.elecfans.com/web2/M00/89/6E/wKgZomSC_ZOAXwNDAAAWHVLZoNs752.png)
MSPM0L1306開(kāi)發(fā)板教程之通用定時(shí)器
![<b class='flag-5'>MSPM0L1306</b><b class='flag-5'>開(kāi)發(fā)板</b>教<b class='flag-5'>程之</b>通用定時(shí)器](https://file1.elecfans.com/web2/M00/8B/C9/wKgaomSeieaAClUBAAAuOYOcASc289.png)
MSPM0L1306開(kāi)發(fā)板教程之I2C
![<b class='flag-5'>MSPM0L1306</b><b class='flag-5'>開(kāi)發(fā)板</b>教<b class='flag-5'>程之</b>I2C](https://file1.elecfans.com/web2/M00/8B/C9/wKgaomSeiaiAfyTJAAAqPGp9kOA480.png)
MSPM0L1306開(kāi)發(fā)板教程- NVM(FLASH)
![<b class='flag-5'>MSPM0L1306</b><b class='flag-5'>開(kāi)發(fā)板</b>教程- NVM(FLASH)](https://file1.elecfans.com/web2/M00/8C/44/wKgZomSoz7eACNp-AAAiJD_jWvI487.png)
MSPM0L1306開(kāi)發(fā)板教程-SPI
![<b class='flag-5'>MSPM0L1306</b><b class='flag-5'>開(kāi)發(fā)板</b>教程-SPI](https://file1.elecfans.com/web2/M00/8C/45/wKgZomSo0LaAEFeUAAA2jAXys3I771.png)
MSPM0L1306開(kāi)發(fā)板教程之WWDT
![<b class='flag-5'>MSPM0L1306</b><b class='flag-5'>開(kāi)發(fā)板</b>教<b class='flag-5'>程之</b>WWDT](https://file1.elecfans.com/web2/M00/8C/CC/wKgZomSx_jKAVT2qAAANLDjhXg4890.png)
TI MSPM0L1306開(kāi)發(fā)板簡(jiǎn)介
![TI <b class='flag-5'>MSPM0L1306</b><b class='flag-5'>開(kāi)發(fā)板</b>簡(jiǎn)介](https://file1.elecfans.com/web2/M00/B5/89/wKgaomV7s0SAbomMAA4xrrKKeSA436.png)
MSPM0 L系列MCU硬件開(kāi)發(fā)指南
![<b class='flag-5'>MSPM0</b> <b class='flag-5'>L</b>系列MCU硬件<b class='flag-5'>開(kāi)發(fā)</b>指南](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
MSPM0L1306 LaunchPad開(kāi)發(fā)套件(LP?MSPM0L1306)
![<b class='flag-5'>MSPM0L1306</b> LaunchPad<b class='flag-5'>開(kāi)發(fā)</b>套件(LP?<b class='flag-5'>MSPM0L1306</b>)](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
評(píng)論