打印
[STM32G4]

STM32G4 输出2路互补PWM 变占空比频率

[复制链接]
136|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
coshi|  楼主 | 2023-11-10 10:34 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
一、前言
    STM32G4系列芯片一般没有标准库,本文为了方便前期采用cubeMX配置,目标:1、输出两路互补PWM波(100kHZ),输出占空比频率可调。

二、通用定时器配置
     采用G473MCU,时钟最高频率设置170M,选择高级定时器TIMER1,T1_1、T1_3两个通道,外部晶振选择24M,SWD调试。



略去基础配置,TIMER1的频率选择170M



TIM1相关配置



参数设置(转自(35条消息) 电机学习笔记 pwm互补输出_IMXRT型Planck的博客-CSDN博客):

PWM模式1- 在向上计数时,一旦TIMx_CNT<TIMx_CCR1时通道1为有效电平,否则为无效电平;在向下计数时,一旦TIMx_CNT>TIMx_CCR1时通道1为无效电平(OC1REF=0),否则为有效电平(OC1REF=1)。

PWM模式2- 在向上计数时,一旦TIMx_CNT<TIMx_CCR1时通道1为无效电平,否则为有效电平;在向下计数时,一旦TIMx_CNT>TIMx_CCR1时通道1为有效电平,否则为无效电平。





APB2时钟线170M,分频系数0,ARR寄存器值为1699,CCR寄存器 。选择PWM模式1(向上计数),输出电平均为高有效。为了后续便于对比,选择T3_3通道相同配置 。

相关参考(35条消息) STM32-NUCLEO-F411RE—输出PWM及修改PWM频率与占空比_hal库改变pwm频率_自小吃多的博客-CSDN博客



(35条消息) STM32H743+CubeMX-定时器TIM发送非对称PWM(使用一个通道)_hal_timex_pwmn_start_Wallace Zhang的博客-CSDN博客



相关波形如下(PWM  model 1):

               

减小CH1占空比,两脉冲保持互补,但明显此脉冲缺少应用场合,暂且不表。修改脉冲占空比、频率HAL函数如下

  __HAL_TIM_SetCompare(&htim1, TIM_CHANNEL_1,a);
        TIM1->CCR1=a;
   __HAL_TIM_SET_PRESCALER(&htim1, b);

   __HAL_TIM_SET_PRESCALER(&htim1, 1);
————————————————
版权声明:本文为CSDN博主「kunyihuang」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/kunyihuang/article/details/130944976

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

95

主题

3301

帖子

4

粉丝