本帖最后由 tcdbobo 于 2020-5-14 08:47 编辑
现在出PWM了,但是频率是恒定的,没有变化。请详见截图!!! 我的做法是在main.c文件里while(1)前,把gFlag.MotorActiveEnable =1;(初始赋值1)我试过不加上这句话,就没有PWM输出。
另外我把状态机 Focus_StateMachine()这个函数也放在while(1)前面,没有让它循环执行,结果就是有波形输出了。如果放在while(1)里就没有波形输出。所以不知道您的main.c程序是怎么写的,这几个函数是如何调用的。另外SpeedAdjust_ModeS()这个函数,我看是包在状态机Focus_StateMachine()的。所以我在main.c里就没有调用【现实是我尝试在main.c里加上了一句SpeedAdjust_ModeS(500)】。结果导致没有任何波形输出。
另外最后还想问一下,您博客最一开始那个“程序一共用到2个定时器,一个出PWM ,另一个是开启定时中断用于算法的实现”。我这里用的是TIM6基础定时器,在main.c里就是简单调用了一下,HAL_TIM_Base_Start_IT(&htim6);还是需要写个中断回调函数吗?
|