0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

AT32讲堂049 | 雅特力AT32F435/437 DMA使用指南

雅特力 AT32 MCU 2023-03-31 11:04 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

DMA简介

DMA控制器的作用不仅在增强系统性能并减少处理器的中断生成,而且还针对32位MCU应用程序专门优化设计。DMA控制器为存储器到存储器,存储器到外设和外设到存储器的传输提供了7个通道。每个通道都支持外设的DMA请求映射到任意通道上。图1. DMA控制器架构bc6c252e-cd44-11ed-ad0d-dac502259ad0.png

DMAMUX简介

对于如何将外设的DMA请求映射到任意的数据流通道上,就需要使用到DMAMUX。DMAMUX针对每个外设都设计了独有的ID号,使用者只需要将此ID号写入对应的寄存器中并打开DMAMUX功能即可。DMAMUX的引入,使得DMA相较于传统DMA控制器变得更加灵活,使用者可以随意的分配7个通道的使用情况,不必再纠结与某个IP的DMA请求只能固定使用在某个或某几个通道上。

各IP对应ID号如下表:

表1. 各IP对应ID号列表bc8d38cc-cd44-11ed-ad0d-dac502259ad0.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-wordbca55a38-cd44-11ed-ad0d-dac502259ad0.png图3. PWIDTH:half-word, MWIDTH:wordbcc0c912-cd44-11ed-ad0d-dac502259ad0.png

配置DMAMUX

在M2P与P2M模式下,必须配置DMAMUX,否则DMA不会响应外设DMA请求。DMAMUX的作用是为外设的DMA请求复用通道,即任何一个外设的DMA请求可以映射到DMA1/DMA2的任意通道,这大大增加了DMA通道分配的灵活性。

配置DMAMUX比较减到,只需调用专门提供的两个接口函数即可:

bcddf2b2-cd44-11ed-ad0d-dac502259ad0.png

DMA配置解析

以下对DMA的配置接口及流程进行说明。

函数接口

表2. 通道配置函数列表bcedef0a-cd44-11ed-ad0d-dac502259ad0.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相关内容;
  • 调用通道使能函数开启通道。


关于雅特力雅特力科技于2016年成立,是一家致力于推动全球市场32位微控制器(MCU)创新趋势的芯片设计公司,专注于ARM Cortex-M4/M0+的32位微控制器研发与创新,全系列采用55nm先进工艺及ARM Cortex-M4高效能或M0+低功耗内核,缔造M4业界最高主频288MHz运算效能,并支持工业级别芯片工作温度范围(-40°~105°)。雅特力目前已累积相当多元的终端产品成功案例:如微型打印机、扫地机、光流无人机、热成像仪、激光雷达、工业缝纫机、伺服驱控、电竞周边市场、断路器、ADAS、T-BOX、数字电源、电动工具等终端设备应用,广泛地覆盖5G物联网、消费、商务及工控等领域。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 控制器
    +关注

    关注

    114

    文章

    17956

    浏览量

    196428
  • dma
    dma
    +关注

    关注

    3

    文章

    584

    浏览量

    106551
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    TPS65011EVM - 049评估模块使用指南

    TPS65011EVM - 049评估模块使用指南 一、引言 在电子设备的设计中,电源和电池管理是至关重要的环节。德州仪器(Texas Instruments)的TPS65011EVM - 049
    的头像 发表于 04-25 15:40 636次阅读

    基于TinyUSB的RNDIS主机示例

    本帖最后由 jf_77210199 于 2026-4-1 09:13 编辑 本帖描述如何使用基于TinyUSB的RNDIS主机示例 支持型号: AT32F435 系列、 AT32F437 系列
    发表于 03-29 10:07

    AT32F011 系列快速使用指南

    的代码是基于提供的V2.x.x 板级支持包(BSP)而开发,对于其他版本BSP,需要注意使用上的区别。 支持型号: AT32F011 系列 1 初步环境准备
    发表于 03-02 11:27

    主频高出40%意味着什么 AT32F437VGT7性能解读

    AT32F437VGT7系列MCU基于ARM® Cortex®-M4内核,以288MHz高主频和丰富存储资源,为伺服驱动器提供强大的实时控制核心,通过硬件FPU和高级定时器实现微
    的头像 发表于 02-28 10:08 520次阅读
    主频高出40%意味着什么 <b class='flag-5'>雅</b><b class='flag-5'>特</b><b class='flag-5'>力</b>AT32<b class='flag-5'>F437</b>VGT7性能解读

    科技通过ISO 26262汽车功能安全ASIL D认证

    近日,科技正式通过ISO26262汽车功能安全ASILD流程认证,并由国际公认的测试、检验和认证机构SGS颁发认证证书。此次认证标志着
    的头像 发表于 02-06 18:33 1162次阅读
    <b class='flag-5'>雅</b><b class='flag-5'>特</b><b class='flag-5'>力</b>科技通过ISO 26262汽车功能安全ASIL D认证

    工业级MCUAT32F455RCT7核心技术解析

    AT32F455RCT7基于192MHz Cortex-M4F内核,集成丰富通信接口与硬件加密单元,具备-40℃~105℃工业级工作温
    的头像 发表于 01-29 09:53 1065次阅读
    工业级MCU<b class='flag-5'>雅</b><b class='flag-5'>特</b><b class='flag-5'>力</b>AT32<b class='flag-5'>F</b>455RCT7核心技术解析

    从实验室到蓝天:AT32 MCU如何成为无人机飞控的“中国芯”?

    最近帮客户调试一款工业级无人机飞控时,对方研发总监甩来一句灵魂拷问:“你们国产MCU能做到288MHz主频下,同时跑通FOC电机控制+多传感器融合算法吗?” 当时我直接把AT32F435的测试数据甩
    的头像 发表于 01-08 14:38 705次阅读

    国产MCU替代优选!AT32系列凭高性能+高兼容,横扫工控/消费/AIoT多场景

    在国产化替代加速背景下,AT32系列MCU成工程师优选。该系列基于ARM Cortex-M4/M0+内核,具备高主频、丰富外设及工业级可靠性,关键性能对标国际一线品牌。核心优势在
    的头像 发表于 01-07 17:15 2343次阅读

    AT32 MCU推动低空经济发展

    AT32系列MCU凭借288MHz主频与高精度外设,为无人机飞控、电调及云台提供核心算支持,实现厘米级定位与高效动力控制,显著提升在
    的头像 发表于 12-04 09:53 2072次阅读
    <b class='flag-5'>雅</b><b class='flag-5'>特</b><b class='flag-5'>力</b><b class='flag-5'>AT32</b> MCU推动低空经济发展

    AT32F413芯片推动洗衣机节能升级

    AT32F413系列MCU以150MHz Cortex-M4内核和无感FOC算法,实现洗衣机直驱电机精准控制,将运行噪音降至45dB以下,能耗达国标一级能效。其集成多重安全防护与
    的头像 发表于 11-04 09:45 1009次阅读
    <b class='flag-5'>雅</b><b class='flag-5'>特</b><b class='flag-5'>力</b>AT32<b class='flag-5'>F</b>413芯片推动洗衣机节能升级

    AT32F421吊扇控制芯助力绿色节能

    AT32F421 MCU 主打吊扇控制器,凭无感 FOC、高集成、多保护优势,满足工程师降本提效、用户舒适节能需求,适配智能家居与能效趋势。
    的头像 发表于 10-22 09:45 715次阅读
    <b class='flag-5'>雅</b><b class='flag-5'>特</b><b class='flag-5'>力</b>AT32<b class='flag-5'>F</b>421吊扇控制芯助力绿色节能

    AT32F421定义高速吹风机控制新标准​

    AT32F421 MCU为高速吹风机提供方案,支持10000-120000rpm转速,采用无感FOC控制,低噪高效且有过流保护,解决传统吹风机痛点,推动行业技术升级。
    的头像 发表于 09-24 09:35 1090次阅读
    <b class='flag-5'>雅</b><b class='flag-5'>特</b><b class='flag-5'>力</b>AT32<b class='flag-5'>F</b>421定义高速吹风机控制新标准​

    MCU智能监测系统为电钻提供全链路保护

    AT32M412EBP7以240 MHz Cortex-M4F硬核驱动无刷FOC,65 N·m零速启停,4 MSPS ADC精检电流,-40~105 ℃宽温运行,动态功耗仅80
    的头像 发表于 09-10 09:25 1463次阅读
    <b class='flag-5'>雅</b><b class='flag-5'>特</b><b class='flag-5'>力</b>MCU智能监测系统为电钻提供全链路保护

    大彩讲堂:VisualHMI-LUA教程-on_update回调函数使用指南

    回调函数使用指南
    的头像 发表于 08-31 16:25 1246次阅读
    大彩<b class='flag-5'>讲堂</b>:VisualHMI-LUA教程-on_update回调函数<b class='flag-5'>使用指南</b>

    ​​AT32F435:240MHz多轴伺服控制成本最优解​

    AT32系列以“纳米级精度、微秒级响应、全栈式生态”重构伺服控制系统边界,其算架构、实时控制链及安全机制精准匹配工业自动化高可靠性需
    的头像 发表于 07-25 10:35 1200次阅读
    ​​<b class='flag-5'>雅</b><b class='flag-5'>特</b><b class='flag-5'>力</b><b class='flag-5'>AT32F435</b>:240MHz多轴伺服控制成本最优解​