STM32 PWM驱动电机

  1. PWM 基本原理

PWM 是一种周期性的数字信号,频率固定,但高电平(ON)和低电平(OFF)的时间比例(占空比)可调。

占空比 = 高电平时间 ÷ 周期

占空比越高 → 平均输出电压越高 → 电机转速越快

占空比越低 → 平均输出电压越低 → 电机转速越慢

  1. 在电机驱动中的作用

  2. 控制速度

直流电机(DC Motor)两端的平均电压决定转速。

STM32 定时器产生 PWM → 经过电机驱动芯片(如 L298N、TB6612)→ 调节电机电压。

占空比 0% → 电机停转;100% → 全速运转。

  1. 控制方向

PWM 信号只控制"速度",方向由 GPIO 电平组合决定(正转/反转)。

驱动芯片根据两个逻辑输入决定 H-bridge 桥臂导通方向。

  1. 实现软启动/制动

缓慢增加占空比 → 电机平稳启动,避免电流冲击。

占空比突然降到 0 → 电机会因惯性继续转,但此时可利用驱动芯片进行电制动。

  1. 伺服电机/步进电机控制

舵机(Servo)用固定周期(通常 20ms)的 PWM,脉宽 0.5ms~2.5ms 对应不同角度。

步进电机可结合 PWM 控制细分驱动,实现更平滑、高精度的转动。

  1. STM32 实现 PWM 的方法

硬件 PWM:用定时器(TIM)的 PWM 模式,设置 ARR (周期)和 CCR (占空比),输出到特定引脚。

软件 PWM:用定时器中断在 GPIO 上翻转电平,适合简单场景,但精度和频率受限。

示例代码:

相关推荐
单片机杂货铺1 小时前
基于单片机的自动开窗器设计
stm32·嵌入式硬件·51单片机·硬件工程
天天爱吃肉82182 小时前
商用车多体动力学实战笔记|第6篇:动力传动系统(发动机、变速箱、分动器、TCS、LSD限滑差速)
大数据·人工智能·笔记·python·嵌入式硬件·汽车
别催小唐敲代码3 小时前
STM32 I2C协议详解:从原理到实战
stm32·网络协议·协议
lhbweilai3 小时前
STM32 I2C(hal库)
stm32·单片机·嵌入式硬件
单片机杂货铺6 小时前
基于STM32的智能市政清洁小车系统设计
stm32·单片机·嵌入式硬件·物联网·硬件工程
单片机杂货铺6 小时前
基于STM32的智能书房系统的设计
stm32·单片机·嵌入式硬件·51单片机·硬件工程
&Hello Code7 小时前
3.解决STM32工程混乱:一套可复用六层架构,GPIO 、LED 实战演示
stm32·嵌入式硬件·架构
普科PRBTEK7 小时前
电流探头的常见应用场景
单片机·嵌入式硬件
qq_401700417 小时前
3个常用的单片机实现隔离控制大电流负载例子
单片机·嵌入式硬件
weixin_456808388 小时前
【沁恒蓝牙开发】BLE常见错误码与解析
c语言·单片机·嵌入式硬件