0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

雅特力AT32F425 DMA使用指南

0739hhbb ? 來源:AT32 MCU 雅特力科技 ? 2023-06-15 09:52 ? 次閱讀

DMA簡介

IDMA控制器的作用不僅在增強系統(tǒng)性能并減少處理器的中斷生成,而且還針對32位MCU應(yīng)用程序?qū)iT優(yōu)化設(shè)計。DMA控制器為存儲器到存儲器,存儲器到外設(shè)和外設(shè)到存儲器的傳輸提供了7個通道。每個通道都支持外設(shè)的DMA請求映射到任意通道上。

圖1. DMA控制器架構(gòu)

wKgZomSKbvaAKwkwAACjW59AFV4608.png

DMA請求彈性映射簡介

在使用AT43F425xx系列DMA時,必須配置DMA請求彈性映射功能,否則DMA不會運作。DMA請求彈性映射可將任意一個外設(shè)產(chǎn)生的DMA請求映射到通道1到通道7中的任意一個通道。

當(dāng)設(shè)定彈性模式時(DMA_FLEX_EN=1),每個通道的請求來源由CHx_SRC來設(shè)定[x=1~7]。使用例子:假如DMA通道1指定成I2C1_TX,通道3要指定成I2C1_RX,其他不使用,則設(shè)定上必須是DMA_FLEX_EN=1,CH1_SRC=11,CH3_SRC=10,CH[2/4/5/6/7]_SRC=0。

CHx_SRC設(shè)定值對應(yīng)請求來源見下表:

各IP對應(yīng)ID號如下表:

表1. 各IP對應(yīng)ID號列表

wKgaomSKbvaAKj5EAAIR6QQuWdE605.png

注:表格中“CHx_SRC”為ID號;“請求來源”為各IP的DMA請求。

DMA功能解析

編程數(shù)據(jù)寬度

DMA控制器的通道可支持傳輸不同數(shù)據(jù)寬度,byte/halfword/word。通過DMA_CxCTRL中的PWIDTH和MWIDTH位可以對源數(shù)據(jù)和目標(biāo)數(shù)據(jù)的數(shù)據(jù)寬度進(jìn)行編程,通常情況下需要設(shè)置PWIDTH和MWIDTH位相等,當(dāng)PWIDTH不等于MWIDTH時,會依據(jù)PWIDTH/MWIDTH設(shè)定將資料對齊。

圖2. PWIDTH:byte, MWIDTH:half-word

wKgaomSKbvaAF6myAABdXVT_M-k959.png

圖3. PWIDTH:half-word, MWIDTH:word

wKgZomSKbvaAEeaUAABdIUQeCHo090.png

配置DMA彈性映射

在M2P與P2M模式下,必須配置DMA彈性映射,否則DMA不會響應(yīng)外設(shè)DMA請求。DMA彈性映射的作用是為外設(shè)的DMA請求復(fù)用通道,即任何一個外設(shè)的DMA請求可以映射到DMA1的任意通道,這大大增加了DMA通道分配的靈活性。

配置DMA彈性映射比較簡單,只需調(diào)用專門提供的接口函數(shù)即可:

wKgaomSKbvaAZ6X5AAA668WkwvE440.png

DMA配置解析

以下對DMA的配置接口及流程進(jìn)行說明。

函數(shù)接口

表2. 通道配置函數(shù)列表

wKgZomSKbvaAFc_IAADSY0JXaLk604.png

數(shù)據(jù)流配置

設(shè)置外設(shè)地址(CxPADDR寄存器
數(shù)據(jù)傳輸?shù)某跏纪庠O(shè)地址,在傳輸過程中不可被改變。

設(shè)置存儲器地址(CxMADDR寄存器)
數(shù)據(jù)傳輸?shù)某跏純?nèi)存地址,在傳輸過程中不可被改變。

配置數(shù)據(jù)傳輸量(CxDTCNT寄存器)
可編程的傳輸數(shù)據(jù)長度最大為65535。在傳輸過程中,該傳輸數(shù)據(jù)量的值會逐漸遞減。

數(shù)據(jù)流配置(CxCTRL寄存器)
包含通道優(yōu)先級,數(shù)據(jù)傳輸?shù)姆较?、寬度、地址增量模式、循環(huán)模式和中斷方式。
優(yōu)先級(CHPL)
分為4個等級,最高優(yōu)先級、高優(yōu)先級、中等優(yōu)先級和低優(yōu)先級。
若有2個流優(yōu)先級設(shè)定相同,則較低編號的流有較高的優(yōu)先權(quán)。舉例,通道1優(yōu)先于通道2。
數(shù)據(jù)傳輸方向(DTD)
分為存儲器到外設(shè)(M2P),外設(shè)到存儲器(P2M)或存儲器到存儲器(M2M)傳輸。在存儲器到存儲器傳輸模式下不允許使用循環(huán)模式、雙緩沖模式和直接模式。
數(shù)據(jù)傳輸寬度(PWIDTH/MWIDTH)
根據(jù)實際使用情景,可配置寬度為byte、halfword、word。
地址增量模式(PINCM/MINCM)
當(dāng)通道配置設(shè)定為增量模式時,下一筆傳輸?shù)牡刂穼⑹乔耙还P傳輸?shù)刂芳由蟼鬏攲挾龋≒WIDTH/MWIDTH)。
循環(huán)模式(LM)
當(dāng)流配置設(shè)定為循環(huán)模式時,在最后一次傳輸后CxDTCNT寄存器的內(nèi)容會恢復(fù)成初始值。

配置DMA彈性映射(DMA_SRC_SELx寄存器的CHx_SRC)
在非存儲器到存儲器(M2M)模式下時,需要將外設(shè)的DMA請求DMA請求號寫入,才能啟動通道響應(yīng)外設(shè)的DMA請求。

打開通道(CxCTRL寄存器的CHEN位)

配置流程

打開DMA時鐘;

調(diào)用通道復(fù)位函數(shù)復(fù)位數(shù)據(jù)流;

調(diào)用結(jié)構(gòu)體初始化函數(shù)初始化通道配置結(jié)構(gòu)體;

調(diào)用初始化函數(shù)初始化通道;

調(diào)用DMA請求映射使能函數(shù)配置彈性映射功能;

調(diào)用通道使能函數(shù)開啟通道。

審核編輯:湯梓紅

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 控制器
    +關(guān)注

    關(guān)注

    112

    文章

    15885

    瀏覽量

    175368
  • 存儲器
    +關(guān)注

    關(guān)注

    38

    文章

    7366

    瀏覽量

    163092
  • dma
    dma
    +關(guān)注

    關(guān)注

    3

    文章

    552

    瀏覽量

    99929
  • 雅特力
    +關(guān)注

    關(guān)注

    0

    文章

    150

    瀏覽量

    7914
  • AT32
    +關(guān)注

    關(guān)注

    1

    文章

    109

    瀏覽量

    2017

原文標(biāo)題:AT32講堂058 | 雅特力AT32F425 DMA使用指南

文章出處:【微信號:AT32 MCU 雅特力科技,微信公眾號:AT32 MCU 雅特力科技】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    AT32F425時鐘配置

    AT32F425時鐘配置本應(yīng)用入門指南主要介紹兩部分內(nèi)容:1、基于提供的V2.x.x 的板級支持包來進(jìn)行時鐘源碼的配置及修改2、如何使
    發(fā)表于 10-25 07:49

    AT32F425 I2C使用指南

    AT32F425 I2C使用指南本文主要就I2C 總線接口的基本功能進(jìn)行講解和案例解析。
    發(fā)表于 10-25 07:39

    AT32F425 DMA使用指南

    AT32F425 DMA使用指南本文主要就DMA 的基本功能進(jìn)行講解和案列解析。
    發(fā)表于 10-25 07:52

    AT32F425 ADC使用指南

    AT32F425 ADC使用指南本文主要以ADC 的特色功能進(jìn)行講解和案列解析。
    發(fā)表于 10-25 08:29

    AT32F425入門使用指南

    AT32F425入門使用指南旨在讓用戶快速使用AT32F425xx 進(jìn)行項目開發(fā)。
    發(fā)表于 10-26 07:46

    發(fā)布AT32F425系列Cortex?-M4 MCU

    1月18日,科技正式推出主頻高達(dá)96MHz的AT32F425系列超值型微控制器新品。作為AT32 MCU家族的第三款超值型產(chǎn)品,AT32F42
    發(fā)表于 01-19 11:44 ?1007次閱讀
    <b class='flag-5'>雅</b><b class='flag-5'>特</b><b class='flag-5'>力</b>發(fā)布<b class='flag-5'>AT32F425</b>系列Cortex?-M4 MCU

    AT32F425系列微控制器的簡單介紹

    近日,AT32F425系列MCU在百佳泰測試認(rèn)證實驗室通過USB 2.0一致性測試,并取得“USB2.0 Test Report for Embedded Host”及“USB2
    的頭像 發(fā)表于 03-28 11:14 ?5483次閱讀

    科技正式推出主頻高達(dá)96MHz的AT32F425系列

    AT32F425系列搭載了自行開發(fā)的sLib安全庫(Security Library),可支持密碼保護(hù)指定范圍程序區(qū),方案商燒錄核心算法到此區(qū)域,提供給下游客戶做二次開發(fā),強化了
    的頭像 發(fā)表于 08-18 14:52 ?1048次閱讀

    USB OTG與CAN應(yīng)用的開發(fā)首選 | 發(fā)布AT32F425系列超值型Cortex?-M4 MCU

    1月18日,科技正式推出主頻高達(dá)96MHz的AT32F425系列超值型微控制器新品。作為AT32MCU家族的第三款超值型產(chǎn)品,AT32F425
    的頭像 發(fā)表于 02-24 09:41 ?780次閱讀
    USB OTG與CAN應(yīng)用的開發(fā)首選 | <b class='flag-5'>雅</b><b class='flag-5'>特</b><b class='flag-5'>力</b>發(fā)布<b class='flag-5'>AT32F425</b>系列超值型Cortex?-M4 MCU

    AT32F425系列MCU獲百佳泰實驗室COMPLIANCE PROGRAM USB2.0測試認(rèn)證

    近日,AT32F425系列MCU在百佳泰測試認(rèn)證實驗室通過USB2.0一致性測試,并取得“USB2.0TestReportforEmbeddedHost
    的頭像 發(fā)表于 03-29 15:40 ?478次閱讀
    <b class='flag-5'>雅</b><b class='flag-5'>特</b><b class='flag-5'>力</b><b class='flag-5'>AT32F425</b>系列MCU獲百佳泰實驗室COMPLIANCE PROGRAM USB2.0測試認(rèn)證

    【1.18】USB OTG與CAN應(yīng)用的開發(fā)首選 | 發(fā)布AT32F425系列超值型Cortex?-M4 MCU

    引言:AT32F425系列超值型Cortex-M4MCU,以超值性能、超值外設(shè)及超值價格為USBOTG應(yīng)用提供高性價比入門之選,自2022年1月正式發(fā)布,產(chǎn)品公告發(fā)出后收到眾多不
    的頭像 發(fā)表于 08-19 09:48 ?789次閱讀
    【1.18】USB OTG與CAN應(yīng)用的開發(fā)首選 | <b class='flag-5'>雅</b><b class='flag-5'>特</b><b class='flag-5'>力</b>發(fā)布<b class='flag-5'>AT32F425</b>系列超值型Cortex?-M4 MCU

    AT32講堂058 | AT32F425 DMA使用指南

    通道都支持外設(shè)的DMA請求映射到任意通道上。圖1.DMA控制器架構(gòu)DMA請求彈性映射簡介在使用AT43F425xx系列DMA時,必須配置
    的頭像 發(fā)表于 06-21 17:19 ?1210次閱讀
    AT32講堂058 | <b class='flag-5'>雅</b><b class='flag-5'>特</b><b class='flag-5'>力</b><b class='flag-5'>AT32F425</b> <b class='flag-5'>DMA</b><b class='flag-5'>使用指南</b>

    AT32F425 ADC使用指南

    電子發(fā)燒友網(wǎng)站提供《AT32F425 ADC使用指南.pdf》資料免費下載
    發(fā)表于 09-19 15:44 ?1次下載
    <b class='flag-5'>AT32F425</b> ADC<b class='flag-5'>使用指南</b>

    AT32F425入門使用指南

    搭建AT32開發(fā)環(huán)境一、調(diào)試工具及開發(fā)板目前AT32F425開發(fā)板都自帶AT-Link-EZ調(diào)試工具,AT-Link-EZ如下圖左邊紅框所示,它也可拆開后單獨搭配其他電路板使用,支持IDE在線調(diào)試、在線燒錄、USB轉(zhuǎn)串口等功能。圖1.AT32F425
    的頭像 發(fā)表于 11-10 08:15 ?2113次閱讀
    <b class='flag-5'>雅</b><b class='flag-5'>特</b><b class='flag-5'>力</b><b class='flag-5'>AT32F425</b>入門<b class='flag-5'>使用指南</b>

    AT32F425入門使用指南

    電子發(fā)燒友網(wǎng)站提供《AT32F425入門使用指南.pdf》資料免費下載
    發(fā)表于 12-18 11:14 ?6次下載
    <b class='flag-5'>AT32F425</b>入門<b class='flag-5'>使用指南</b>