启用STM32F103 的PB3(TIM2 CH2) PB4(TIM3 CH1) 引脚输出PWM波形 用DMA控制PWM占空比。
遇到的问题是TIM2 和TIM3 一起初始化之后只能有一个通道输出PWM或者都无法输出PWM波形,分别单独开启TIM2 或者TIM3 时候都可以正常工作。
仅做PWM输出不开启DMA时候也是一样的情况,但是最初调试PWM没开启DMA传输时候两个引脚都可以正常产生PWM波形。后来不知道为何就出现这样的问题了。
贴上部分代码,代码有参考网上别人的代码写的。希望有知道的能提出点指导意见。(图片 源代码复制粘贴会乱)
TIM3 PWM DMA 控制.png (18.27 KB, 下载次数: 0)
下载附件
2019-5-6 18:17 上传
DMA_SetCurrDataCounter(DMA1_Channel6, 144);
DMA_Cmd(DMA1_Channel6, ENABLE);
TIM_SetCounter(TIM3,0);
TIM_Cmd(TIM3, ENABLE);
while(!DMA_GetFlagStatus(DMA1_FLAG_TC6));
TIM_Cmd(TIM3, DISABLE);
DMA_Cmd(DMA1_Channel6, DISABLE);
DMA_ClearFlag(DMA1_FLAG_TC6);
一周热门 更多>