對Infineon XMC系列 HRPWM(150ps高精度PWM)的理解及使用

當今社會各行各業快速發展,電力電子/電源領域,數字化、高頻化趨勢明顯。在提高功率密度的過程中,需要提高開關頻率,但是隨著頻率的提高,PWM精度必然降低。而在XMC4000系列中,搭載了HRPWM外設,可以在原有高頻PWM上,提供更精細的解析度,是電力電子變換高頻化的有力幫手。

1.傳統PWM精度

當CPU工作頻率為100MHz。PWM模塊的計數頻率也一樣,則計數周期為10ns。假設PWM的開關頻率為1MHz,使用向上計數模式,那麼計數周期等於100,此時占空比的精度只有1%,比較值只能在0~100裡面選。如果計數模式是使用“雙邊沿模式”,那麼精度還會再降一半。還有更極限的,100M的主頻使用100M的開關頻率,那占空比也就只有0%和100%,此時HRPWM就是一個解決的方法。

2.高精度PWM(HRPWM)
HRPWM(High Resolution Pulse Width Modulator)模塊可以在原有定時器的基礎上,再次拓展PWM的時間精度,使用的是一種叫做微邊沿定位(MEP)的技術,就是在一個傳統的定時器計數周期中,拆分成很多份來輔助定位邊沿在XMC4000系列晶片中,就是將一個原有定時器的一個周期再細細拆分成很多個“pico phase”,每個"pico phase"占150ps,如下圖所示,可以通過這每個pico phase來幫助邊沿,從而提高PWM解析度。
相比於普通PWM,比如工作頻率為100MHz的PWM模塊,設定開關頻率為1M,周期為1us。現在想要實現更高解析度的占空比,比如55.45%的占空比,那麼上升沿時間應該控制在55.45*10ns=554.5ns。那取CCU8 Compare值為55,再加上4.5ns=4500ps=150ps*30,即再加上30個150ps的pico phase就可以了。

3.在Dave上配置HRPWM
  1. 首先點擊Add New APP添加HRPWM模塊,雙擊打開HRPWM APP,在“General Setting”中我們可以設置基本的頻率占空比等,和常規PWM的配置完全相同,在我前面的文章中有講到。值得注意的就是多了HRPWM Compare這個寄存器,這個就是用來更改我們的pico phase。其中Actual Duty Cycle就是實際輸出的PWM占空比。                                                         


  • 在“HRPWM Settings”中,配置上升沿觸發和下降沿清除。另外可以配置死區等,和常規PWM操作相同。

  • 最後在“Pin Setting”中使能輸出引腳,更改輸出方式,此處我們可以選擇輸出兩個通道。

  • 在Manual Pin中配置好輸出引腳後,編譯燒錄我們就可以使用示波器來觀察引腳輸出的波形了。
  • ★博文內容均由個人提供,與平台無關,如有違法或侵權,請與網站管理員聯繫。

    ★文明上網,請理性發言。內容一周內被舉報5次,發文人進小黑屋喔~

    評論