STMCU小助手
发布时间:2023-3-2 13:33
一、pwm要求
二、相关概念
pwm实际上是输出功能,输出功能还是通过引脚来实现,利用引脚的复用功能,实现引脚的配置,从而实现pwn输出功能 我们的台灯就是通过调节占空比实现暗-亮-较亮的调节 2.定时器timer有没有pwm输出功能,参考《参考手册》
如此查询可知28、29、30章的timer都支持pwm输出功能 三、CubeMX配置 1.检查某个定时器是否支持pwm输出功能?
如果有channel的话表示支持PWM输出功能 2.对引脚PA7进行配置(题目要求)
一个timer可能有很多通道支持pwm输出,可以根据自己平时练习选一个通道(我选的是timer3的通道2) 3.配置所选定时器的时钟和对应通道的功能
4.分频
5.配置占空比 在分频的时候counter period是一个周期计数500
6.相关参数解释 1.
2、
3、
pwm1和pwm2的区别: 在进行PWM信号输出时,有两种PWM模式:PWM1模式和PWM2模式。 这两种PWM模式和输出有效电平的极性共同决定了PWM信号的波形。 PWM1模式 递增计数时,当TIMx_CNT(计数值)< TIMx_CCR(捕获/比较值)时,输出为有效电平,否则为无效电平。递减计数模式则刚好相反。 PWM2模式 递增计数时,当TIMx_CNT(计数值)< TIMx_CCR(捕获/比较值)时,输出为无效电平,否则为有效电平。递减计数模式则刚好相反。
4、
5、占空比就相当于平均输出高电平20%,实验结果如下(平均输出专业术语就是pwm输出)
四、代码 1、CubeMX自动生成的代码
2、设置变量
3、根据题目要求B4按键的共能,更新按键函数
4、LED函数
5.1、PWM函数
5.2、timer定时器通道相关函数学习 HAL_TIM_PWM_Start(&htim3 ,TIM_CHANNEL_2 ); 当有按键按下的时候,开启timer3的2通道的PWM输出 HAL_TIM_PWM_Stop(&htim3 ,TIM_CHANNEL_2 ); 当有按键按下的时候,关闭timer3的2通道的PWM输出 注:__HAL_TIM_SetCompare(&htim3,TIM_CHANNEL_2,250) 是专门用来设置占空比的函数,这样就是占空比为250/500=50% 6、主函数和函数声明
五、实验结果 通过控制B4能够实现LED2的亮灭 串口部分的结果问题:
———————————————— 版权声明:想要优秀点儿 |
STM32固件库分享,超全系列整理
经验分享 | STM32G4 双BANK Flash模式页擦除话题
经验分享 | STM32G4片内FLASH擦写实验笔记
经验分享 | STM32G4系列是否支持位带操作
STM32系列芯片之间相互移植注意事项
STM32如何成为现代科技的隐形引擎
大神都是怎么学习STM32的,我也跟着学
如果你解决了这些问题,就可以直接学STM32
经验分享 | 基于STM32G4芯片TIM+SPI+DMA应用示例
新手学几天STM32,为啥一脸茫然
微信公众号
手机版