当前位置: 首页 > news >正文

在STM32H725多定时器同步移相(基于ASTM32CubeMX)

在STM32H725上实现多个定时器的移相功能,同时各个定时器可以各自控制各自的占空比。

1需要实现的功能有:

1 单个定时器各自独立输出自己的PWM信号,PWM模式、极性、互补等可调,占空比可控;

2 多个定时器时钟之间同频率(好像一半频率关系也可以);

3 多个定时器计数之间相位固定,或相位可控;

2两个TIM延迟实现原理

采用定时器的从模式实现。选定一个主TIM,如比TIM1。其他的TIM,比如TIM2,实现与TIM1的移相,作为从TIM。在主TIM计数器指定值时,从TIM复位清零开始计数。

2.1 触发输出配置

首先主TIM需要配置的是,作为主模式时的触发输出。在TIMx_CR2中的MMS位进行配置,具体如下:

image-20250328175724351

选定不用的通道进行配置,比如CH1作用PWM输出,CH2用作PWM输出,那么CH3或CH4就可以用作触发输出。

MMS配置为110,即OC3REFC这个信号可作为从模式触发输出。

2.2 配置OC3REFC

如图所示,图中OC1REFC为CH1的信号,那么对应OC3REFC就是CH3信号。

image-20250401194417470

这个信号就在TIM中配置,可以配置为PWM模式、强制输出模式等。

为了能够每个周期都实现固定或可调的相位延迟,这里配置为PWM模块,或者比较输出模块中的翻转,又或者强制输出模式中的翻转。这里因为从TIM的从模式的触发源,好像是上升沿触发,这个具体不知道在哪配置,我用开发板试出来的。

比如,配置为PWM模式2。图中上面三角波是TIM1的计数器,也即主TIM的计数器,绿色的是TIM1的OC3REFC信号。底下是从TIM的计数器。

image-20250401195115906

2.3 配置从TIM的从模式

从模式配置为复位模式,即从TIM收到输入触发源后,从TIM的计数器和预分频器均复位清零。

这里输入触发源选择其他TIM的触发输出。不同TIM的触发源定义如下:

image-20250313192850619

TIM2作为从TIM,TIM1作为TIM2的主TIM,因为选择ITR0。

image-20250401195115906

图中,底下的为TIM2,也即从TIM的计数器。这样就实现了TIM2和TIM1之间的移相,并且各自可以根据各自的计数器进行PWM配置。

3 两个TIM延迟CubeMX配置

首先配置主TIM中的从模式部分,如下:

image-20250401200019077

首先是主TIM的触发输出配置,见图中1。触发输出选择Output Compare(OC3REF)。

然后是主TIM的OC3REF配置,见图中2(有两个地方),通道选择中,Channel3选择PWM Generation No Output;然后具体在底部配置为PWM模式2,初始化的相位对应值,即在主TIM产生OC3REF信号的数值,即CCR3。

TIM2配置

TIM2的从模式中,选择复位模式,触发源根据表格选择触发源。可对照之前的表进行触发源确定,这里选择ITR0。

image-20250313192727389

4 多个TIM之间的移相

如果要实现多个TIM的移相,可以这个TIM即作为其他TIN的主TIM,同时作为从TIM。比如,实现TIM1、TIM2和TIM3分别移相120度,为三相拓扑实现PWM信号产生。TIM1为A相产生PWM,TIM2为B相产生PWM,TIM3为C相产生PWM。现要实现三相之间的PWM各移相120,那么TIM1为TIM2的主TIM,TIM2作为从TIM,延迟TIM1有120度。同时TIM2作为TIM3的主TIM,TIM3作为从TIM延迟TIM2有120度。

上述中,TIM2就要配置触发输出和通道部分,也要选择从模式的复位模式和触发源。

原图如下:

image-20250401202837912

具体的CubeMX类似于两个TIM之间相位延迟配置。

相关文章:

  • embedding 不同库和维度选型对比
  • 企业需要使用防病毒系统保障数据安全的原因
  • 批量修改记事本文本文件编码,可以解决文本文件乱码问题
  • 使用了C++11标准库中的随机数生成器
  • 医药企业数字化转型路径:从数据驱动到生态重构
  • GPT降智?静态住宅IP也许是关键!
  • 前端react 实现分段进度条
  • Linux(25)——进程调度
  • SQL Server :可用性组 automatic seeding
  • Visual Studio Code配置自动规范代码格式
  • 大语言模型智体的综述:方法论、应用和挑战(上)
  • 随性研究c++-智能指针
  • 扫描仪+文档pdf编辑器+pdf格式转换器
  • 电力系统惯量及其作用解析
  • 移动端动态化建设的演进与实践:从技术革新到生态繁荣
  • DAY 33 leetcode 383--哈希表.赎金信 49--字母异位词分组
  • 如何本地部署RWKV-Runner尝鲜CPU版
  • odrive环境构筑问题
  • R语言绘图 | 使用scplotter包绘制细胞间通信图
  • 【超详细】一文解决更新澎湃2.0后LSPose失效问题
  • 北京人艺新戏《一日顶流》将出现人工智能角色
  • 世卫大会拒绝涉台提案,外交部:坚持一个中国原则是人心所向
  • 男子服用头孢后饮酒应酬致昏迷在家,救援人员破门施救后脱险
  • 以开放促发展,以发展促开放,浙江加快建设高能级开放强省
  • “GoFun出行”订单时隔7年扣费后续:平台将退费,双方已和解
  • 美国将与阿联酋合作建立海外最大的人工智能数据中心