01 STM32CubeMX 配置输出PWM

PWM 简介

脉冲宽度调制(PWM,PulseWidthModulation)是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术。广泛应用在从测量、通信到功率控制与变换的许多领域中。

PWM 配置

下面以STM32F103C8T6为例,说明采用STM32CubeMX配置输出PWM的过程。

时钟树配置

  1. 选择外部时钟源
    在这里插入图片描述
  2. 倍频至最高的频率
    在这里插入图片描述

配置PWM输出通道

  1. 选择内部时钟,输出PWM到通道1
    在这里插入图片描述
  2. 设置分频系数 & 占空比
    频率=定时器时钟/(Prescaler预分频+1)/(CounterPeriod计数值+1)Hz
    占空比=Pulse(对比值)/(CounterPeriod计数值)%

    在这里插入图片描述
  3. 生成工程文件
    在这里插入图片描述

相关函数介绍

/* PWM 使能函数 */
/* 使能timx的通道y */
 HAL_TIM_PWM_Start(&htimx,TIM_CHANNEL_y);

/* 改变占空比函数 */
/* 修改timx通道y的占空比为z */
__HAL_TIM_SET_COMPARE(&htimx, TIM_CHANNEL_y, z);

MDK文件

  1. 开启PWM输出通道
    在这里插入图片描述
  2. 修改占空比
    在这里插入图片描述