STM32G474 HRTIME PWM 丢波问题分析与解决 您所在的位置:网站首页 stm32输出PWM波不正常 STM32G474 HRTIME PWM 丢波问题分析与解决

STM32G474 HRTIME PWM 丢波问题分析与解决

2024-07-17 14:33| 来源: 网络整理| 查看: 265

1、问题描述

STM32G474 中包含了针对数字电源应用的高精度定时器(HRTIMER),客户在应用该定时器 产生 PWM 时,发现 PWM 的输出出现了“丢波”现象,本文对该问题进行分析并给出解决方案。

客户使用高精度定时器产生 PWM, 其 PWM 产生的配置如下,Master Timer 的 period event与 compare 1 event 分别作为 Timer A 与 Timer B 的复位源,Timer A 与 Timer B 产生的 180 度移相的 PWM 输出,EEV4 作为外部事件来触发 PWM reset, 并且使用 blanking 功能过滤发生在PWM set 点附近的 EEV4 事件,Timer compare 3 event 用来限制 PWM 的最大占空比,当 WM 周期内没有 EEV4 发生或是发生的时间点晚于 compare 3 事件时,Timer compare 3 event 将触发PWM reset。

Master Timer: -Interleaved Mode:Half modeTimer A : -Up-Down Mode : Up-counting Timer counter reset trigger source : Master timer period event PWM set source : Master timer period event PWM reset source : Timer compare 3 event + EEV4Timer B : Up-Down Mode : Up-counting Timer counter reset trigger source : Master timer compare 1 event PWM set source : Master timer compare 1 event PWM reset source : Timer compare 3 event + EEV4EEV4 : -Source: EE source 2 – COMP1 Sensitivity:Falling edge Fast Mode:re-sync mode Filtering : Blanking from counter reset/roll-over to compare 1 Latch : Ignored if happens during a blank

使用以上的配置,正常情况下产生的 PWM 如下所示,C1/C2 分别为 TA1 与 TB1,C3 为 EEV4,下降沿触发事件,使 PWM reset。 在这里插入图片描述 但是当外部事件发生的点接近于 PWM 周期值时,就会出现 “丢波”,如下图所示。 在这里插入图片描述 展开其中的部分波形观察如下。 在这里插入图片描述

2、问题分析

对 PWM 丢失的波形进行分析,当该情况发生时,EEV4 发生的时间点已经晚于 CMP3 事件,正常波形的占空比也与设定的最大允许占空比一致。丢波情形节点:在 EEV4 事件发生的时间点靠近 TA1 或 TB1 波形的 set 点处才会出现。 在这里插入图片描述 为什么会出现“丢波”?从波形上分析,唯一可能的原因就是 C1/C2 的 set 事件被“忽略”了 ,导致整个周期一直处于低电平状态。在高精度定时器中,若多个事件同时发生的时候就会出现事件被“忽略”的情况,且 reset 事件具备最高优先级(除了多个事件都来源于同一定时器的CMP、PER 事件),导致 set 事件被“忽略”,可阅读 RM 的 26.3.7 Set / reset events priorities and narrow pulses management 了解更多详细的规则。

从客户实际的配置中可确认在“丢波”情况出现时,EEV4 不会跨周期,且实际的波形也验证了该点,C3 的下降沿先于 C1/C2 的上升沿出现的,那么一般就会理解 EEV4 导致的 reset 事件不会与 PWM 的 set 事件 Master timer period/ compare 1 event 同时出现,且客户的配置中对EEV4 添加了消隐功能, blanking 区间为 counter reset/roll-over to compare 1,即使 EEV4 与Master timer period/ compare 1 event 同时出现,也应该被过滤掉,set 事件不应该被忽略。总结如下:

EEV4 不会与 Master timer period/ compare 1 event 同时出现;即使同时出现,EEV4 也应该被消隐过滤掉。

但是 EEV4 作为外部事件作用于高精度定时器(复位 counter 或是 set/reset PWM 输出),其从事件发生到生效是存在一定的内部延时(26.3.8 External events global conditioning),如下图所示。在 re-sync 模式下,这个延时一般会在 60ns 左右。 在这里插入图片描述 在这里插入图片描述 在高精度定时器中对多个事件同时出现的处理都是以事件的实际生效点为准,所以当 EEV4的下降沿发生点靠近 PWM set 事件的情况下,经过内部延时后,就可能会与 set 事件同时出现了。

关于消隐功能的 blanking 区间,比如本文中的 counter reset/roll-over to compare 1,一般的理解是从起点到终点全部过滤,但是实际情况是在设定的起点处 blanking 不会生效(经 division确认),即 blanking 区间不是闭区间。另外需要注意的是消隐功能作用的也是事件的实际生效点,而非发生点。 对以上的分析总结起来如下:

多个事件同时出现的处理过程中,是以事件的实际生效点为准,而非发生点;消隐功能在 blanking 区间的起始点无效,且消隐对象为实际生效点在区间内的事件。

客户的配置中,blanking 区间的起始点与 PWM 的 set 点为同一个点,若是 reset 事件 EEV4通过内部延时后刚好也落在这个点上,那么消隐不生效,reset 相对 set 优先级高,结果就是 set事件被忽略,PWM 输出继续保持低电平,也是我们观察到的 PWM“丢波”。

基于上述分析,对客户描述现象进行复现,很容易捕捉到“丢波”现象,本文中提供的“丢波”时的波形就是基于以上的分析与实验获取的。

3、问题解决

基于以上的分析与实验,我们需要避免 set 事件与 blanking 区间的起点在同一个点,所以只要将 set 事件放到 blanking 区间的内部就可以了,最简单的方式就是 TA1 与 TB1 的 set 事件不再使用 Master timer period/ compare 1 event,而采用 Timer compare 4 event(该比较器在客户原本配置中没有被使用),compare 4 的值遵循“3 clock”原则,在客户的实际配置中大于 0x32 即可,其他配置保持不变。 即:

Master Timer: -Interleaved Mode:Half mode

Timer A : -Up-Down Mode : Up-counting Timer counter reset trigger source : Master timer period event PWM set source : Timer compare 4 event PWM reset source : Timer compare 3 event + EEV4

Timer B : -Up-Down Mode : Up-counting Timer counter reset trigger source : Master timer compare 1 event PWM set source : Timer compare 4 event PWM reset source : Timer compare 3 event + EEV4

EEV4 : -Source: EE source 2 – COMP1 Sensitivity:Falling edge Fast Mode:re-sync mode Filtering : Blanking from counter reset/roll-over to compare 1 Latch : Ignored if happens during a blank

4、问题小结

对客户的“丢波”问题进行了详细的分析并给出了解决方案,客户在使用该方案后,没有再出现“丢波”现象。在使用外部事件与消隐功能时需要注意:

多个事件同时出现的处理过程中,是以事件的实际生效点为准,而非发生点;消隐功能在 blanking 区间的起始点无效,且消隐对象为实际生效点在区间内的事件。

参考文献

文件编号文件标题版本号发布日期1 RM0440Reference manualREV 6February 2021

本文档参考ST官方的《【应用笔记】LAT1167+STM32G474+HRTIME+PWM+丢波问题分析与解决》文档。 参考下载地址:https://download.csdn.net/download/u014319604/88971352



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

      专题文章
        CopyRight 2018-2019 实验室设备网 版权所有