搭建stm32电机控制代码框架(五)——Stm32CubeMx配置PWM

采样配置完成后,进行PWM的配置。PWM的生成依赖于STM32的TIM1定时器,其功能完备如下图所示,电机控制中主要应用其PWM生成功能。

我们当前阶段的目标是生成占空比为50%的三路PWM,其开关频率为10kHz。

那么开始CubeMx的配置,依据stm32f405数据手册中地址总线部分内容,TIM1是挂在ABP2时钟上的,那么先要配置ABP2的时钟。

时钟的配置如下图所示

 此时ABP2的时钟频率为72MHz,要想获得10kHz的PWM,则定时器的周期值TPRD = 72M/2/10k = 3600,配置TIM1参数如下图所示,配置123通道均为PMW generation,然后时钟选择为内部时钟。分频系数设置为0,Counter period计数周期值设为3600。

 这里需要明确一点就是Count Mode需要注意一下,三者的区别在于中断标志置位的条件不同,我们选择在递增等于比较值和下降等于比较值都触发中断。因此选择中心对齐模式3。

 接下来设置死区时间,查询所用开关管的datashee,开关管上升时间+延迟+关断时间+延迟总时间为91ns,因此设置0.5us = 500ns时间作为死区时间完全足够。

由于此时的时钟频率为72M,因此0.5us对应的计数值约为36(36 = 0.5*1e-6*72*1e6)

 最后设置PWM的模式,下图基本为默认设置,注意

 然后生成代码即可。

  • 1
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值