STM32Cube的PWM控制基础篇(三)定时器的PWM设置详解

STM32Cube的PWM控制基础篇(一)一路PWM设置
STM32Cube的PWM控制基础篇(二)多路占空比不同的PWM
今天是挤牙膏的第三天,感觉如果每天都放很多干货的话可能会拖更,想我这么诚实的博主现在已经很少了,嘿嘿嘿嘿嘿嘿嘿嘿嘿嘿嘿嘿嘿嘿嘿嘿嘿嘿嘿嘿嘿!

今天就来讨论一下之前在设置定时器里的PWM选项的具体内容

一、内容讲解

打开之前建立的项目,到配置界面
在这里插入图片描述
点击TIM1,进入如下界面
在这里插入图片描述
下拉到PWM设置部分
在这里插入图片描述
接下来就具体讲一讲这几个参数的意义

以下例子我以500Hz,占空比为30%的PWM波为基础进行操作

1、Mode(PWM的模式)

该选项中有PWM Mode 1和PWM Mode 2两个选项
PWM Mode 1 :正常理解的PWM波

结果为:
PWM1
PWM Mode 2 :与PWM1模式互补的波(PWM模式1为高电平时PWM2为低电平,反之亦然)

结果为:
PWM2

2、Pulse(脉冲宽度)

Pulse16位二进制数,可以输入范围为0-2^16等于 0-65535的10进制数

改变Pulse就是改变PWM的初始脉冲宽度

		占空比=(Pulse/自动重载值)*100%
		自动重载值为定时器的  Counter Period值

此时我们将Pulse改为900,则占空比为900/1000=90%

结果为:
改变Pulse
由图可见PWM的高电平部分时间已经变为周期的90%

3、FastMode(快速模式【ENABLE/DISABLE】)

本着负责任的态度,我在这里承认我是个菜狗,FastMode我找了很多相关资料都没有找到对应的解释,大概就是使用IIC总线这样子,具体的我也不知道是什么情况,等我研究清楚这个问题会在之后为大家解释!!!

4、CH Polarity(频道有效电平【High/Low】)

顾名思义,这个参数就是控制有效电平的,因为有一些芯片的处理需要的是高电平有效,一些是需要低电平有效,为了在提高STM32适应性的同时不把我们程序猿的脑子搞乱,就有了这个设置,以下是实验效果

当CH Polarity为High时,结果为:
CH Polarity为High
当CH Polarity为Low时,结果为:
CH Polarity为Low
由上图所知当占空比为30%时

当CH Polarity为High时,高电平占30%
当CH Polarity为Low时,低电平占30%
5、CH Idle State(空闲状态【Set/Reset】)

同样顾名思义,CH Idle State为该频道PWM不输出时的状态

Set为高电平
Reset为低电平

我们将main.c的PWM启动注释掉之后进行观测

当CH Idle State为Set时,结果为:
在这里插入图片描述
由图可知,PWM关闭状态下为高电平

当CH Idle State为Reset时,结果为:
在这里插入图片描述
由图可知,PWM关闭状态下为低电平
至此为止,PWM设置部分参数解释完毕,撒花撒花!!!

										Good Game!!!!!!

					接下来会推出一系列的关于PWM控制电机的分享,有需要的猿们敬请关注!!!!!

以上内容欢迎大家转载引用,标明出处即可!!!!!

发布了20 篇原创文章 · 获赞 53 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/ASWaterbenben/article/details/93466073