关于修改stm32定时器输出pwm波的频率和周期问题

2019-08-17 04:18发布

我想得到500hz,2ms的pwm波,用频率计算公式f=72m/((arr+1)*(psc+1)),选择了arr=19,psc=7199,理论上是可以的,不过调出的波却是50hz,20ms的,问了正点原子的技术人员,让我改成(799,199),这个可以实现,不过他也不知道原理是什么。哪个大神遇到过这种情况,帮忙解答一下,非常感谢。因为刚玩这个号,只有1金钱,委屈大神们了
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
5条回答
正点原子
1楼-- · 2019-08-17 09:36
 精彩回答 2  元偷偷看……
我是路人甲
2楼-- · 2019-08-17 14:06
正点原子 发表于 2017-7-1 00:16
19,7199,配置出来,应该是450hz才对,怀疑你代码有bug,自己找一下。

72M/(20*7200)不应该是500吗  怎么是450呢
fucha2
3楼-- · 2019-08-17 18:49
正点原子 发表于 2017-7-1 00:16
19,7199,配置出来,应该是450hz才对,怀疑你代码有bug,自己找一下。

原子哥,我之前用的别人的代码,后来也用了你们的标准例程,理论上行得通,不过确实是出不来啊,难道是硬件出问题了吗?我之前把开发板的芯片给烧了,又重新换的
正点原子
4楼-- · 2019-08-17 22:51
我是路人甲 发表于 2017-7-1 09:22
72M/(20*7200)不应该是500吗  怎么是450呢

算错,晕。。。
正点原子
5楼-- · 2019-08-18 00:39
fucha2 发表于 2017-7-1 15:54
原子哥,我之前用的别人的代码,后来也用了你们的标准例程,理论上行得通,不过确实是出不来啊,难道是硬 ...

试试寄存器版本代码

一周热门 更多>