1. 程式人生 > >F28335 ePWM時基模組(TB)及其 暫存器配置————TMS320F28335學習筆記(五)

F28335 ePWM時基模組(TB)及其 暫存器配置————TMS320F28335學習筆記(五)

1 時基模組 TB 組成及工作原理簡介
每個PWM模組都有自己的時基單元,這決定了每個PWM模組的時序,時基模組的作用:

  • 確定PWM的週期或頻率
  • 管理當前ePWM模組和其他ePWM模組的相位,以此保持各個ePWM模組的同步性
  • 設定時基計數器的計數方式,是增計數(up)還是減(down)計數模式
  • 設定ePWM的時間基礎,對系統時鐘進行分頻,可以輸出較低頻率PWM波

1.1 時基模組的關鍵暫存器

暫存器 描述
TBCTL 時基控制暫存器
TBSTS 時基狀態暫存器
TBPHSHR HRPWM擴充套件相位暫存器
TBPHS 時基相位暫存器
TBCTR 時基計數器暫存器
TBPRD 時基週期暫存器

補充:什麼是影子暫存器
時基模組中有個週期影子暫存器,它可以實現其主暫存器隨硬體進行同步更新。其實正經說叫 active register (活動暫存器)和 shadow register (影子暫存器)。
在DSP中暫存器是直接控制硬體電路的,這是活動暫存器的功能,而影子暫存器不能直接控制硬體電路,他的作用是提供給活動暫存器一個存放狀態和值的地址,在系統執行的時候,在軟體配置暫存器和硬體不同步的時候,他可以把存放的狀態傳到活動暫存器,這樣就可以防止因為軟硬體不同步導致的系統崩潰。

1.2 時基模組的關鍵訊號

  • ePWMxSYNCI: 時基同步訊號輸入
  • ePWMxSYNCO:時基同步訊號輸出
  • CTR = ZERO : 時基計數器等於0
  • CTR = CMPB :時基計數器等於比較暫存器
  • CTR_dir : 時基計數方向, 高電平向上計數,低電平向下計數
  • TBCLK : 時基時鐘訊號,確定時基計數器的增減的速率

1.3 ePWM的週期和頻率計算
ePWM的頻率是由時基週期暫存器值(TBPRD) 和 計數模式(TBCTRL)共同決定。在此先不考慮同步訊號的輸入。

向上-向下計數模式(先遞增後遞減)
從零開始增大,增到TBPRD的值後,遞減至0。
在這裡插入圖片描述

Tpwm=2 * TBPRD * Ttbclk(TB的時鐘)

向上計數模式(遞增)
向上遞增到TBPRD的值,後立刻回0,再又一次遞增。
在這裡插入圖片描述

Tpwm=TBPRD * Ttbclk(TB的時鐘)

向下計數模式(遞減)
從TBPRD的值遞減,遞減到零,立馬回到TBPRD的值後,再有一次遞減。
在這裡插入圖片描述

Tpwm=(TBPRD + 1) * Ttbclk(TB的時鐘)

2 時基模組的暫存器配置
2.1 時基控制暫存器 TBCTL
在這裡插入圖片描述
在這裡插入圖片描述

在不考慮同步訊號的情況下,時基控制暫存器TBCTL我們需要配置的位其實比較少

  • 12~10 CLKDIV: 時鐘分頻位
  • 9~7 HSPCLKDIV:高速時鐘分頻位
  • 3 PRDLD : 週期暫存器的影子暫存器位
  • 1~0 : 計數模式位

2.2 時基週期暫存器

名稱 描述
15~0 TBPRD 時基週期暫存器,時基計數器的週期

配置方式:直接賦值
2.3 時基計數暫存器

名稱 描述
15~0 TBCTR 時基計數器

配置方式:直接賦值
2.4 時基相位暫存器

名稱 描述
15~0 TBPHS 時基相位暫存器

配置方式:直接賦值