【導讀】C2000系列芯片在數字電源和電機控制中有著(zhù)廣泛的應用,在這些應用中,過(guò)流過(guò)壓保護是必不可少的。TI 的Picollo系列芯片從F2802x開(kāi)始,就已經(jīng)集成了帶DAC的片內比較器,通過(guò)DAC設定閾值,與采樣信號分別送到片內比較器的正負輸入端做比較,生成保護信號給到PWM模塊封鎖PWM輸出,從而實(shí)現過(guò)流過(guò)壓保護,響應速度快,無(wú)需額外再加比較器和基準電壓。
C2000系列芯片的內置比較器主要可以分為如下兩類(lèi):

不管是以上哪種類(lèi)型的比較器,其輸入正端都是直接連到ADC采樣口(這個(gè)口用來(lái)采樣需要監控的信息比如電壓或電流),輸入負端則可以選擇連到內部的DAC輸出或者另一個(gè)ADC采樣口。本文將以比較器負端連到內部DAC輸出為例(這也是最常見(jiàn)的一種用法),介紹內部比較器可能的誤差來(lái)源及其矯正方法。
誤差來(lái)源:
1. static offset error,靜態(tài)失調誤差。
2. 比較器滯環(huán)
3. ADC基準和比較器內部DAC基準差異。
一、static offset error靜態(tài)失調誤差
現在假設我們希望的比較閾值為1.5V,當比較器正端輸入電壓大于1.5V時(shí),比較器輸出為1(高電平);輸入電壓小于1.5V時(shí),比較器輸出0(低電平)。如果內部DAC的基準為3V,那么我們需要把DACVAL設定為2048使得DAC輸出1.5V。在上面描述的這種情況下有兩個(gè)地方會(huì )引入誤差,一個(gè)是內部DAC的誤差(offset error),另一個(gè)是比較器的誤差(input referred offset error),這兩個(gè)誤差總稱(chēng)為static offset error,靜態(tài)失調誤差。
對于F28004x, F2807x,F2837x系列芯片,其規格書(shū)上都有static offset error這個(gè)參數,為±25mV。也就是說(shuō),雖然理論上DACVAL=2048可以得到1.5V的閾值,但是因為static offset error,比較器發(fā)生翻轉時(shí)負端的電壓可能在1.475V到1.525V之間,而這個(gè)值是多少你并不知道,所以就需要校準。校準方法就是,在比較器正端接上一個(gè)你需要的閾值電平,在關(guān)掉內部比較器滯環(huán)的條件下,讓比較器的DACVAL從0逐漸增大到4095,再逐漸減小到0,這樣比較器輸出會(huì )有兩次翻轉,將這兩次翻轉時(shí)的DACVAL的值作平均,就是校正后的閾值電壓對應的DACVAL的值。
如果不用內部的DAC生成比較閾值,比較器的正端和負端都接外部信號的話(huà),那么就只需要考慮比較器的誤差了。
二、比較器滯環(huán)
C2000比較器的滯環(huán)是可以設定的,COMPHYSCTL的COMPHYS位可以設定滯環(huán)的環(huán)寬,當環(huán)寬設定為0時(shí)也就意味著(zhù)沒(méi)有滯環(huán)。注意在規格書(shū)中,滯環(huán)的單位是LSB,所以它和CMPSS模塊內部的DAC的參考有關(guān)。如果內部DAC的參考電壓是3V,1LSB對應3V/4096=0.7mV。以F28004x,F2807x, F2837x為例,其滯環(huán)可以在12LSB, 24LSB, 36LSB, 48LSB中選擇。
需要指出的是,加入滯環(huán)后,比較器從0翻轉到1的閾值依然是之前校準過(guò)的值,而不會(huì )變成(校準過(guò)的值+1/2*滯環(huán)寬度),而從1翻轉回0的閾值則會(huì )變成(校準過(guò)的值-滯環(huán)寬度),如下圖所示:

三、ADC基準和比較器內部DAC基準的差異
在實(shí)際系統中,除了用比較器做硬件保護,通過(guò)AD采樣來(lái)做軟件保護也很常見(jiàn)。對于同一個(gè)電壓或者電流信號,在考慮了前述靜態(tài)失調誤差和滯環(huán)后,有時(shí)候我們會(huì )發(fā)現ADC采樣得到的值根本沒(méi)到比較器DAC輸出的閾值,但是比較器依然翻轉了,這其中甚至會(huì )差到200個(gè)LSB。這是因為芯片ADC的基準電壓和比較器內部DAC的基準電壓不同導致的。
以F28004x,F2807x, F2837x為例,比較器內部DAC的基準默認來(lái)自于VDDA,可以配置成VDAC,而ADC的基準來(lái)自于VREFHI,VDDA默認供電是3V,而我們常用的內部ADC基準VREFHI是3.3V,這樣,如果我們的比較器DACVAL設定為2048,那么比較器會(huì )在1.5V翻轉,而此時(shí)ADC采樣的值只有1.5V/3.3V*4096=1862。這就是因為ADC基準和比較器內部DAC基準的不同帶來(lái)的差異,對于既需要做硬件保護,又需要做軟件保護的信號,這一點(diǎn)需要特別注意。最簡(jiǎn)便的解決辦法就是,將比較器內部的DAC基準配置為VDAC,同時(shí)將VDAC連到VREFHI上,使得兩者的基準一致。
結論
本文以F28004x,F2807x,F2837x芯片為例,介紹了內置比較器的誤差來(lái)源及校正方法,同時(shí)糾正了比較器滯環(huán)的錯誤理解。對于同一個(gè)信號既需要軟件保護又需要硬件保護的系統,我們指出了導致軟硬件保護閾值可能出現偏差的原因,同時(shí)給出了解決辦法。正確使用C2000芯片內部比較器可以實(shí)現快速軟硬件保護,提高系統整體可靠性,同時(shí)無(wú)需外部基準和比較器,節省PCB空間,是一個(gè)非常實(shí)用的模塊。
推薦閱讀: