STM32H743+CubeMX-低功耗定时器LPTIM输出PWM波
生活随笔
收集整理的这篇文章主要介绍了
STM32H743+CubeMX-低功耗定时器LPTIM输出PWM波
小编觉得挺不错的,现在分享给大家,帮大家做个参考.
文章目录
- 一、前言
- 二、CubeMX
- 2.1、Clock Configuration
- 2.2、LPTIM2 Mode and Configuration
- 2.3、Parameter Settings
- 2.4、生成代码
- 三、代码
- 3.1、lptim.c
- 3.2、烧写代码
- 四、细节补充
相关笔记:
STM32H743+CubeMX-定时器TIM输出PWM(Output Compare模式)
STM32H743+CubeMX-定时器TIM输出PWM(PWM Generation模式)
一、前言
PWM波形在实际工作上有非常广泛的使用,尤其在步进电机控制与LED阵列的控制。Cortex-M7架构增加了好几个低功耗定时器LPTIM,也可以用来产生PWM波。
LPTIM没有普通TIM的功能强大,主要的用途在于低功耗。
如下图所示,PWM波的频率是10kHz,占空比50%。
二、CubeMX
2.1、Clock Configuration
LPTIM2,LPTIM3等时钟源都是APB4总线,所以LPTIM2的工作频率是120M。
2.2、LPTIM2 Mode and Configuration
不勾选Waveform Generation的话,就没有分配GPIO口。
2.3、Parameter Settings
2.4、生成代码
三、代码
3.1、lptim.c
在函数MX_LPTIM2_Init(void)里添加用户代码,HAL_LPTIM_PWM_Start()开启PWM波输出,并设置ARR寄存器与CMP寄存器。
HAL_LPTIM_PWM_Start( )的第二个入口参数Period与第三个入口参数Pulse计算PWM波的频率与占空比。
PWM波的频率 = 120M / Period + 1 = 120M / 12000 = 10kHz
PWM波的占空比 = (Pulse + 1 / Period + 1) * 100% = (6000 / 12000) * 100% = 0.5 * 100% = 50%。
3.2、烧写代码
接着烧写代码,用示波器查看对应的GPIO口。
四、细节补充
总结
以上是生活随笔为你收集整理的STM32H743+CubeMX-低功耗定时器LPTIM输出PWM波的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: pandas plot label_Py
- 下一篇: STM32学习之TFTLCD