安排官方文档在rtstudio 上使用stm32f207的单片机配置PWM,文档配置为2khz,通过示波器测得结果为1khz,修改频率为50khz,实际测得为25KHZ,多次改变频率发现实际结果都是配置频率的一半,同样方法配置F103的配置频率和实际输出一致。
很可能是tim_clock乘2还是乘4的问题,官方驱动部分对部分ST芯片的TIMx倍频写错了,我以前在F429上也遇到过这个问题。可以改一下drv_pwm_set函数中的tim_clock试试,然后对照芯片手册看看所对应的TIMx说明。
下图是我自己工程的一次内部git提交记录,供参考。
我在上方的回复中,图无法点击后放大,所以在此处回帖。如果能解决你的问题,请采纳 @shenlan 的答案。
芯片时钟是RTT自动生成的默认配置没有改动
RTT默认配置使用的是内部时钟,具体要看硬件板子的时钟配置,软件要与硬件相对应。