在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

使用HRPWM的注意事項

星星科技指導員 ? 來源:ti ? 作者:Ke, Shaoxing ? 2023-03-14 09:39 ? 次閱讀

隨著新能源領域的發展, 在數字電源控制系統中要求功率密度高且轉換效率高。其中,整機功率密度的提升,就需要提高開關頻率, 大部分現有產品的開關頻率在50k~200kHz。然而, 由于SiC/GaN器件的大面積推廣與使用, 開關頻率已經提升到500kHz,甚至1MHz。當系統的開關頻率超過200kHz時,此時PWM脈寬的調節精度會變低, 這就需要使用高精度模式的PWM調制。我們把用于擴展傳統ePWM模塊的時間精度的模塊, 稱之為高精度PWM(High resolution PWM)。本文將對C2000片上HRPWM模塊的工作原理、使用方法和注意事項進行詳細討論,并以實際案例進行展示。此外,HRPWM模塊也可以作DAC輸出用來實現模擬信號的觀測。

1.高精度PWM的工作原理 (HRPWM)

1.1 高精度PWM的MEP技術

C2000支持占空比、相移、死區和周期的高精度控制。HRPWM是在普通PWM模塊上采用微邊沿定位 (MEP, micro-edge positioner) 技術實現的。簡單來說, 就是將一個計數周期再拆分為很多個小的MEP步長, 如下圖所示。 其中,MEP最小步長是150ps。

poYBAGQP0CuAQxcfAADzn64r098772.png

圖1 HRPWM的微邊沿定位MEP示意圖

計算舉例:如下圖所示(開關頻率為1MHz),控制精度是由PWM的“計數器值”和“比較值”的來決定。F280013x的CPU頻率為120MHz,假設EPWM模塊時鐘為120MHz, 此時EPWM單個計數周期為8.3 ns,MEP步長為150 ps。如此, 可將每一個計數周期再細分為8.3 ns / 150 ps = 55. 56份。如圖中單邊向上計數模式下, 開關頻率為1MHz,則三角波載波周期為1 us, 計數周期TBPRD等于120。如果想實現10.15%的占空比,則邊沿時間的控制應當是 10.15 * 8.3 ns = 84.245 ns。此時, 設定CMPA = 10 (83 ns),剩下的1.245ns(不足單個計數周期)應當由HRPWM模塊來實現, 也就是CMPA上再加上1.245 ns = 1245 ps = 150 ps * 8.3 ? 8個MEP步長。

pYYBAGQP0CuAECHoAAA_7GSO8PU616.png

圖2 單邊計數模式下的載波波形

其中,PWM分辨率的計算公式,如圖3所示。

poYBAGQP0CyAEQYtAACaFLU0Leg525.png

圖3 PWM的分辨率計算公式

圖4為不同開關頻率下的PWM和HRPWM的分辨率。如下圖,當開關頻率>250k,或者所要求的PWM分辨率>(9-10 bit)時,系統則需要使用HRPWM模塊。

pYYBAGQP0C2AOJZHAADQMppp0Wk385.png

圖4 PWM和HRPWM的分辨率算例表

1.2 高精度PWM的相關寄存器

高精度PWM相關的寄存器,如CMPAHR/CMPBHR、TBPHSHR、TBPRDHR、DBREDHR和DBFEDHR,以及HRPWM的時鐘輸入與配置,如圖5和圖6所示。HRPWM高精度寄存器作用位置是在AQ子模塊之后,由此不會影響AQ執行邊沿動作。

poYBAGQP0C2Aa6PfAAEugfWe2F0846.png

圖5 HRPWM的相關的寄存器

pYYBAGQP0C6APnYBAAJIvyqIqRA600.png

圖6 HRPWM的相關的寄存器作用位置

pYYBAGQP0C-ALdvzAADS1QGuGVA263.png

圖7 HRPWM的時鐘輸入與配置

其中,需要注意的是CMPAHR寄存器只會影響Channel A,它跟CMPA沒有任何必然關系;CMPBHR寄存器只會影響Channel B,它跟CMPB沒有任何必然關系。同時, CMPAHR和CMPBHR分別可以作用在上升沿、下降沿和上升/下降沿。如下圖寄存器的說明可知, 如果僅配置CMPAHR寄存器值, 而Channel B上通過死區模塊由PWMxA極性翻轉而來, Channel B 上則不會產生高精度的PWM波形。若需要Channel A和Channel B都需要高精度模式, 此時需要將CMPAHR 與CMPBHR賦予相同的值,從而產生正確的PWM波形,如圖8所示。

poYBAGQP0C-AI-onAAIrgR9Yr5Q696.png

圖8 HRPWM的CMPAHR/CMPBHR寄存器說明

1.3 高精度PWM的CMPAHR/CMPBHR寄存器計算

以F28004x/F28003x為例,CMPAHR的算例及計算過程如下圖9所示。分別針對不同CMPAHR和CMPBHR上升沿REP (Rising Edge Position) 、下降沿FEP (Falling Edge Position) 和上升/下降沿BEP (Both Edge Position) 的作用示例。

pYYBAGQP0DCANfqrAAGcM_VjiTE308.png

圖9 HRPWM的CMPAHR算例

CMPAHR和CMPBHR上升沿REP作用示例, 如圖10:

poYBAGQP0DGARWLXAAGqGkWEpAU054.png

圖10

CMPAHR和CMPBHR下降沿FEP作用示例,如圖11:

pYYBAGQP0DGAREqJAAGnNOdlr9U663.png

圖11

CMPAHR和CMPBHR上升/下降沿BEP作用示例,如圖12:

poYBAGQP0DKAZcdKAAHoKjkEWvI158.png

圖12

1.4 創建和配置高精度PWM的工程項目

1)創建Driverlib的工程項目

Step1:添加 "Include" Files: #include "sfo_v8.h" 以及所對應的庫文件SFO_lib

Step2:聲明Variable Declarations:

uint16_t status = SFO_INCOMPLETE;

uint32_t MEP_ScaleFactor = 0; //scale factor value

volatile uint32_t ePWM[(PWM_CH + 1)] = {0, EPWM1_BASE, EPWM2_BASE};

Step3:縮放因子初始化MEP_ScaleFactor Initialization:

while(status == SFO_INCOMPLETE)

{

status = SFO();

if(status == SFO_ERROR)

{

//

// SFO function returns 2 if an error occurs & # of MEP

// steps/coarse step exceeds maximum of 255.

//

error();

}

}

Step4:增加用戶代碼并配置對應的寄存器如CMPAHR

void main ()

{

int status;

// User code

// ePWM1, 2, 3, 4 are running in HRPWM mode

// The status variable returns 1 once a new MEP_ScaleFactor has been

// calculated by the MEP Calibration Module running SFO

// diagnostics.

status = SFO ();

for(;;)

{

if(test_ctr < 256)
{
HRPWM_setCounterCompareValue(ePWM[1], HRPWM_COUNTER_COMPARE_A, (0x2000 + test_ctr));
test_ctr++;

}
else
{
test_ctr = 0;
}

if(status == SFO_ERROR)

{

//

// SFO function returns 2 if an error occurs & # of

// MEP steps/coarse step exceeds maximum of 255.

//

error();

}

}

}

2)Bit-field按寄存器創建的工程

Step1:添加 "Include" Files: #include "sfo_v8.h"以及所對應的庫文件SFO_lib

Step2:聲明Variable Declarations:

Uint16 status = SFO_INCOMPLETE;

int MEP_ScaleFactor = 0; //scale factor value

volatile struct EPWM_REGS *ePWM[] = {0, &EPwm1Regs, &EPwm2Regs};

Step3:縮放因子初始化MEP_ScaleFactor Initialization:

同上。

Step4:增加用戶代碼并配置對應的寄存器如CMPAHR

同上。

1.5 測試工程與PWM波形

pYYBAGQP0DOAJ0jTAABLxhPwQtI247.png

poYBAGQP0DOAdl5MAACWWob43xA166.png

2. 高精度PWM的注意事項

2.1 高精度PWM的Dead Band半個TBCLK計數周期生效

如下Note提示, 死區的高精度模式控制僅在半個TBCLK計數周期生效, 如下計算公式可知, 若CPU主頻直接分頻給到EPWM時鐘,即TBCLK 為100MHz,也就是10ns, 此時DBREDHR和DBFEDHR寄存器僅在5ns計數周期生效, 這也是為了進一步保證高精度死區的生成。

pYYBAGQP0DSAAuvSAACtmt9YWVs172.png

poYBAGQP0DSALCmYAADHnEdZH44432.png

pYYBAGQP0DSAZz6mAABqxP0hFOk111.png

poYBAGQP0DWAMgwoAAEcwoVWsAE888.png

2.2 高精度PWM的Dead Band高精度僅在雙邊計數Up-Down模式生效

如下Note提示, 死區的高精度模式控制僅在Up-Down計數模式下生效, 這主要是由于HRPWM的Duty占空比高精度模式控制限制所造成的。HRPWM在前三拍和后三拍是無效的,此時若想生成0%占空比可由普通PWM生成。硬件上不允許單邊計數模式下實現占空比的高精度模式控制。

poYBAGQP0DaAKlm7AABd1ievDe4230.png

pYYBAGQP0DaACxLYAACWphpsKbM289.png

2.3 Up-Down模式下高精度PWM的寄存器加載時刻僅Zero-Period生效

如下Note提示, 雙邊計數Up-Down模式下高精度控制影子寄存器加載僅在ZERO AND PERIOD生效, HRPWM模塊在過周期處用于內部特殊邏輯計算而不進行加載。單邊計數Up模式無此限制要求。此外單邊Down模式下是不支持高精度HRPWM操作。

poYBAGQP0DeAF4H5AAMHGcEd5oo276.png

3.結論

高精度模式的控制實現與普通PWM配置有差異,總結來說有以下幾點:1.CMPAHR負責Channel A上的高精度控制, CMPBHR負責Channel B上的高精度控制;2. HRPWM寄存器的生效時刻需要注意;3. 死區和占空比高精度實現的模式會對計數方式有要求;4. 單獨某一個Channel A上實現高精度會造成另外Channel B上的影響,不過僅±1 TBCLK;5. HRPWM高精度模式控制最高分辨率150ps, 可實現占空比Duty、死區DBREDHR和DBFEDHR、相移TBPHSHR和周期值TBPRDHR的高精度模式控制。以上不限于為高精度模式的使用與注意事項。

審核編輯:郭婷

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 電源
    +關注

    關注

    184

    文章

    17793

    瀏覽量

    250910
  • SiC
    SiC
    +關注

    關注

    29

    文章

    2844

    瀏覽量

    62755
  • GaN
    GaN
    +關注

    關注

    19

    文章

    1948

    瀏覽量

    73739
收藏 人收藏

    評論

    相關推薦

    膽機使用的注意事項

    膽機使用的注意事項:膽機使用的注意事項 我是初哥, 現在對膽機感興趣, 但聽說膽機使用麻煩, 請問有什么需要注意的?湖南吉首火車站 范增不必擔心, 膽機的使用方法
    發表于 11-29 17:09 ?46次下載

    LCM使用注意事項

    LCM使用注意事項 1. 安裝   LCD模塊的安裝是用PCB上的安
    發表于 04-16 21:38 ?1417次閱讀

    電池組的設計加工注意事項

    電池組的設計加工注意事項 電池組設計注意事項: 1、功率要求 2、體積空
    發表于 11-05 08:47 ?1567次閱讀

    硒鼓注意事項

    硒鼓注意事項     1、避免在高濕、高溫、高寒環
    發表于 12-28 15:47 ?1174次閱讀

    電容的用途及注意事項

    電容的用途及注意事項 什么電路板都要用到電容,但如果用得不好,后果很嚴重!下面介紹電容的用途及注意事項。 什么是好
    發表于 01-14 10:31 ?2078次閱讀

    鉭電解應用注意事項

    鉭電解應用注意事項 使用電壓---------------------------------------------------------------------------------------------------------------------電容器
    發表于 03-31 15:54 ?589次閱讀

    焊錫技巧及注意事項培訓

    焊接技術簡單介紹 焊錫技巧及注意事項培訓。
    發表于 05-13 15:39 ?0次下載

    電路設計注意事項

    電路設計注意事項,感興趣的可以看看。
    發表于 06-17 15:42 ?32次下載

    pcb注意事項

    pcb注意事項,感興趣的小伙伴們可以看看。
    發表于 07-29 17:46 ?0次下載

    Protel布線設計注意事項

    Protel布線設計注意事項,好資料,下來看看。
    發表于 01-12 12:48 ?0次下載

    電源MOSFET使用注意事項

    關于電源MOSFET使用注意事項說明。
    發表于 06-18 15:22 ?24次下載

    COB光源的使用注意事項

    COB光源的使用注意事項
    的頭像 發表于 12-13 15:45 ?1718次閱讀

    使用注意事項

    使用注意事項
    發表于 03-17 20:14 ?1次下載
    使用<b class='flag-5'>注意事項</b>

    使用HRPWM注意事項

    C2000支持占空比、相移、死區和周期的高精度控制。HRPWM是在普通PWM模塊上采用微邊沿定位 (MEP, micro-edge positioner) 技術實現的。簡單來說, 就是將一個計數周期再拆分為很多個小的MEP步長, 如下圖所示。 其中,MEP最小步長是150ps。
    的頭像 發表于 03-26 09:14 ?1352次閱讀
    使用<b class='flag-5'>HRPWM</b>的<b class='flag-5'>注意事項</b>

    使用注意事項

    使用注意事項
    發表于 07-07 19:04 ?0次下載
    使用<b class='flag-5'>注意事項</b>
    主站蜘蛛池模板: 亚洲天天在线| 午夜视频国产| 噜噜噜色网| 国产小视频在线播放| 欧美aaaaa性bbbbb小妇| 成人观看网站a| wwwa级片| 婷婷五月天.com| 久久久久久夜精品精品免费啦| 国内精品久久久久影院免费| 手机在线完整视频免费观看| 正在播放亚洲一区| 在线色国产| 色香影院| 噜噜噜天天躁狠狠躁夜夜精品| 高清国产亚洲va精品| 天天躁天天狠天天透| 国产视频福利| 亚洲一区二区中文字幕| 成人中文在线| 日日噜夜夜噜| 韩国电影天堂| 国产主播在线看| 自拍偷拍福利视频| 立即播放免费毛片一级| 四虎黄色网| 在线97| 欧美在线视频二区| 成人av.com| 久久久久久国产精品免费免费 | 上课被同桌强行摸下面小黄文| 欧美黄视频在线观看| 大尺度视频网站久久久久久久久| 天天尻| xxxx欧美| 五月综合激情网| 久久99精品一级毛片| 午夜在线观看免费视频| 2021久久精品免费观看| aaaa级毛片| 欧美色欧美亚洲高清在线视频|