输入捕获触发DMA 传输

2019-07-20 03:12发布

我用定时器 的PWM输入模式,在触发输入捕获中断后启用DMA 将寄存器CCR的值传递到数组里,可不知道中断里哪里写错了,数组里没有数值,请帮忙解答一下吧,谢谢了[mw_shl_code=applescript,true]//输入捕获中断回调函数
void HAL_TIM_IC_CaptureCallback (TIM_HandleTypeDef *htim)
{
        if (htim->Channel == HAL_TIM_ACTIVE_CHANNEL_1)//通道1
        {
                 /* Get the ist Input Capture value */
               
                 if(HAL_OK==HAL_TIM_IC_Start_DMA(&htim1,TIM_CHANNEL_1,Pulse_Width1, 4))
                 {
                         Pulse_count1++;
                         if(__HAL_DMA_GET_FLAG(&htim1,DMA_FLAG_TCIF1_5))//等待DMA2_Steam1传输完成
                         {
                                __HAL_DMA_CLEAR_FLAG(&htim1,DMA_FLAG_TCIF1_5);//清除DMA2_Steam1传输完成标志
                                HAL_TIM_IC_Stop_DMA(&htim1,TIM_CHANNEL_1) ;     //传输完成以后关闭DMA
                         }
                 }
}[/mw_shl_code]

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
4条回答
正点原子
1楼-- · 2019-07-20 08:43
帮顶
1208
2楼-- · 2019-07-20 09:41
 精彩回答 2  元偷偷看……
13969873363
3楼-- · 2019-07-20 13:53
 精彩回答 2  元偷偷看……
13969873363
4楼-- · 2019-07-20 16:30
这是一个PWM输入模式的程序,暂时DMA 不能用,有需要的拿去吧

一周热门 更多>