OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 3078|回复: 2

DMA 在传输的过程中一直卡在HAL_BUSY

[复制链接]

3

主题

6

帖子

0

精华

新手上路

积分
48
金钱
48
注册时间
2020-1-17
在线时间
12 小时
发表于 2020-7-25 00:03:53 | 显示全部楼层 |阅读模式
1金钱
求助一下这是我的一些dma配置
hdma_dac1_ch1.Instance = DMA1_Stream5;
    hdma_dac1_ch1.Init.Request = DMA_REQUEST_DAC1;
    hdma_dac1_ch1.Init.Direction = DMA_MEMORY_TO_PERIPH;
    hdma_dac1_ch1.Init.PeriphInc = DMA_PINC_DISABLE;
    hdma_dac1_ch1.Init.MemInc = DMA_MINC_ENABLE;
    hdma_dac1_ch1.Init.PeriphDataAlignment = DMA_PDATAALIGN_HALFWORD;
    hdma_dac1_ch1.Init.MemDataAlignment = DMA_MDATAALIGN_HALFWORD;
    hdma_dac1_ch1.Init.Mode = DMA_NORMAL;
    hdma_dac1_ch1.Init.Priority = DMA_PRIORITY_MEDIUM;
    hdma_dac1_ch1.Init.FIFOMode = DMA_FIFOMODE_ENABLE;
    hdma_dac1_ch1.Init.FIFOThreshold = DMA_FIFO_THRESHOLD_FULL;
    hdma_dac1_ch1.Init.MemBurst = DMA_MBURST_SINGLE;
    hdma_dac1_ch1.Init.PeriphBurst = DMA_PBURST_SINGLE;
    if (HAL_DMA_Init(&hdma_dac1_ch1) != HAL_OK)
    {
      Error_Handler();
    }
    __HAL_LINKDMA(dacHandle,DMA_Handle1,hdma_dac1_ch1);
    /* DAC1 interrupt Init */
    HAL_NVIC_SetPriority(TIM6_DAC_IRQn, 0, 0);
    HAL_NVIC_EnableIRQ(TIM6_DAC_IRQn);


然后我调用HAL_DAC_Start_DMA(&hdac1,DAC_CHANNEL_1,(u32*)&Value2,1,DAC_ALIGN_12B_R);进行DMA赋值
但是我的DMA一直卡在HAL_BUSY,请问一下是什么原因

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

21

主题

2205

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
5137
金钱
5137
注册时间
2014-8-26
在线时间
1316 小时
发表于 2020-7-25 18:42:02 | 显示全部楼层
debug看下dma是什么状态的
回复

使用道具 举报

3

主题

6

帖子

0

精华

新手上路

积分
48
金钱
48
注册时间
2020-1-17
在线时间
12 小时
 楼主| 发表于 2020-7-26 14:25:00 | 显示全部楼层
login_FAE 发表于 2020-7-25 18:42
debug看下dma是什么状态的

我debug 过了  他好像被锁死了
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-4-30 19:28

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表