概述
ADC在產(chǎn)品設(shè)計中是非常常用的MCU外設(shè)模塊,當(dāng)在某些復(fù)雜的應(yīng)用下需要非常快的采樣速度時,使用DMA進行數(shù)據(jù)搬運,可以更便捷的來實現(xiàn)對數(shù)據(jù)的高效搬運,結(jié)合本例在FSP上輕松配置您的所需,同時也讓我們了解一下瑞薩RA6M4系列DMAC和ADC的詳細介紹。
DMAC簡介
DMAC (Direct Memory Access Controller)稱為直接存儲訪問控制器/直接內(nèi)存訪問控制器, 可以在不占用 CPU 總線資源的情況下,將數(shù)據(jù)從一個內(nèi)存位置傳輸?shù)搅硪粋€內(nèi)存位置。
1.1 DMAC特性
RA6M4包括一個8通道直接內(nèi)存訪問控制器(DMAC),無需CPU干預(yù)即可傳輸數(shù)據(jù)。當(dāng)產(chǎn)生DMA傳輸請求時,DMAC將存儲在傳輸源地址的數(shù)據(jù)傳輸?shù)侥繕说刂贰?/p>
點擊可查看大圖
1.2 DMAC框圖
點擊可查看大圖
1.3 DMAC激活源
● 軟件觸發(fā)
●外設(shè)模塊的中斷請求
●外部中斷請求
DMAC激活源需在DMTMD寄存器的 DCTG[1:0] 位進行設(shè)置。
1.3.1 軟件觸發(fā)DMAC
可以通過軟件啟動DMA傳輸
1.3.2 來自片上外設(shè)模塊或外部中斷請求激活DMAC
可以將片上外設(shè)模塊的中斷請求或外部中斷請求設(shè)置為DMAC的激活源。可以通過ICU的DELSRn寄存器的 DELS[8:0]位 (n = 0~7) 為每個通道單獨選擇激活源。
1.3.3 DMAC中斷優(yōu)先級
程序執(zhí)行中存在多個DMA傳輸請求時,DMAC來決定每個具有DMA傳輸請求的通道的優(yōu)先級。通道優(yōu)先級固定如下:
通道 0 > 通道 1 > 通道 2 > 通道 3… > 通道 7
其中通道 0: 優(yōu)先級最高
如在數(shù)據(jù)傳輸期間產(chǎn)生DMA傳輸請求時,在數(shù)據(jù)已傳輸之后再進行通道仲裁,優(yōu)先級較高的通道的DMA優(yōu)先傳輸。
1.3.4 事件鏈接
每個DMAC通道在每次完成數(shù)據(jù)傳輸或塊數(shù)據(jù)傳輸時,都會輸出一個事件鏈接請求信號(DMACn_INT)。
當(dāng)傳輸目的地是外部總線時:在寫入緩沖區(qū)操作被接受時會產(chǎn)生一個事件鏈接請求信號。
如果寫入傳輸?shù)淖詈髷?shù)據(jù)時發(fā)生總線錯誤,則會發(fā)生傳輸結(jié)束事件和錯誤響應(yīng)檢測中斷(DMA_TRANSERR)。
1.4 DMAC傳輸模式
正常模式 (Normal Mode):
在正常模式下,每次DMAC通道接收到配置的ELC事件時,都會傳輸單個數(shù)據(jù)單元。數(shù)據(jù)單元可以是1字節(jié)、2字節(jié)或4字節(jié)。源地址和目標地址可以是固定的、遞增的、遞減的,或者在每次傳輸后向下一個數(shù)據(jù)單元添加偏移量。每次傳輸后,16位計數(shù)器遞減。當(dāng)計數(shù)器達到0時,ELC事件將不再觸發(fā)傳輸,并且可以中斷CPU以指示所有傳輸已完成。
重復(fù)模式 (Repeat Mode):
重復(fù)模式的工作方式與普通模式相同,但長度限制為范圍[1,1024] 內(nèi)的整數(shù)。當(dāng)傳輸計數(shù)器達到0時,計數(shù)器將重置為其配置的值,重復(fù)區(qū)域(源或目標地址)將重置為其起始地址,剩余的塊計數(shù)將減少1。當(dāng)塊計數(shù)達到0時,ELC事件將不再觸發(fā)傳輸,并且CPU可能會中斷以指示所有傳輸已完成。
塊模式 (Block Mode):
在塊模式下,每個中斷傳輸?shù)臄?shù)據(jù)單元量可以設(shè)置為范圍 [1,1024] 中的整數(shù)。要傳輸?shù)膲K數(shù)也可以配置為16位數(shù)字。每次塊傳輸后,重復(fù)區(qū)域(源地址或目標地址)將重置為原始地址,另一個地址將遞增或遞減到下一個塊。
重復(fù)-塊模式 (Repeat-Block Mode):
1個DMA傳輸請求的1個塊數(shù)據(jù)傳輸,最大可設(shè)置塊大小:1024,塊傳輸可以重復(fù),最大可設(shè)置重復(fù)大小:64K,可選擇的自由運行功能。
支持三種位長:8、16、32位
如果是8位時塊大小為0xFFFF
如果是16位時塊大小為0x7FFF
如果是32位時塊大小為0x3FFF
二
ADC簡介
ADC即模擬數(shù)字轉(zhuǎn)換器,ADC英文全稱(Analog-to-digital converter),用于將模擬電壓的連續(xù)信號轉(zhuǎn)換為離散的數(shù)字信號。可以將我們生活中的溫度、壓力、聲音這樣的模擬信號通過ADC轉(zhuǎn)化為可以通過單片機處理的數(shù)字信號,方便檢測。
2.1 ADC特性
12、14或16位最大分辨率,具體取決于MCU
配置掃描包括:
多個模擬通道
溫度傳感器通道
電壓傳感器通道
可配置的掃描啟動觸發(fā)器:
軟件掃描觸發(fā)器
硬件掃描觸發(fā)器(例如定時器溢出)
來自ADTRGn端口引腳的外部掃描觸發(fā)器
可配置掃描模式:
單次掃描模式,其中每個觸發(fā)器啟動一次掃描
連續(xù)掃描模式,連續(xù)掃描所有通道
組掃描模式,其中通道分為組A和組B。可以為組分配不同的啟動觸發(fā)器,并且可以將組A優(yōu)先于組B。當(dāng)組A優(yōu)先于組B時,組A觸發(fā)器將掛起正在進行的組B掃描。
支持添加加法/平均轉(zhuǎn)換后的樣本
掃描完成時的可選回調(diào)
支持采樣保持
雙觸發(fā)
帶中斷和事件輸出的硬件比較器
2.2 ADC框圖
點擊可查看大圖
點擊可查看大圖
2.3 工作模式
驅(qū)動程序支持三種操作模式:單次掃描、連續(xù)掃描和組掃描模式。在每種模式下,模擬通道按通道號的升序進行轉(zhuǎn)換,然后掃描溫度傳感器和電壓傳感器(如果它們包含在要掃描的通道模板中)。
單次掃描模式
在單次掃描模式下,每個觸發(fā)器掃描一次一個或多個指定通道。
連續(xù)掃描模式
在連續(xù)掃描模式下,需要單個觸發(fā)器才能啟動掃描。掃描將繼續(xù),直到調(diào)用 R_ADC_ScanStop()。
組掃描模式
組掃描模式允許應(yīng)用程序?qū)⑼ǖ婪峙浣o兩個組(A和B)之一。當(dāng)收到該組的指定ELC啟動觸發(fā)器時,轉(zhuǎn)換開始。
使用優(yōu)先級配置參數(shù),您可以選擇將組A置于組B之上。如果組A優(yōu)先于組B,則當(dāng)發(fā)生組A掃描觸發(fā)時,組B掃描將中斷。當(dāng)組A具有優(yōu)先級時,組B存在以下選項:
在組A掃描完成后重新啟動中斷的組B掃描。
等待另一個組B觸發(fā)器和放棄被中斷的掃描。
持續(xù)掃描組B并僅在收到組A觸發(fā)器時暫停掃描組B。
審核編輯:湯梓紅
-
傳感器
+關(guān)注
關(guān)注
2562文章
52524瀏覽量
763581 -
mcu
+關(guān)注
關(guān)注
146文章
17824瀏覽量
360232 -
adc
+關(guān)注
關(guān)注
99文章
6635瀏覽量
548223 -
瑞薩
+關(guān)注
關(guān)注
36文章
22366瀏覽量
87719
原文標題:基于RA6M4開發(fā)板在FSP上配置DMAC傳輸ADC采樣的方法(上)
文章出處:【微信號:瑞薩MCU小百科,微信公眾號:瑞薩MCU小百科】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
瑞薩電子推出9款全新RA6M4 MCU產(chǎn)品,基于高效的40nm制程工藝
瑞薩電子推出9款全新RA6M4 MCU產(chǎn)品 RA產(chǎn)品家族的MCU增至42款
瑞薩電子推出基于Arm Cortex-M33的RA6M4 MCU產(chǎn)品群
瑞薩電子Arm Cortex-M33的RA6M4 MCU產(chǎn)品特點介紹
RA6M4驅(qū)動5寸屏顯示PC運行狀態(tài)并進行監(jiān)控源碼
【干貨分享】從零學(xué)習(xí)使用瑞薩RA6M4開發(fā)板
瑞薩RA6M4系列DMAC和ADC的詳細介紹(2)

評論