新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 使用C2000??內(nèi)部比較器替外部比較器

使用C2000??內(nèi)部比較器替外部比較器

作者:Emma Wang 時間:2023-10-20 來源: 收藏

1. 介紹

本文引用地址:http://m.butianyuan.cn/article/202310/451837.htm

系列芯片在數(shù)字電源和電機控制中有著廣泛的應(yīng)用,在這些應(yīng)用中,過流過壓保護是必不可少的。傳統(tǒng)的方法是使用,但是會存在濾波電路不好設(shè)計,不同版本需要不同的BOM來提供不同的保護點等問題。本文針對所有第三代芯片,比如F2807x/37x,F(xiàn)28004x,F(xiàn)28002x等,介紹的具體實踐方法,并提供了與傳統(tǒng)的方法的比較,結(jié)果表明,使用C2000的方法在效率和成本上都具備明顯的優(yōu)勢。

2. C2000 的介紹

TI 第三代C2000芯片全系列集成了帶DAC的片內(nèi)比較器,通過DAC設(shè)定閾值,與采樣信號分別送到片內(nèi)比較器的正負輸入端做比較,由于DAC的集成,用戶可以方便地修改比較的電壓值。同時,C2000比較器內(nèi)部集成數(shù)字濾波器,可以實現(xiàn)高性能的濾波。生成保護信號給到PWM模塊封鎖PWM輸出,從而實現(xiàn)快速的過流過壓保護,無需額外再加比較器和基準電壓。另外,C2000內(nèi)部的比較器響應(yīng)速度快,以F280049 為例(可參考datasheet上Comparator Electrical Characteristics這一章節(jié)),從比較器輸入的電平異常到比較器產(chǎn)生輸出信號,延遲最多60ns, 而通用比較器的延遲一般要1us左右,使用與C2000內(nèi)部比較器相似規(guī)格的比較器成本又會比較高。

比較器子系統(tǒng) (CMPSS) 模塊由模擬比較器和支持組件組成它們組合成一種拓撲結(jié)構(gòu),可用于功率應(yīng)用,例如峰值電流模式控制,開關(guān)電源、功率因數(shù)校正和電壓跳閘監(jiān)控。 每個CMPSS 模塊包括兩個模擬比較器、兩個可編程 12 位DAC、一個斜坡發(fā)生器和兩個數(shù)字濾波器。CMPSS有兩個輸出,一個是CTRIPH,送到芯片內(nèi)部,可以和PWM模塊同步,配合使用。一個是CTRIPOUTH,可以通過OUTPUTXBAR 送到外部GPIO和系統(tǒng)其他模塊搭配使用。簡化的示意圖如圖1所示:

pastedimage1678694922258v1.png-640x480.png

圖1 比較器子系統(tǒng) (CMPSS)簡圖

3. 比較器滯回功能的使用

為了避免噪聲波動引起的比較器輸出的反復(fù)跳變,我們一般都會配置滯回比較。 C2000比較器的滯環(huán)是可以設(shè)定的,COMPHYSCTL的COMPHYS位可以設(shè)定滯環(huán)的環(huán)寬,當(dāng)環(huán)寬設(shè)定為0時也就意味著沒有滯環(huán)。注意在規(guī)格書中,滯環(huán)的單位是LSB,所以它和CMPSS模塊內(nèi)部的DAC的參考有關(guān)。如果內(nèi)部DAC的參考電壓是3V,1LSB對應(yīng)3V/4096=0.7mV。 以F28004x,F(xiàn)2807x,F(xiàn)2837x為例,其滯環(huán)可以在12LSB, 24LSB, 36LSB, 48LSB中選擇。具體可以在datasheet的電氣參數(shù)中看到。

pastedimage1678694971593v2.png-640x480.png

CMPSS內(nèi)部DAC的參考可以看TRM (Technical Reference Manual) 中關(guān)于參考的介紹,可以在VDDA和VDAC中選擇:

pastedimage1678694991297v3.png-640x480.png

設(shè)置滯回的寄存器是COMPHYS, 設(shè)置滯回也可以調(diào)用driverlib中的函數(shù)CMPSS_setHysteresis(uint32_t base, uint16_t value)。設(shè)置值和滯回環(huán)寬的關(guān)系可以看具體型號C2000的Technical Reference Manual中寄存器的解釋。

pastedimage1678695006389v4.png-640x480.png

4. 數(shù)字濾波器的使用

當(dāng)外部輸入的濾波電路設(shè)計不當(dāng)時,會導(dǎo)致比較器被誤觸發(fā)的情況,C2000內(nèi)部比較器還集成了可配置的數(shù)字濾波器,CMPSS數(shù)字濾波器的時鐘來源是系統(tǒng)時鐘, 預(yù)分頻(CLKPRESCALE)決定了濾波器的采樣率,濾波器的FIFO在每個分頻后時鐘采樣一次。數(shù)字濾波器在從輸入端采集的FIFO采樣(SAMPWIN)窗口上工作。濾波器輸出為采樣窗口內(nèi)的多數(shù)值,其中多數(shù)由閾值(THRESH)定義。如果不滿足閾值,則濾波器輸出保持不變。具體的工作邏輯可以參考TRM(Technical Reference Manual)的Digital filter behavior,如圖2。

這里以F280049為例,需要注意的是,THRESH的值必須被設(shè)置為大于SAMPWIN/2并且小于或等于SAMPWIN。同時,F(xiàn)IFO中的舊數(shù)據(jù)將被丟棄。在用寄存器配置的情況下,對于SAMPWIN、THRESH和CLKPRESCALE,數(shù)字濾波器使用的內(nèi)部數(shù)字在所有情況下都是+1。也就是說,samples=SAMPWIN+1,threshold=THRESH+1,pre scale=CLKPRESCALE+1。

pastedimage1678695102004v6.png-640x480.png

圖2 比較器濾波子模塊功能

也可以用driverlib函數(shù)配置,即在函數(shù)中配置相應(yīng)的分頻值,采樣窗和閾值。

Void CMPSS_configFilterHigh(uint32_t base, uint16_t samplePrescale, uint16_t sampleWindow, uint16_t threshold);

Void CMPSS_configFilterLow(uint32_t base, uint16_t samplePrescale, uint16_t sampleWindow, uint16_t threshold);

5. 利用鎖存模式和外部模塊配合使用

CMPSS可以很方便地和PWM等其他內(nèi)部外設(shè)配合使用,但是有些應(yīng)用中,也需要把內(nèi)部比較器的信號鎖存起來,比如傳給外部的IPM模塊等。CMPSS也支持這種模式,用戶可選擇穿透模式,和鎖存(Latch)模式,在鎖存模式下,可以將瞬間的過壓過流給到外部,保護外部的模塊不被損壞。

同時,也可以在比較器的輸出源中選擇通過或門的鎖存信號,也就是高低兩個寄存器的COMPCTL.CTRIPOUTLSEL和用COMPCTL.CTRIPOUTHSEL ,第三個輸入選項就是經(jīng)過濾波器后的鎖存信號,也可以選擇0-異步模式或是和1-CPU時鐘同步,或是2-經(jīng)過濾波器但是不鎖存的信號,具體選項和對應(yīng)關(guān)系,可以參考圖3。

同樣的,也可以用Driverlib函數(shù)配置,在void CMPSS_configOutputsHigh(uint32_t base, uint16_t config)和void CMPSS_configOutputsLow(uint32_t base, uint16_t config)函數(shù)里面的config增加一個參數(shù)CMPSS_TRIPOUT_LATCH即可,TRIPOUT代表是將這個信號通過OUTPUTXBAR送到芯片外部GPIO。

pastedimage1678695133901v7.png-640x480.png

圖3 比較器子系統(tǒng)完整信號框圖

6. 和PWM配合使用的實際應(yīng)用

傳統(tǒng)的保護方式是使用,本文介紹的使用C2000內(nèi)部的窗口比較器(ADC與比較器pin 腳共用)的方式,可以節(jié)省物料成本和布板空間。具體配置方法如下(完整代碼參考TIDM-02002

針對 HEV/EV 車載充電器的雙向 CLLLC 諧振、雙有源電橋 (DAB) 參考設(shè)計):

第一步,選擇合適的CMPSS輸入的腳,查看TRM 的Table 15-2. Analog Pins and Internal Connections,并通過CMPSS的DAC 子模塊,配置合適的值; 這邊需要注意,比較器模塊的高低比較器的Positive input必須是外部AIO引腳,negative input 可以說DAC 的輸出或外部AIO引腳。

// set CMPSS H and L Positive input pins

ASysCtl_selectCMPHPMux(CLLLC_IPRIM_CMPSS_ASYSCTRL_CMPHPMUX,

                           CLLLC_IPRIM_CMPSS_ASYSCTRL_MUX_VALUE);

ASysCtl_selectCMPLPMux(CLLLC_IPRIM_CMPSS_ASYSCTRL_CMPLPMUX,

                           CLLLC_IPRIM_CMPSS_ASYSCTRL_MUX_VALUE);

// set DAC H and L values

CMPSS_setDACValueHigh(CLLLC_ISEC_TANK_CMPSS_BASE,

                              CLLLC_ISEC_TANK_DACHVAL);

CMPSS_setDACValueLow(CLLLC_ISEC_TANK_CMPSS_BASE,

                             CLLLC_ISEC_TANK_DACLVAL);

第二步,配置輸出,通過XBAR 將CMPSS的高和低兩個比較器的結(jié)果,映射到XBAR_TRIP5和XBAR_TRIP7;

XBAR_setEPWMMuxConfig(XBAR_TRIP5,

                           CLLLC_IPRIM_TANK_H_PWM_XBAR_MUX_VAL);

XBAR_enableEPWMMux(XBAR_TRIP5,

                           CLLLC_IPRIM_TANK_H_XBAR_MUX);

XBAR_setEPWMMuxConfig(XBAR_TRIP7,

                           CLLLC_IPRIM_TANK_L_PWM_XBAR_MUX_VAL);

XBAR_enableEPWMMux(XBAR_TRIP7,

                           CLLLC_IPRIM_TANK_L_XBAR_MUX);

第三步,PWM trip配置,將XBAR_TRIP5和XBAR_TRIP7分別配置給Digital Trip Event A2和B2, 當(dāng)輸出為高時,可以觸發(fā)PWM動作。

7. 總結(jié)

在本文中,我們討論了通過 C2000內(nèi)部集成的模擬比較器功能,在增加系統(tǒng)功能的同時減少外部組件的需求,同時提供了更多的數(shù)字編程控制的靈活性,這種實現(xiàn)還可以幫助節(jié)省成本和電路板空間,本文還通過幾個具體案例詳細介紹了集成模擬比較器的使用方法。更多相關(guān)應(yīng)用、硬件和軟件的示例,請參閱 TI 官網(wǎng)提供的C2000開發(fā)工具、應(yīng)用手冊、設(shè)計指南、硬件原理圖和軟件示例。



評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉