ePWM相關記錄

_Explosion!發表於2024-11-06

此處記錄TMS320F28x ePWM模組相關理解。

此處先介紹幾個名詞概念

TBCTR(時基計數器):時基計數器儲存當前的計數值,用於生成PWM訊號週期。

TBPRD(時基週期暫存器):這個暫存器儲存PWM訊號的週期值,計數器從0開始計數,直到TBPRD的值。

TBPHS(時基相位暫存器):這個暫存器控制PWM訊號的相位偏移,主要用於調整PWM訊號的起始點,以便實現相位調節。

CMPA(比較暫存器A):這是第一個比較暫存器,用來設定PWM的佔空比。如果計數器的值小於CMPA的值,PWM訊號為高電平;否則為低電平。

CMPB(比較暫存器B):這是第二個比較暫存器,通常用於生成對稱PWM訊號,或者用於雙向PWM控制。

ePWMxSYNCI(時基同步訊號輸入):輸入脈衝用於時基計數器與之前的 ePWM模組同步,每個 ePWM 模組可以透過軟體配置為使用或者忽略此訊號。ePMW1的時基同步訊號輸入來自外部引腳,而ePMW2的時基同步訊號輸入來自ePMW1的時基同步訊號輸出,之後的ePWM模組3、4等以此類推。

ePWMxSYNCO(時基同步訊號輸入)出脈衝用於隨後的 ePWM 的時基計數器同步。該輸出訊號取決於以下三個事件之一,具體如何選擇看軟體配置:

  • ePWMxSYNCI
  • TBCTR=CMPB
  • TBCTR=0

ePWM 週期和頻率的計算

ePWM 的頻率是由時基週期暫存器值(TBPRD)和時基計數器的計數模式(TBCTRL)共同決定的。時基計數器的計數模式有向上計數(遞增)模式、向下計數(遞減)模式、向上-向下計數(先遞增後遞減)模式。下邊就以週期暫存器設定為 4(TBPRD=4)舉例說明。

向上-向下計數模式(先遞增後遞減)

在此模式下,時基計數器先從 0 開始向上計數(遞增)直到遞增到週期暫存器的值 4,然後再由 4 向下計數(遞減)直到減到 0,再重複以上動作,如下圖所示:

在此模式下,隨著同步訊號的到來,時基模組的輸出波形有兩種情形,需要透過設定相位方向 TBCTL[PHSDIR]來確定。如果 TBCTL[PHSDIR]=0 時,那麼當同步訊號到來時,對應的輸出波形如下圖所示:

如果 TBCTL[PHSDIR]=1 時,那麼當同步訊號到來時,對應的輸出波形如下圖所示:

上圖第一層為TBCTR的值的變化,第二層ePWMxSYNCI時基同步訊號輸入,第三層為CTR的方向,第四層為CTR值為0的訊號,第五層為CRT值為PRD的訊號。

當時基同步訊號輸入啟用時,CTR無論是多少,都會被置為TBPHS的值。而TBCTL[PHSDIR]決定了CTR重置後的遞增或遞減,即CTR方向。當CTR的值達到特殊值時就會觸發對應特殊訊號,如當CTR達到TBPRD的值時,CTR=PRD訊號就會被啟用。

向上計數模式(遞增)

在此模式下,時基計數器從 0 開始向上計數,直到遞增到週期暫存器的值後,時基計數器會自動復位到 0,重複以上動作,如下圖所示:

在此模式下,隨著同步訊號的到來,時基模組的輸出波形如下所示:

向下計數模式(遞減)

在此模式下,時基計數器首先載入週期暫存器的值,然後開始遞減,直到減到 0 時,自動在載入週期暫存器的值,重複以上動作,如下圖所示:

在此模式下,隨著同步訊號的到來,時基模組的輸出波形如下所示:

待更新...

相關文章