你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

CubeMX DMA 最简单的程序

[复制链接]
与龙共舞 发布时间:2018-4-25 18:07
本帖最后由 与龙共舞 于 2018-4-26 13:46 编辑

本程序简单到爆炸,就是DMA的一句话:HAL_DMA_Start(&hdma_memtomem_dma1_channel1,(uint32_t)&secdma,(uint32_t)&desdma,10);
完成内存到内存,的复制!
效果------和memcpy一毛一样。


开始MX:
1.png
2.png
3.png

所以不是瞎说的,都是最简单的操作。
生成代码开始:
  1. char secdma[10]={1,2,3},desdma[10];//1
  2. char seclib[10]={1,2,3}    ,deslib[10];//2
  3. int main(void)
  4. {
  5.   HAL_StatusTypeDef hal_status;
  6.   HAL_Init();
  7.   SystemClock_Config();
  8.   MX_GPIO_Init();
  9.   MX_DMA_Init();
  10.   hal_status=HAL_DMA_Start(&hdma_memtomem_dma1_channel1,(uint32_t)&secdma,(uint32_t)&desdma,10);//3
  11.   memcpy(deslib,seclib,10);//4
  12.         if(hal_status==HAL_OK)
  13.         {
  14.         secdma[0]=9;
  15.         }
复制代码
入上面4句话就可以了。
memcpy(deslib,seclib,10);【】<----【】
HAL_DMA_Start(&hdma_memtomem_dma1_channel1,(uint32_t)&secdma,(uint32_t)&desdma,10);【】----->【】


然后watch就可以看到3和4的效果基本一样。

收藏 评论2 发布时间:2018-4-25 18:07

举报

2个回答
奏奏奏 回答时间:2018-4-26 13:13:11
我想知道这个作用是什么?
地狱魔音 回答时间:2018-4-26 13:38:30
同楼上问

所属标签

STM32团队

意法半导体微控制器和微处理器拥有广泛的产品线,包含低成本的8位单片机和基于ARM® Cortex®-M0、M0+、M3、M4、M33、M7及A7内核并具备丰富外设选择的32位微控制器及微处理器


最新内容

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版