stm32的PWM1和PWM2的区别解析

news/2024/5/18 22:36:11 标签: 单片机, stm32, 硬件

对于pwm1和pwm2模式的理解

其实在官方在数据手册提供就直接找到对于这两种模式的解释

PWM1

向上计数时,一旦TIMx_CNT<TIMx_CCR1时通道1为有效电平,否则为
无效电平;在向下计数时,一旦TIMx_CNT>TIMx_CCR1时通道1为无效电平(OC1REF=0),否
则为有效电平(OC1REF=1)。

PWM2

在向上计数时,一旦TIMx_CNT<TIMx_CCR1时通道1为无效电平,否则为
有效电平;在向下计数时,一旦TIMx_CNT>TIMx_CCR1时通道1为有效电平,否则为无效电
平。
其实上面的就很直接说明了在只是在触发事件输出电平的不同区别而已,例如在pwm1模式下,定时器的计算值向上计数小于设定的比较值时为有效电平。

	TIM_OCInitStruct.TIM_OCMode = TIM_OCMode_PWM1;             //选择PWM1模式
	TIM_OCInitStruct.TIM_OutputState = TIM_OutputState_Enable; //比较输出使能
	TIM_OCInitStruct.TIM_Pulse = 0;                            //设置待装入捕获比较寄存器的脉冲值
	TIM_OCInitStruct.TIM_OCPolarity = TIM_OCPolarity_High;     //设置输出极性
	TIM_OC3Init(TIM3,&TIM_OCInitStruct);                       //初始化输出比较参数

向上面的设置输出极性为高,也就是说在输出有效电平时是为高。在pwm2模式下反之不是有效电平。
如果你想修改有效电平的话,你可以去修改CCMR1的OC1M和OC2M。
因为PWM1和PWM2模式是由CCMR1的OC1M和OC2M来决定的。


http://www.niftyadmin.cn/n/1860953.html

相关文章

IOS UIView子类UIScrollView

转自&#xff1a;http://www.cnblogs.com/nightwolf/p/3222597.html 虽然apple在IOS框架中提供了很多可以直接使用的UI控件&#xff0c;但是在实际开发当中我们通常都是要自己去定制UIView的外观和行为。所以创建UIView的子类是必需的。 刚开始接触IOS的开发&#xff0c;先从简…

从零开始制作小车TB6612控制电机

从零开始制作小车 我用的是stm32f103c8t6的板子&#xff0c;大概讲一下小车用到什么模块吧&#xff0c;我电源部分用的是LM2596的降压模块&#xff0c;比较方便&#xff0c;OLED用的是七针SPI的&#xff0c;电机驱动模块是用TB6612&#xff0c;还有一个是旋转编码器&#xff0…

一首歌

苍山洱海旁 你在我身边 这次的夏天和从前不太一样 单车在经过田野 你轻轻唱 睁开了双眼只剩下相片 牵手走过的街道就在眼前 经过的路人和我们那时一样 真的永远无法和你在一起 但我会微笑着想起远方的你 我真的只能唱歌给你听 因为长大后的世界还是分不清 一颗心 不大的地方 有…

从零开始制作蓝牙小车(后面附代码)初始化定时器1输出PWM

直接进入主题&#xff0c;这一章讲的是PWM 因为我设计的板子&#xff0c;输出PWM用的是定时器1通道1和4&#xff0c;定时器1是高级定时器&#xff0c;比普通定时器的初始化要多一点东西 其实比较重要的是这两个参数 TIM_TimeBaseStructure.TIM_Period arr; //设置在下一个更新…

python向mysql中添加数据_python 向mysql插入数据

生成随机内容用到的方法&#xff1a; substr是一个字符串函数&#xff0c;从第二个参数1,开始取字符&#xff0c;取到3 floor(rand() * 75)结束 floor函数代表的是去尾法取整数。 rand()函数代表的是从0到1取一个随机的小数。 -- rand() * 75就代表的是&#xff1a;0到75任何一…

定时器1输出PWM代码,加讲解

深度讲解32的PWM初始化的作用 我先直接贴出来代码 void TIM1_PWM_Init(u16 arr, u16 psc) {GPIO_InitTypeDef GPIO_InitStructure;TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure;TIM_OCInitTypeDef TIM_OCInitStructure;RCC_APB2PeriphClockCmd(RCC_APB2Periph_TIM1 | RC…

MFC动态创建控件

记录一下mfc动态创建控件的方法&#xff1a; 首先在资源窗口中&#xff0c;找到string Table&#xff0c;然后在里面的空白地方双击&#xff0c;然后就会出现一个列表&#xff0c;分别写好ID&#xff0c;值&#xff08;这个可能是系统自动生成的&#xff09;&#xff0c;标题&a…

python os path_python os.path模块常用方法详解

原博文 2016-06-28 14:54 − os.path模块主要用于文件的属性获取&#xff0c;在编程中经常用到&#xff0c;以下是该模块的几种常用方法。更多的方法可以去查看官方文档&#xff1a;http://docs.python.org/library/os.path.html 1.os.path.abspath(path) 返回path规范化的绝对…