單片機(jī)系統(tǒng)設(shè)計(jì)的誤區(qū)與對(duì)策
雙時(shí)限看門(mén)狗有兩個(gè)定時(shí)器;一個(gè)為短定時(shí)器,一個(gè)為長(zhǎng)定時(shí)器。短定時(shí)器定時(shí)為T(mén)1,長(zhǎng)定時(shí)器定時(shí)為 T2,0T1T2;長(zhǎng)、短公平時(shí)器的FeedDog是各自獨(dú)立的。短定時(shí)器象典型看門(mén)狗那樣工作,它保證一般情況下看門(mén)狗有快的反應(yīng)速度;長(zhǎng)度時(shí)器的定時(shí)T2大于CPU執(zhí)行一個(gè)主循環(huán)程序的時(shí)間,并且每一個(gè)主循環(huán)才FeedDog一次,用來(lái)防止看門(mén)狗失效。
這樣,當(dāng)程序進(jìn)入某個(gè)死循環(huán),如果這個(gè)死循環(huán)包含短定時(shí)器FeedDog語(yǔ)句而不包含長(zhǎng)定時(shí)器 FeedDog語(yǔ)句,那么長(zhǎng)定時(shí)順終將溢出,使單片機(jī)復(fù)位。巧妙安排長(zhǎng)定時(shí)器FeedDog語(yǔ)句的位置,可保證出現(xiàn)死機(jī)的概率根低。在水輪發(fā)電機(jī)組微機(jī)控制裝置中的對(duì)比應(yīng)用證明了這一點(diǎn)[3]。
目前幾乎所有的看門(mén)狗都是依賴(lài)于CPU(依賴(lài)于CPU FeedDog)。這可以比作:一個(gè)保險(xiǎn)設(shè)備能否起到保險(xiǎn)作用還依賴(lài)于被它保護(hù)的對(duì)象的行為。顯然,依賴(lài)于CPU的看門(mén)狗是不能保證單片機(jī)在分之百不死機(jī)的。
在絕對(duì)不允許死機(jī)的裝置中,筆者設(shè)計(jì)了一種完全不依賴(lài)于CPU的看門(mén)狗——定時(shí)復(fù)位看門(mén)狗。定時(shí)復(fù)位看門(mén)狗的主體也是一個(gè)定時(shí)器,到預(yù)定時(shí)間就發(fā)出溢出脈沖,此溢出脈沖使單片機(jī)強(qiáng)行復(fù)位。定時(shí)復(fù)位看門(mén)狗不需要CPU FeedDog。
簡(jiǎn)言之,定時(shí)復(fù)位看門(mén)狗就是定時(shí)地讓單片機(jī)強(qiáng)行復(fù)位。這樣,即使裝置死機(jī),其最大死機(jī)時(shí)間也不會(huì)大于定時(shí)器定時(shí)時(shí)間。顯然,只要硬件完好,這種看門(mén)狗百分之百地保證了單片機(jī)不會(huì)長(zhǎng)時(shí)間死機(jī)。在智能電表(包括IC卡電能表、復(fù)費(fèi)率電能表、多功能電能表 [4])中采用了定時(shí)復(fù)位看門(mén)狗,每1秒讓CPU強(qiáng)行復(fù)位,迄今數(shù)十萬(wàn)電表運(yùn)行了近五年,無(wú)一例死機(jī)報(bào)告。
必須指出,采用這種看門(mén)狗,CPU的編程要適應(yīng)定時(shí)復(fù)位的環(huán)境,保證定時(shí)復(fù)位不打斷那些不能打斷的程序,不造成任何誤動(dòng)作。
2 誤區(qū)之二:加電源濾波器能提高EMC性能
在單片機(jī)系統(tǒng)中,為了抑制電磁干擾(EMI),常常在交流電源進(jìn)線與電源變壓器之間加電磁濾波器。常用電源濾波器如圖1。
圖1都是雙II型LC濾波器,其中C0專(zhuān)用于旁路差模干擾。兩者的不同之處在于:圖1(b)兩個(gè)電容接大地。設(shè)電感的電阻為R,它們的隔頻特性分別是:
當(dāng)R很小時(shí),上述兩個(gè)濾波器的諧振頻率分別為:
可見(jiàn),它們的幅頻特性相似,諧振頻率不同。從濾波效果來(lái)看,兩者對(duì)于降低來(lái)自交流電的差模干擾效果差不多,但是后者對(duì)于降低共模干擾效果更好。不過(guò)同,對(duì)于采用浮地方式的裝置,由于電容不可能直正接到大地,所以只能用者。
設(shè)計(jì)濾波器時(shí)必須注意讓諧振頻率遠(yuǎn)小于干擾頻率,處理不好不僅不能衰減干擾,反而放大干擾。以圖 1(a)的雙II型濾波器為例,如果取L=1mh,R= 1Ω,C=0.47μF(這是許多資料推薦的參數(shù)),可計(jì)算出f0=5.2kHz。而EMC測(cè)試中的快速脈沖群頻率是5.0kHz(2kV)或 2.5kHz(4kV);5.0kHz剛好諧振,2.5kHz也不會(huì)被衰減,如圖2虛線的示。可見(jiàn),不是所有的電源濾波器都能提高EMC性能。工程中,許多裝置盡管采用了成本不菲的濾波器,但EMC測(cè)試仍難過(guò)程,原因大多在此。
實(shí)際上,如果取L=30mh,R=5Ω,C=0.47μF,可計(jì)算出f0=0.95kHz,5.0kHz脈沖群幅值減為3.73%,2.5kHz脈沖群幅值衰減為16.78%。這時(shí),電源濾波器確實(shí)提高了系統(tǒng)的EMC性能。圖2實(shí)線是相慶的幅頻特性。
3 誤區(qū)之三:光偶器件隔離干擾很徹底
光偶器件是最常用的隔離干擾器件。例如現(xiàn)場(chǎng)的開(kāi)關(guān)量引到測(cè)控裝置后都要加光隔,以切斷來(lái)自現(xiàn)場(chǎng)的傳導(dǎo)干擾;RS485通訊口經(jīng)光隔再與外部通訊線連接,防止來(lái)自外部通訊線的傳導(dǎo)干擾。
有不少人認(rèn)為:光偶器件隔離干擾很徹底,用了光偶隔離干擾就過(guò)不去了。其實(shí),光電隔離并非萬(wàn)全之策。
首先,光偶器件本身只能隔離傳導(dǎo)干擾,它隔離不斷幅射、感應(yīng)干擾。幅射來(lái)自空間,感應(yīng)來(lái)自相鄰的導(dǎo)體。最常見(jiàn)的敗筆是:設(shè)計(jì)PCB時(shí)將光偶器件的輸入和輸出電路布在了一起,這時(shí)干擾從光偶器件是過(guò)不去了,但卻很容易輸入電路感應(yīng)到輸出電路。
其次,光偶器件隔離傳導(dǎo)干擾的能力也只有1kV左右,1kV以上的干擾或浪涌一般是力所不的及的。比如EMC的快速脈沖群測(cè)試,施加的干擾信號(hào)幅值是2kV、4kV、8kV,光偶器件是無(wú)法隔離的。
評(píng)論