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

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

3天內不再提示

雅特力AT32F423 DMA使用指南

雅特力 AT32 MCU ? 2024-02-22 08:13 ? 次閱讀

DMA簡(jiǎn)介

DMA控制器的作用不僅在增強系統性能并減少處理器的中斷生成,而且還針對32位MCU應用程序專(zhuān)門(mén)優(yōu)化設計。DMA控制器為存儲器到存儲器,存儲器到外設和外設到存儲器的傳輸提供了7個(gè)通道。每個(gè)通道都支持外設的DMA請求映射到任意通道上。圖1. DMA控制器架構4393323c-d117-11ee-9118-92fbcf53809c.png

DMAMUX簡(jiǎn)介

對于如何將外設的DMA請求映射到任意的數據流通道上,就需要使用到DMAMUX。DMAMUX針對每個(gè)外設都設計了獨有的ID號,使用者只需要將此ID號寫(xiě)入對應的寄存器中并打開(kāi)DMAMUX功能即可。DMAMUX的引入,使得DMA相較于傳統DMA控制器變得更加靈活,使用者可以隨意的分配7個(gè)通道的使用情況,不必再糾結與某個(gè)IP的DMA請求只能固定使用在某個(gè)或某幾個(gè)通道上。各IP對應ID號如下表:表1. 各IP對應ID號列表43adf0d6-d117-11ee-9118-92fbcf53809c.png注:表格中“DMAMUX請求”為ID號;“來(lái)源”為各IP的DMA請求。

DMA功能解析

編程數據寬度

DMA控制器的通道可支持傳輸不同數據寬度,byte/halfword/word。通過(guò)DMA_CxCTRL中的PWIDTH和MWIDTH位可以對源數據和目標數據的數據寬度進(jìn)行編程,通常情況下需要設置PWIDTH和MWIDTH位相等,當PWIDTH不等于MWIDTH時(shí),會(huì )依據PWIDTH/MWIDTH設定將資料對齊。圖2. PWIDTH:byte, MWIDTH: half-word43b4de8c-d117-11ee-9118-92fbcf53809c.png圖3. PWIDTH: half-word, MWIDTH: word43cafcd0-d117-11ee-9118-92fbcf53809c.png

配置DMAMUX

在M2P與P2M模式下,必須配置DMAMUX,否則DMA不會(huì )響應外設DMA請求。DMAMUX的作用是為外設的DMA請求復用通道,即任何一個(gè)外設的DMA請求可以映射到DMA1/DMA2的任意通道,這大大增加了DMA通道分配的靈活性。配置DMAMUX比較簡(jiǎn)單,只需調用專(zhuān)門(mén)提供的兩個(gè)接口函數即可:43d12f24-d117-11ee-9118-92fbcf53809c.png

配置請求生成器模塊

在配置了DMAMUX時(shí),可選擇配置DMA請求生成器模塊,模塊一共有4個(gè)請求生成器通道。此模塊無(wú)需任何傳統外設(如TIMER、SPI等)提供DMA請求,可通過(guò)外部EXINT輸入作為DMA請求源輸入。配置請求生成器模塊較為簡(jiǎn)單,只需調用專(zhuān)門(mén)提供的接口函數即可:43d53664-d117-11ee-9118-92fbcf53809c.png

配置請求同步模塊

在配置了DMAMUX時(shí),可選擇配置DMA同步模塊,模塊一共有7個(gè)同步通道。使能此功能后,當外設產(chǎn)生DMA請求時(shí),DMA不會(huì )馬上響應并傳輸數據,而是要等待同步信號的到來(lái),當接收到同步信號后,DMA才會(huì )根據配置傳輸數據;同步信號可由外部EXINT輸入提供配置同步模塊較為簡(jiǎn)單,只需調用專(zhuān)門(mén)提供的接口函數即可:43ebb2ae-d117-11ee-9118-92fbcf53809c.png

DMA配置解析

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

函數接口

表2. 通道配置函數列表43f024e2-d117-11ee-9118-92fbcf53809c.png

數據流配置

  • 設置外設地址(CxPADDR寄存器)數據傳輸的初始外設地址,在傳輸過(guò)程中不可被改變。
  • 設置存儲器地址(CxMADDR寄存器)數據傳輸的初始內存地址,在傳輸過(guò)程中不可被改變。
  • 配置數據傳輸量(CxDTCNT寄存器)可編程的傳輸數據長(cháng)度最大為65535。在傳輸過(guò)程中,該傳輸數據量的值會(huì )逐漸遞減。

數據流配置(CxCTRL寄存器)

包含通道優(yōu)先級,數據傳輸的方向、寬度、地址增量模式、循環(huán)模式和中斷方式。

優(yōu)先級(CHPL)

分為4個(gè)等級,最高優(yōu)先級、高優(yōu)先級、中等優(yōu)先級和低優(yōu)先級。

若有2個(gè)流優(yōu)先級設定相同,則較低編號的流有較高的優(yōu)先權。舉例,流1優(yōu)先于流2。

  • 數據傳輸方向(DTD)分為存儲器到外設(M2P),外設到存儲器(P2M)或存儲器到存儲器(M2M)傳輸。在存儲器到存儲器傳輸模式下不允許使用循環(huán)模式、雙緩沖模式和直接模式。數據傳輸寬度(PWIDTH/MWIDTH)根據實(shí)際使用情景,可配置寬度為byte、halfword、word。地址增量模式(PINCM/MINCM)當通道配置設定為增量模式時(shí),下一筆傳輸的地址將是前一筆傳輸地址加上傳輸寬度(PWIDTH/MWIDTH)。循環(huán)模式(LM)當流配置設定為循環(huán)模式時(shí),在最后一次傳輸后CxDTCNT寄存器的內容會(huì )恢復成初始值。
  • 使能DMAMUX(MUXSEL寄存器的TBL_SEL位)在非存儲器到存儲器(M2M)模式下時(shí),需要使能DMAMUX功能,才能啟動(dòng)數據流響應外設的DMA請求。
  • 寫(xiě)入外設ID號(MUXCxCTRL寄存器的REQSEL)在非存儲器到存儲器(M2M)模式下時(shí),需要將外設的DMA請求ID號寫(xiě)入,才能啟動(dòng)數據流響應外設的DMA請求。
  • 打開(kāi)數據流(CxCTRL寄存器的CHEN位)

配置流程

  • 打開(kāi)DMA時(shí)鐘;
  • 調用通道復位函數復位數據流;
  • 調用結構體初始化函數初始化通道配置結構體;
  • 調用初始化函數初始化通道;
  • 調用DMAMUX使能函數以及ID號寫(xiě)入函數配置DMAMUX相關(guān)內容;
  • 調用通道使能函數開(kāi)啟通道。

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

    關(guān)注

    112

    文章

    15453

    瀏覽量

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

    關(guān)注

    3

    文章

    540

    瀏覽量

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

    關(guān)注

    0

    文章

    142

    瀏覽量

    7818
收藏 人收藏

    評論

    相關(guān)推薦

    「ICCAD 2020」即將參展中國集成電路設計業(yè)2020年會(huì )

    重慶悅來(lái)國際會(huì )議中心召開(kāi),誠邀您蒞臨展位022,共同探討集成電路設計業(yè)面臨的機遇和挑戰,助力中國集成電路產(chǎn)業(yè)發(fā)展。產(chǎn)品展示1、
    發(fā)表于 12-01 17:58

    AT32F407/407A系列MCU,可輕松替換STM32F107/207/407

    407可以參考AT32F407A系列,依然可帶來(lái)CPU速度、SRAM與外設外圍上大幅度提升外,面對如此高價(jià)格的STM32F407,AT
    發(fā)表于 01-22 14:36

    JLINK調試AT32F403A的問(wèn)題無(wú)法發(fā)現芯片如何解決?

    JLINK調試AT32F403Avc的問(wèn)題,無(wú)法發(fā)現芯片(在keil下可以),如何解決?我把芯片型號切換城STM32F103vc就可以
    發(fā)表于 04-17 17:43

    AT32F425 DMA使用指南

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

    AT32F423時(shí)鐘配置入門(mén)指南

    AT32F423時(shí)鐘配置本應用入門(mén)指南主要介紹兩部分內容:1、基于提供的V2.x.x 的板級支持包來(lái)進(jìn)行時(shí)鐘源碼的配置及修改2、如何使
    發(fā)表于 10-26 07:22

    AT32F423 DMA使用指南

    AT32F423 擁有 2 個(gè) DMA 控制器(DMA1/DMA2),每個(gè) DMA 支持 7 個(gè)通道且外設的
    發(fā)表于 10-26 06:51

    AT32F423的GPIO功能及固件驅動(dòng)程序API的配置和使用

    這篇應用筆記介紹AT32F423的GPIO功能及固件驅動(dòng)程序API的配置和使用,并對BSP例程的軟件設計加以說(shuō)明,同時(shí)演示使用方法并展示實(shí)驗效果,供用戶(hù)參考。AT32F423xx的通用功能I/O
    發(fā)表于 10-26 06:26

    AT32F423安全庫應用說(shuō)明

    這篇應用筆記主要在闡述AT32F423系列安全庫區的應用原理、軟件使用方法及范例程序。
    發(fā)表于 10-26 07:18

    AT32F423入門(mén)使用指南

    AT32F423入門(mén)使用指南旨在讓用戶(hù)快速使用AT32F423xx 進(jìn)行項目開(kāi)發(fā)。
    發(fā)表于 10-26 06:37

    AT32F402/405 DMA使用指南

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

    雅特力AT32F423時(shí)鐘配置入門(mén)指南

    電子發(fā)燒友網(wǎng)站提供《雅特力AT32F423時(shí)鐘配置入門(mén)指南.pdf》資料免費下載
    發(fā)表于 01-31 09:37 ?0次下載
    雅特力<b class='flag-5'>AT32F423</b>時(shí)鐘配置入門(mén)<b class='flag-5'>指南</b>

    AT32F423 I 2C使用指南

    電子發(fā)燒友網(wǎng)站提供《AT32F423 I 2C使用指南.pdf》資料免費下載
    發(fā)表于 02-01 09:30 ?0次下載
    <b class='flag-5'>AT32F423</b> I 2C<b class='flag-5'>使用指南</b>

    雅特力AT32F423 GPIO使用指南

    GPIO特性AT32F423支持多達86個(gè)雙向I/O引腳,這些引腳分為6組,分別為PA0-PA15、PB0-PB15、PC0-PC15、PD0-PD15、PE0-PE15
    的頭像 發(fā)表于 03-05 08:18 ?378次閱讀
    雅特力<b class='flag-5'>AT32F423</b> GPIO<b class='flag-5'>使用指南</b>

    雅特力AT32F423 PWC使用指南

    關(guān)系電壓調節器,電壓調節器的幾個(gè)工作狀態(tài)省電模式,包括睡眠模式、深度睡眠模式、待機模式圖1.電源域框圖PWC基本功能解析供電方案功能介紹AT32F423MCU的供
    的頭像 發(fā)表于 03-05 08:18 ?272次閱讀
    雅特力<b class='flag-5'>AT32F423</b> PWC<b class='flag-5'>使用指南</b>

    雅特力AT32F423入門(mén)使用指南

    雅特力初步環(huán)境準備雅特力開(kāi)發(fā)環(huán)境下載地址:雅特力官方網(wǎng)站:http://www.arterytek.com搭建AT32開(kāi)發(fā)環(huán)境調試工具及開(kāi)發(fā)板目前AT32F423開(kāi)發(fā)板都自帶AT-Link-EZ調試
    的頭像 發(fā)表于 05-14 08:15 ?247次閱讀
    雅特力<b class='flag-5'>AT32F423</b>入門(mén)<b class='flag-5'>使用指南</b>
    亚洲欧美日韩精品久久_久久精品AⅤ无码中文_日本中文字幕有码在线播放_亚洲视频高清不卡在线观看