TMS320F28027 之PWM 模組

來源:互聯網
上載者:User

標籤:

總結一下28027的PWM模組。

28027包含PWM1,PWM2,PWM3,PWM4四個PWM模組,所有的PWM模組的寄存器結構都一樣,唯一的區別就是同步時的操作順序不一樣。

PWM模組可以分為時基(Timer base),計數器比較(Counter Compare),PWM波形發生器(Action Qualifer),死區設定(Dead Band),高頻PWM斬波(PWM chopper),錯誤處理(Trip Zone) , 事件觸發及中斷(Event Trigger and Interrupt)等子模組組成,基本框圖如下。

下面按照文檔SPRUGE9E的順序逐個來看這些子模組:

1. 時間基準

這個模組的作用就是產生三個訊號,

CTR=PRD    計數寄存器的值等於周期寄存器時,產生的脈衝序列

CTR=0        計數寄存器的值等於0時,產生的脈衝序列

CTR-DIR        表示計數方向,計數器向上計數時常為1;向下計數時常為0,向上計數到Period後向下到0(up-down)則為1-0交替。

另外這個模組能接受上個PWM模組發來的同步訊號,並向下一個PWM模組發送同步訊號。

TBCTL設定項如下:

計數模式(up,down,up-down),

同步使能(收到同步訊號時是否載入相位寄存器的值到計數寄存器),

周期寄存器的操作方式(直接讀寫 或先寫入 shadow寄存器然後在某時刻載入到周期寄存器)

同步訊號輸出觸發方式

軟體同步

分頻係數(設定PWM模組的時鐘頻率)

同步後計數方向設定(在up-down計數模式時,設定同步後的計數方向,其他模式下,該設定無效)

模擬時PWM計數設定

TBSTS   PWM狀態寄存器

TBPHS  相位寄存器 (僅在同步時用到)

TBCTR  計數寄存器

TBPRD  周期寄存器

其他寄存器在高解析度的PWM時才用到,現在先不管

PWM模組同步可以理解為 多個周期相等的PWM模組發出PWM訊號時,計數器的值相等或保持固定的差值。這個在做空間向量電壓時很重要。

28027的同步過程如:

PWM1可以接受外部的同步訊號,然後發出一個同步訊號給PWM2,同樣PWM2產生一個同步訊號給PWM3 。。。

只有PWM1可以接受外部的同步訊號(引腳名 EPWM1SYNCI),其他PWM模組可以接受上一個模組的同步訊號。

每個PWM模組都能發出同步訊號給下一個模組,具體設定在TBCTL寄存器(SYNCOSEL)。(00 - 輸入同步訊號觸發; 01- CTR=0 觸發; 10 -CTRCMPB 觸發;11- 禁止發出同步訊號)

時間基準模組有幾個設定執行個體的時序圖,這裡選了一個。其中在PWM模組收到同步訊號時,計數寄存器將載入相位寄存器的值。

2. 計數比較模組

這個模組的作用就是將比較寄存器CMPA,CMPB的值與前面的計數寄存器TBCTR 進行比較,產生CTR=CMPA和CTR=CMPB兩個脈衝序列訊號。

這個模組的相關寄存器如下

CMPCTL 可以設定CMPA,CMPB的從shadow載入

CMPA,CPMB 16位元值寄存器

3. PWM波形發生器 (Action Qualifier)

該模組產生兩路PWM波 :PWMA,PWMB。

前面產生的 CTR=CMPA, CTR=CMPB CTR=PRD,CTR=0,來決定PWMA和PWMB,什麼時候是1,什麼時候是0,或者什麼時候翻轉

相關寄存器如下:

AQCTLA  設定PWMA在 CTR=CMPA(上升沿,下降沿), CTR=CMPB(上升沿,下降沿), CTR=PRD,CTR=0時分別進行什麼操作(清0;置1;翻轉 或 Do nothing)

AQCTLB  設定PWMB在 CTR=CMPA(上升沿,下降沿), CTR=CMPB(上升沿,下降沿), CTR=PRD,CTR=0時分別進行什麼操作(清0;置1;翻轉 或 Do nothing)

AQSFRC  設定單次軟體觸發,以及軟體觸發對 PWMA PWMB的影響。

AQCSFRC  連續軟體觸發對PWMA PWMB的影響。(編者註:不知道連續軟體觸發是怎麼產生的,單次軟體觸發可以在AQSFRC裡面設定。)

4. 死區設定

設定死區,可以方便地產生兩路互補或一樣的PWM波形。

相關寄存如

DBCTL設定中的六個開關,在s0,s1都為0時,死區設定無效;s0,s1 = 1,1,s4,s5=0,0,則EPWMxB無效,可以由EPWMxA產生兩路一樣或互補的PWM。

DBRED,DBFED設定上升沿和下降沿的延隔時間。

5. PWM斬波

斬波部分只有一個控制寄存器,就不多說,反正我用不到,也不知道哪裡會需要用到這個。

大致的功能如,將輸入的PWM波形的與高頻訊號PCLK(接近於時間頻率,該訊號的占空比可在([1,7]/8)範圍內調整)疊加。

6.錯誤處理(Trip-zone)

按照文檔上的說明,這個模組是根據TZ1-6訊號(可以是外部訊號,也可以在內部產生)來控制PWM的行為。可以用來做過流保護,電流限制等等

TZSEL 選擇TZ訊號(DCAEVT1/2, DCBEVT1/2 , TZ1-6) (One shot 和 cycle by cycle兩種模式 )

TZDCTL 設定TZ訊號對應的操作 (置1,清零, 高阻,Do nothing)

TZDCSEL   設定產生數字比較子事件的條件

TZEINT   對應訊號的中斷使能

TZFLG    TZ 觸發標誌

TZCLR    TZ觸發標誌清零

TZFRC    軟體觸發TZ事件

7.事件觸發(Event-Trigger)

事件觸發模組產生 EPWMxINT  EPWMxSOCA EPWMxSOCB 三個訊號,可以用來觸發AD轉換

ETSEL  使能並選擇事情觸發源

ETPS  選擇分頻係數(1;1/2;1/3)

ETFLG  事件觸發狀態標識

ETCLR  清除狀態標識

ETFRC  軟體觸發對應是事件

TMS320F28027 之PWM 模組

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.