• 資料介紹
    • 前言
    • 問題描述
    • 原因分析
    • 解決方法
    • 小結(jié)
  • 資料預(yù)覽
  • 相關(guān)推薦
申請入駐 產(chǎn)業(yè)圖譜

LAT1167 STM32G474 HRTIME PWM 丟波問題分析與解決

03/26 09:09
595
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點(diǎn)資訊討論

LAT1167 STM32G474 HRTIME PWM 丟波問題分析與解決

1,021.63 KB

前言

STM32G474 中包含了針對數(shù)字電源應(yīng)用的高精度定時(shí)器(HRTIMER),客戶在應(yīng)用該定時(shí)器產(chǎn)生 PWM 時(shí),發(fā)現(xiàn) PWM 的輸出出現(xiàn)了“丟波”現(xiàn)象,本文對該問題進(jìn)行分析并給出解決方案。

問題描述

客戶使用高精度定時(shí)器產(chǎn)生 PWM, 其 PWM 產(chǎn)生的配置如下,Master Timer 的 period event與 compare 1 event 分別作為 Timer A 與 Timer B 的復(fù)位源,Timer A 與 Timer B 產(chǎn)生的 180 度移相的 PWM 輸出,EEV4 作為外部事件來觸發(fā) PWM reset, 并且使用 blanking 功能過濾發(fā)生在PWM set 點(diǎn)附近的 EEV4 事件,Timer compare 3 event 用來限制 PWM 的最大占空比,當(dāng) PWM周期內(nèi)沒有 EEV4 發(fā)生或是發(fā)生的時(shí)間點(diǎn)晚于 compare 3 事件時(shí),Timer compare 3 event 將觸發(fā)PWM reset。

原因分析

對 PWM 丟失的波形進(jìn)行分析,當(dāng)該情況發(fā)生時(shí),EEV4 發(fā)生的時(shí)間點(diǎn)已經(jīng)晚于 CMP3 事件,正常波形的占空比也與設(shè)定的最大允許占空比一致。丟波情形節(jié)點(diǎn):在 EEV4 事件發(fā)生的時(shí)間點(diǎn)靠近 TA1 或 TB1 波形的 set 點(diǎn)處才會出現(xiàn)。

解決方法

基于以上的分析與實(shí)驗(yàn),我們需要避免 set 事件與 blanking 區(qū)間的起點(diǎn)在同一個(gè)點(diǎn),所以只要將 set 事件放到 blanking 區(qū)間的內(nèi)部就可以了,最簡單的方式就是 TA1 與 TB1 的 set 事件不再使用 Master timer period/ compare 1 event,而采用 Timer compare 4 event(該比較器在客戶原本配置中沒有被使用),compare 4 的值遵循“3 clock”原則,在客戶的實(shí)際配置中大于 0x32 即可,其他配置保持不變。

小結(jié)

對客戶的“丟波”問題進(jìn)行了詳細(xì)的分析并給出了解決方案,客戶在使用該方案后,沒有再出現(xiàn)“丟波”現(xiàn)象。在使用外部事件與消隱功能時(shí)需要注意:

  • 多個(gè)事件同時(shí)出現(xiàn)的處理過程中,是以事件的實(shí)際生效點(diǎn)為準(zhǔn),而非發(fā)生點(diǎn);
  • 消隱功能在 blanking 區(qū)間的起始點(diǎn)無效,且消隱對象為實(shí)際生效點(diǎn)在區(qū)間內(nèi)的事件。

資料預(yù)覽

相關(guān)推薦