CW32L052 DMA直接内存访问
概述
CW32L052支持DMA(Direct Memory Access),即直接内存访问,无需CPU干预,实现高速数据传输。数据的传输可以发生在:
• 外设和内存之间:例如ADC采集数据到内存,这种传输方式常见于需要将外设采集的数据快速传输到内存进行处理的应用。
• 内存和内存之间:例如在两个不同的数组之间传输数据,或者在不同的内存块之间进行数据拷贝。
• 外设和外设之间:例如从一个SPI主/从机传输数据到另一个SPI从/主机。
使用DMA能够有效减轻CPU的负担,特别是在大量数据需要高效传输的情况下,可以提高系统的整体性能。
框图
DMA功能框图
特性
使用DMA,最核心的就是配置要传输的数据,包括数据从哪里来,要到哪里去,传输的数据的单位是什么,要传多少数据,是一次传输还是连续传输等等。
4 条独立DMA通道:
4个DMA通道的优先级和通道号绑定,通道号越小优先级越高,通道号越大优先级越低。
4种传输模式:
硬件触发BULK传输模式、硬件触发BLOCK传输模式、软件触发BULK传输模式和软件触发BLOCK传输模式。
BULK传输模式:
适用于小数据块的传输,通常涉及大量的数据点,但每个数据点的大小较小。
与BLOCK模式不同,BULK模式下DMA会更频繁地启动新的传输,因为每个数据点通常被视为单独的传输单元,所以DMA控制器需要在每个数据点传输完成后需要重新配置或者启动DMA。在BULK传输模式下,传输过程不可被打断。
BLOCK传输模式:
适用于大数据块的高速传输,通常用于需要连续传输大量数据的情况。BLOCK模式下,DMA会将数据分成较大的块,并在传输时以这些块为单位进行操作。DMA控制器在一次配置后,连续传输多个数据块,而无需额外的干预或重新配置。每传输完成1个数据块后就要进行一次传输优先级的仲裁,允许CPU或者更高优先级的DMA通道访问当前DMA通道所占用的外设。
• 硬件触发和软件触发:
要想通过DMA来传输数据,必须先给DMA控制器发送DMA请求。部分外设支持硬件触发启动DMA传输,如FLASH存储器、UART串口、TIM定时器、ADC数模转换器等被配置为DMA通道的触发源时,
可以产生DMA请求(DMA request),硬件触发启动DMA传输,
而不支持硬件DMA的外设,只能配置为软件触发启动DMA传输。
虽然每个通道可以接收多个外设的请求,但是同一时间只能接收一个,不能同时接收多个。
• DMA中断
DMA通道在传输工程中可产生2个中断标志:传输错误中断标志和传输完成中断标志
不同 DMA 通道的中断各自独立,通过中断标志寄存器 DMA_ISR 可以获取各通道的中断标志。标志对应多个可能的产生原因,具体产生原因需查询 DMA_CSRy.STATUS 状态位,如下表所示
• 数据宽度:
数据位宽可以设置为8bit、16bit和32bit,DMA通道的源地址和目的地址的位宽必须完全一致
• 数据块数量:
传输的数据块数量可以设置为1 ~ 65535
• 数据传输优先级
当CPU和DMA访问不同的外设时,数据的传输可以同时进行;
当CPU和DMA同时访问同一个外设时,CPU的优先级高于DMA。
从外设到内存
通过ADC转换完成标志触发(硬件触发)DMA方式实现外设到内存的DMA传输
核心代码:
演示:ADC转换结果为1580左右,换算成电压:1580/4096*3.3=1.27V
从内存到内存
通过软件触发DMA方式实现内存(FLASH)到内存(SRAM)的DMA传输
核心代码:
从外设到外设
通过硬件触发DMA方式实现外设(SPI)到外设(SPI)的DMA传输
核心代码:
- |
- +1 赞 0
- 收藏
- 评论 0
本文由JWM转载自武汉芯源(CW32生态社区公众号),原文标题为:CW32L052 DMA直接内存访问,本站所有转载文章系出于传递更多信息之目的,且明确注明来源,不希望被转载的媒体或个人可与我们联系,我们将立即进行删除处理。
相关推荐
【经验】武汉芯源半导体CW32系列微控制器如何进入ISP模式以及ISP协议详解
武汉芯源半导体CW32系列微控制器片上FLASH存储器有一部分区域用于存储BootLoader启动程序,用户可利用BootLoader启动程序提供的ISP模式,通过UART串口方便地实现对CW32微控制器片上FLASH主存储器的擦除和烧写。
设计经验 发布时间 : 2022-08-15
【经验】武汉芯源半导体CW32微控制器的烧录器CW-Writer介绍及使用方法
本文介绍了武汉芯源半导体CW32微控制器的烧录器CW-Writer以及与之配合的软件CW-Programmer的使用方法。烧录器CW-Writer通过ISP协议,可实现对CW32微控制器FLASH的离线或在线的程序烧录。
设计经验 发布时间 : 2022-08-14
【经验】武汉芯源微控制器CW32F030系列芯片如何运用DMA功能实现高级定时器和ADC的同步触发采样
在做BLDC电机控制时,需要ADC的采样时刻和定时器产生的PWM波形相配合,才能获取准确的采样值,本文介绍了武汉芯源半导体微控制器CW32F030系列芯片通过运用DMA功能实现高级定时器和ADC的同步触发采样的功能。
设计经验 发布时间 : 2022-08-16
武汉芯源(CW)CW32系列微控制器选型表
描述- 武汉芯源半导体目前已推出CW32F003系列、CW32F030系列以及CW32L083系列MCU产品,可以满足各行业的需求,客户行业广泛涉及通信电子、工业电子、消费电子、新能源、安防监控、物联网以及汽车电子等多个行业,并且已经在无线充方案、电子烟方案、水表方案、燃气表方案、BLDC电动工具、BMS方案、三轴云台、无线传感器方案等项目中得到实际应用,未来将能够满足更多的市场需求。
型号- CW32F030K8T7,F002,F003,CW32F030F8V7,CW32L083MCT6,CW32W031R8U6,CW32L031C8T6,A030 系列,L052,L083 系列,F030,L052 系列,CW32F030K8U7,L031 系列,CW32L052R8S6,CW32A030C8T7,A030,CW32L031K8U6,CW32L031C8U6,CW32L031F8P6,CW32L083RCT6,R031 系列,CW32R031C8U6,CW32L052C8T6,CW32L083VCT6,CW32 系列,CW32F020K6U7,F020,CW32,CW32F030F6P7,CW32L052R8T6,CW32F002F3U7,F002 系列,CW32L083RCS6,CW32F020C6U7,R031,CW32L031F8U6,CW32F003F4P7,L031,F030 系列,F003 系列,CW32F020F6U7,CW32F030C8T7,CW32F002F3P7,F020 系列,CW32F003F4U7,CW32L083RBT6,L083,CW32F003E4P7,W031 系列,W031
CW32L031 ARM® Cortex®-M0+ 32 位低功耗微控制器,64K 字节 FLASH,8K 字节 RAM数据手册
型号- CW32L031,CW32L031 系列,CW32,CW32L031C8T6X,CW32L031X8,CW32L031XX,CW32L031C8,CW32L031K8U6,CW32L031K8V6,CW32L031K8,CW32L031F8P6,CW32L031C8U6,CW32L031F8,CW32L031F8U6,CW32L031C8T6
CW32L083: ARM® Cortex®-M0+ 32 位低功耗微控制器256K 字节 FLASH,24K 字节 RAM 数据手册 版本号:Rev 1.1
型号- CW32L083XB,CW32L083VCT6,CW32L083XC,CW32L083VC,CW32L083,CW32L083RBT6,CW32L083VCT6X,CW32L083RB
CW32F030x6/x8 ARM® Cortex®-M0+ 32 位微控制器,64K 字节 FLASH,8K 字节 RAM 数据手册
型号- CW32F030X6,CW32F030X8,CW32F030K8T7,CW32F030K8U7,CW32F030C8T7,CW32F030F6P7,CW32F030C8T6,CW32F030F6P6,CW32F030F8,CW32F030C8,CW32F030F8V7,CW32F030F6,CW32F030C8T7X,CW32F030K8
CW32x030 ARM® Cortex®-M0+ 32 位微控制器用户手册
型号- CW32X030 系列,CW32A030 系列,CW32X030,CW32X030C8T7-LQFP48,CW32F030 系列,CW32A030,CW32F030
CW32F003x3/x4 ARM® Cortex®-M0+ 32 位微控制器,20K 字节 FLASH,3K 字节 RAM 数据手册
型号- CW32F003X4,CW32F003F4,CW32F003E4,CW32F003F4P7TR,CW32F003E4P7X,CW32F003X3,CW32F003F4U7,CW32,CW32F003E4P7,CW32F003F4P7
CW32L083 ARM® Cortex®-M0+ 32 位低功耗微控制器,256K 字节 FLASH,24K 字节 RAM 数据手册
型号- CW32L083XB,CW32L083XC,CW32L083VCT6,CW32L083VC,CW32L083,CW32L083VCT6X,CW32L083MC,CW32L083MCT6,CW32L083RCS6,CW32L083RCT6,CW32L083RBT6,CW32L083RB,CW32L083RC
电子商城
现货市场
服务
可定制板装式压力传感器支持产品量程从5inch水柱到100 psi气压;数字输出压力传感器压力范围0.5~60inH2O,温度补偿范围-20~85ºС;模拟和数字低压传感器可以直接与微控制器通信,具备多种小型SIP和DIP封装可选择。
提交需求>
定制水冷板尺寸30*30mm~1000*1000 mm,厚度1mm~50mm,散热能力最高50KW,承压可达3MPA;液冷机箱散热能力达500W~100KW。项目单次采购额需满足1万元以上,或年需求5万元以上。
提交需求>
登录 | 立即注册
提交评论