HAL库_定时器PWM

对比标准库流程,使用CubeMx配置PWM

1.PWM

标准库中使用pwm的流程

1.开时钟

2.设置psc和arr

3.通道初始化

4.设置CCRx比较/捕获寄存器的值

HAL库中,以上操作都在图形化界面上操作

1.开时钟(先开RRC,再开TIM,不管干啥,第一步要做的都是要先打开RRC,使用HSE)

  打开TIM时钟,Clock Source 选择Internal Clock是选择APB总线的时钟

 2.HAL中设置PSC、ARR、CCRx

 3.使能TIM,相当于标准库中的TIM_CMD(TIM3,ENABLE)

    HAL_TIM_PWM_Start(&htim3,TIM_CHANNEL_2);

这里遇到一个问题,选择时钟的时候选择internal clock,指的是使用APB上的时钟,我选择时钟为72M后,pwm的周期和频率都不对,按照他的周期和频率推算出时钟为8M,这不成了使用HSI了吗。暂时还没解决,先记录下。

原文地址:https://www.cnblogs.com/1024E/p/13347829.html