那曲檬骨新材料有限公司

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

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

3天內不再提示

雅特力AT32F402/F405 DMA使用指南

雅特力 AT32 MCU ? 2024-11-20 01:03 ? 次閱讀


DMA簡介

DMA控制器的作用不僅在增強系統性能并減少處理器的中斷生成,而且還針對32位MCU應用程序專門優化設計。DMA控制器為存儲器到存儲器,存儲器到外設和外設到存儲器的傳輸提供了7個通道。每個通道都支持外設的DMA請求映射到任意通道上。圖1. DMA控制器架構

3733515a-a698-11ef-8084-92fbcf53809c.png

DMAMUX簡介

對于如何將外設的DMA請求映射到任意的數據流通道上,就需要使用到DMAMUX。DMAMUX針對每個外設都設計了獨有的ID號,使用者只需要將此ID號寫入對應的寄存器中并打開DMAMUX功能即可。DMAMUX的引入,使得DMA相較于傳統DMA控制器變得更加靈活,使用者可以隨意的分配7個通道的使用情況,不必再糾結與某個IP的DMA請求只能固定使用在某個或某幾個通道上。各IP對應ID號如下表:表1. 各IP對應ID號列表

3751def4-a698-11ef-8084-92fbcf53809c.png

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

DMA功能解析

編程數據寬度

DMA控制器的通道可支持傳輸不同數據寬度,byte/halfword/word。通過DMA_CxCTRL中的PWIDTH和MWIDTH位可以對源數據和目標數據的數據寬度進行編程,通常情況下需要設置PWIDTH和MWIDTH位相等,當PWIDTH不等于MWIDTH時,會依據PWIDTH/MWIDTH設定將資料對齊。圖2. PWIDTH:byte, MWIDTH:half-word377eb42e-a698-11ef-8084-92fbcf53809c.png圖3. PWIDTH:half-word, MWIDTH:word37961524-a698-11ef-8084-92fbcf53809c.png

配置DMAMUX

在M2P與P2M模式下,必須配置DMAMUX,否則DMA不會響應外設DMA請求。DMAMUX的作用是為外設的DMA請求復用通道,即任何一個外設的DMA請求可以映射到DMA1/DMA2的任意通道,這大大增加了DMA通道分配的靈活性。配置DMAMUX比較簡單,只需調用專門提供的兩個接口函數即可:

37adf2b6-a698-11ef-8084-92fbcf53809c.png

配置請求生成器模塊

在配置了DMAMUX時,可選擇配置DMA請求生成器模塊,模塊一共有4個請求生成器通道。此模塊無需任何傳統外設(如TIMER、SPI等)提供DMA請求,可通過外部EXINT輸入作為DMA請求源輸入。配置請求生成器模塊較為簡單,只需調用專門提供的接口函數即可:

37ca0a46-a698-11ef-8084-92fbcf53809c.png

配置請求同步模塊

在配置了DMAMUX時,可選擇配置DMA同步模塊,模塊一共有7個同步通道。使能此功能后,當外設產生DMA請求時,DMA不會馬上響應并傳輸數據,而是要等待同步信號的到來,當接收到同步信號后,DMA才會根據配置傳輸數據;同步信號可由外部EXINT輸入提供配置同步模塊較為簡單,只需調用專門提供的接口函數即可:

37f03b62-a698-11ef-8084-92fbcf53809c.png

DMA配置解析

以下對DMA的配置接口及流程進行說明。

函數接口

表2. 通道配置函數列表

3819cf9a-a698-11ef-8084-92fbcf53809c.png

數據流配置

  • 設置外設地址(CxPADDR寄存器)數據傳輸的初始外設地址,在傳輸過程中不可被改變。
  • 設置存儲器地址(CxMADDR寄存器)數據傳輸的初始內存地址,在傳輸過程中不可被改變。
  • 配置數據傳輸量(CxDTCNT寄存器)可編程的傳輸數據長度最大為65535。在傳輸過程中,該傳輸數據量的值會逐漸遞減。
  • 數據流配置(CxCTRL寄存器)包含通道優先級,數據傳輸的方向、寬度、地址增量模式、循環模式和中斷方式。優先級(CHPL)分為4個等級,最高優先級、高優先級、中等優先級和低優先級。若有2個流優先級設定相同,則較低編號的流有較高的優先權。舉例,流1優先于流2。數據傳輸方向(DTD)分為存儲器到外設(M2P),外設到存儲器(P2M)或存儲器到存儲器(M2M)傳輸。在存儲器到存儲器傳輸模式下不允許使用循環模式、雙緩沖模式和直接模式。數據傳輸寬度(PWIDTH/MWIDTH)根據實際使用情景,可配置寬度為byte、halfword、word。地址增量模式(PINCM/MINCM)當通道配置設定為增量模式時,下一筆傳輸的地址將是前一筆傳輸地址加上傳輸寬度(PWIDTH/MWIDTH)。循環模式(LM)當流配置設定為循環模式時,在最后一次傳輸后CxDTCNT寄存器的內容會恢復成初始值。
  • 使能DMAMUX(MUXSEL寄存器的TBL_SEL位)在非存儲器到存儲器(M2M)模式下時,需要使能DMAMUX功能,才能啟動數據流響應外設的DMA請求。
  • 寫入外設ID號(MUXCxCTRL寄存器的REQSEL)在非存儲器到存儲器(M2M)模式下時,需要將外設的DMA請求ID號寫入,才能啟動數據流響應外設的DMA請求。
  • 打開數據流(CxCTRL寄存器的CHEN位)

配置流程

  • 打開DMA時鐘
  • 調用通道復位函數復位數據流;
  • 調用結構體初始化函數初始化通道配置結構體;
  • 調用初始化函數初始化通道;
  • 調用DMAMUX使能函數以及ID號寫入函數配置DMAMUX相關內容;
  • 調用通道使能函數開啟通道。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • dma
    dma
    +關注

    關注

    3

    文章

    566

    瀏覽量

    100953
  • 雅特力
    +關注

    關注

    0

    文章

    168

    瀏覽量

    8141
  • AT32
    +關注

    關注

    1

    文章

    118

    瀏覽量

    2164
收藏 人收藏

    評論

    相關推薦

    AT32F402/405時鐘配置入門指南

    AT32F402/405時鐘配置本應用入門指南主要介紹兩部分內容:1、基于提供的V2.x.
    發表于 10-26 06:37

    AT32F402/405 I 2C使用指南

    AT32F402/405 I2C使用指南本文主要就I2C 總線接口的基本功能進行講解和案列解析。
    發表于 10-26 08:17

    AT32F402/405 DMA使用指南

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

    AT32F402_405 ADC使用指南

    AT32F402_405 ADC使用指南主要以ADC 的特色功能進行講解和案列解析。
    發表于 10-26 06:09

    AT32F402/405的GPIO功能及固件驅動程序API的配置和使用

    AT32F402/405 GPIO Application Note介紹AT32F402/405的GPIO功能及固件驅動程序API的配置和使用,并對BSP例程的軟件設計加以說明,同時演
    發表于 10-26 07:03

    AT32F402/405 PWC應用筆記

    AT32F402/405 PWC應用筆記主要以低功耗為基礎進行講解和案例解析。
    發表于 10-26 06:33

    AT32F402/405安全庫應用說明

    AT32F402/405 Security Library Application Note主要在闡述AT32F402/405系列安全庫區的應用原理、軟件使用方法及范例程序。
    發表于 10-26 08:30

    展臺首日速遞,AT32 MCU精彩亮相

    熱門領域產品齊聚,一展科技創新風采。新品登場,AT32F402/F405拓展高速USB應用新紀元A
    的頭像 發表于 08-24 08:17 ?676次閱讀
    <b class='flag-5'>雅</b><b class='flag-5'>特</b><b class='flag-5'>力</b>展臺首日速遞,AT32 MCU精彩亮相

    AT32F402和AT32F405系列MCU 9月正式投入量產

    力作為32位MCU創新領導者,領先業界研發USB OTG產品拓展其功能性,于近日正式推出主流型AT32F402和AT32F405系列新品,集成獨立的HS USB OTG(內建PHY
    發表于 09-06 14:55 ?1475次閱讀

    AT32F423入門使用指南

    初步環境準備開發環境下載地址:
    的頭像 發表于 05-14 08:15 ?1774次閱讀
    <b class='flag-5'>雅</b><b class='flag-5'>特</b><b class='flag-5'>力</b>AT32<b class='flag-5'>F</b>423入門<b class='flag-5'>使用指南</b>

    AT32講堂088 | AT32F402/F405時鐘配置

    介紹如何結合提供的V2.x.x的板級支持包(BSP)來配置時鐘。以下介紹時鐘配置的方法主要分兩種:1、以手動編寫代碼調用BSP中提供的驅動函數接口來進行時鐘配
    的頭像 發表于 09-15 08:08 ?607次閱讀
    AT32講堂088 | <b class='flag-5'>雅</b><b class='flag-5'>特</b><b class='flag-5'>力</b><b class='flag-5'>AT32F402</b>/<b class='flag-5'>F405</b>時鐘配置

    AT32F402/F405 GPIO應用筆記

    GPIO特性AT32F402/405支持多達56個雙向I/O引腳,這些引腳分為5組,分別為PA0-PA15、PB0-PB15、PC0-PC15、PD2、PF0-PF1、PF4-PF7、PF11、每個
    的頭像 發表于 01-10 17:28 ?278次閱讀
    <b class='flag-5'>雅</b><b class='flag-5'>特</b><b class='flag-5'>力</b><b class='flag-5'>AT32F402</b>/<b class='flag-5'>F405</b> GPIO應用筆記

    AT32F402/F405時鐘配置

    電子發燒友網站提供《AT32F402/F405時鐘配置.pdf》資料免費下載
    發表于 01-15 15:24 ?0次下載
    <b class='flag-5'>雅</b><b class='flag-5'>特</b><b class='flag-5'>力</b><b class='flag-5'>AT32F402</b>/<b class='flag-5'>F405</b>時鐘配置

    AT32F402/F405 PWC 應用筆記

    關系電壓調節器,電壓調節器的幾個工作狀態省電模式,包括睡眠模式、深度睡眠模式、待機模式圖1.電源域框圖PWC基本功能解析供電方案一、功能介紹AT32F402/40
    的頭像 發表于 01-20 18:37 ?88次閱讀
    <b class='flag-5'>雅</b><b class='flag-5'>特</b><b class='flag-5'>力</b><b class='flag-5'>AT32F402</b>/<b class='flag-5'>F405</b> PWC 應用筆記

    AT32F402/F405安全庫

    微控制器應用中一項很重要的課題。因為這一重要的需求,AT32F402/405系列提供了安全庫區(SLIB)的功能,以防止重要的IP-Code被終端用戶的程序做修改
    的頭像 發表于 01-20 18:37 ?92次閱讀
    <b class='flag-5'>雅</b><b class='flag-5'>特</b><b class='flag-5'>力</b><b class='flag-5'>AT32F402</b>/<b class='flag-5'>F405</b>安全庫
    台北县| 网上赌百家乐官网可信吗| 百家乐盛大娱乐城城| 百家乐官网破解的办法| 百家乐官网赌台| 安泽县| 澳门百家乐赌技巧| 百家乐官网推广| 老虎机破解| 百家乐稳赢技法| 大都会百家乐官网的玩法技巧和规则| 百家乐官网在线直播| 德州扑克高手| 678百家乐博彩娱乐场开户注册| 赌神网百家乐官网2| 万宁市| 威尼斯人娱乐城怎么玩| 百家乐官网官网7scs| 伟德百家乐官网下载| 开棋牌室赚钱吗| 福布斯百家乐的玩法技巧和规则 | 视频百家乐官网代理| 准格尔旗| 皇家赌场下载| 迪士尼百家乐的玩法技巧和规则| 百家乐摇色子网站| 百家乐官网娱乐注册就送| 六合彩生肖| 爱玩棋牌官方下载| 大发888 娱乐| 百家乐博赌场娱乐网规则| 澳门百家乐真人娱乐场| 澳门百家乐心理| 誉博百家乐官网327589| 真人百家乐官网澳门娱乐城| 百家乐赌场技巧论坛| 正品百家乐官网的玩法技巧和规则 | 推二八杠技巧| 可信百家乐的玩法技巧和规则| 哪个百家乐投注比较好| 百家乐最新的投注方法|