最近遇到一个场景需求,需要使用4MHz的PWM
PWM相关连接
查了文档发现,文档上说频率必须在3Hz~160KHz之间,这就满足不了需求了
但是我又看到上面写了:PWM时钟频率为40MHz,按理来说应该可以分到4MHz的频率才对
于是我就试了一下。结论肯定是可以的,不然也不会有这篇文章了。
首先我们打开SDK的PWM例程 路径:wm_iot_sdk\examples\peripheral\pwm
复制该例程。先将其它用不到的给删除。然后添加死循环防止退出。
然后将55~60行给修改。
稍微解释一下:chanel是选择通道,可选0~4;mode是模式,可选独立输出模式、全通道同步输出模式等;clkdiv可以理解为二级分分频;period_cycle可以理解为一级分频;duty_cycle是占空比系数;autoload是自动重载。
根据频率计算公式和占空比计算公式,就可以得出频率为4MHz占空比为50%的PWM了