中级会员
 
- 积分
- 346
- 金钱
- 346
- 注册时间
- 2013-12-20
- 在线时间
- 94 小时
|
10金钱
采用STM32f0的驱动无刷电机,想利用COM事件同时切换6个通道
我这里抓了CH1 和 CH2的波形,实际测试下来要在下一个PWM开始的时候才生效
如上图所示,按照STM32的手册,启用了COM事件应该是立即生效啊,就是图中画的那个部分,现在验证下来就是少了画的哪个部分。
我在TIM1初始化的时候已经启用了
TIM_CCPreloadControl(TIM1, ENABLE);
然后在换相子程序后触发COM
pwm_scheme_Pwm_On(Motor.PhaseState); //这里是6步换相的子程序
TIM_GenerateEvent(TIM1, TIM_EventSource_COM); //这里是启用com事件
另外测试了其他两个方法
1、我换相后不触发com,测试下来,波形一直不变,验证了加了com事件应该是起作用了
2、开com的中断,测试下来,效果一样
有碰到类似的朋友帮我看看吧,实在没招了,上来请教下大家,不胜感激。
|
|