嵌入式控制系統(tǒng)是為了實現(xiàn)某型軍用船艇模擬訓練系統(tǒng)的操縱控制功能而開發(fā)的。該系統(tǒng)基于軍民兩用的自動技術(shù),采用模塊化設(shè)計,可以方便地完成系統(tǒng)的升級改造,以適應(yīng)船艇改進改型的需要,運用前景十分廣闊。嵌入式控制系統(tǒng)是船艇模擬訓練系統(tǒng)的控制中樞,其抗干擾設(shè)計是船艇模擬訓練系統(tǒng)開發(fā)的重要環(huán)節(jié),直接影響到系統(tǒng)的穩(wěn)定運行。 時鐘電路抗干擾設(shè)計 時鐘電路產(chǎn)生CPU的工作時序脈沖,是正常工作的關(guān)鍵。時鐘信號被干擾后將導致CPU的工作時序發(fā)生紊亂,使得系統(tǒng)不能正常工作。 時鐘信號不僅是對噪聲干擾最敏感的部位,同時也是單片機系統(tǒng)的主要噪聲源。單片機的時鐘信號為頻率很高的方波,由與其頻率相同的正弦基波和其倍頻正弦波疊加而成。頻率越高,越容易發(fā)射出去成為噪聲源。此外,時鐘頻率越高,信息傳輸線上信息變換頻率也越高,致使線間串擾、反射干擾以及公共阻抗干擾加劇。因而,在滿足系統(tǒng)功能的前提下,應(yīng)盡量降低時鐘頻率,這對降低系統(tǒng)的電磁發(fā)射,提高系統(tǒng)的抗干擾性能極為有利。 系統(tǒng)的嵌入式控制系統(tǒng)時鐘電路的抗干擾設(shè)計主要有以下幾步。
復(fù)位電路的設(shè)計 在嵌入式控制系統(tǒng)設(shè)計中,復(fù)位電路的設(shè)計非常重要,因為單片機應(yīng)用系統(tǒng)工作時,會經(jīng)常要求進入復(fù)位工作狀態(tài),因而要求復(fù)位電路必須準確、可靠地工作,其復(fù)位狀態(tài)與應(yīng)用系統(tǒng)的復(fù)位狀態(tài)是密切相關(guān)的。 單片機的復(fù)位是靠外部電路實現(xiàn)的,在時鐘電路工作后,只要在單片機的RST引腳上出現(xiàn)24個振蕩脈沖(2個機器周期)以上的高電平,單片機就實現(xiàn)初始化狀態(tài)復(fù)位。為了保證系統(tǒng)可靠的復(fù)位,在設(shè)計復(fù)位電路時,要使RST引腳保持10ms以上的高電平。只要RST保持高電平,MCS-51單片機就循環(huán)復(fù)位;當RST從高電平變?yōu)榈碗娖揭院,單片機就從0000H地址開始執(zhí)行程序。在復(fù)位有效期間,ALE、PSEN、P0、P1、P2、P3口引腳輸出高電平,即使準雙向口皆處于輸入狀態(tài),并將07H寫入棧指針SP(即設(shè)定堆棧底為07H)。同時,將程序計數(shù)器PC和其余的特殊功能寄存器清零(不定的位除外)。復(fù)位不能影響單片機內(nèi)部的RAM狀態(tài),但上電復(fù)位時,由于是重新供電,RAM在斷電時數(shù)據(jù)丟失,上電復(fù)位后為隨機數(shù)。復(fù)位后單片機的初始復(fù)位狀態(tài)如表1所示。 系統(tǒng)中采用程序運行監(jiān)視電路設(shè)計來滿足系統(tǒng)的復(fù)位工作要求。程序運行監(jiān)視通常都由各種類型的程序監(jiān)視定時器WDT(Watch Dog Timer),俗稱“看門狗”。WDT可保證程序非正常運行,如程序“死機”時,能及時進入復(fù)位狀態(tài)。WDT通常有三種類型:單片機內(nèi)部的WDT功能單元;μP監(jiān)視控制器件的WDT電路;單片機外部設(shè)置的WDT電路。本系統(tǒng)中,我們使用單片機外部設(shè)置WDT電路。 圖1是外部WDT電路示意圖。WDT是一個帶有清除端CLR及溢出信號OF輸出的定時器。定時器由脈沖源PWDT、循環(huán)計數(shù)器、單穩(wěn)態(tài)電路組成。PWDT提供循環(huán)計數(shù)器的計數(shù)脈沖,單穩(wěn)態(tài)將循環(huán)計數(shù)器溢出信號轉(zhuǎn)換成單片機的復(fù)位脈沖WRST。 圖1 單片機外部WDT電路示意圖 系統(tǒng)使用的MAX813L與8031的接口電路如圖2所示。該電路可實現(xiàn)看門狗、電源故障監(jiān)控的功能。MAX813L是一款帶有WDT和電壓監(jiān)控功能的芯片,其WDT功能可在輸入于1.6s內(nèi)沒有變化時,產(chǎn)生復(fù)位輸出。同時,電壓監(jiān)控功能可以保證當電源電壓低于1.25V時,產(chǎn)生低掉電輸出。此外,MAX813L還能在上電時自動產(chǎn)生200ms寬的復(fù)位脈沖,并具備人工復(fù)位功能,可以給CPU提供良好的保護。 圖2 MAX813L與單片機8031的連接圖 通過把WO與WR直接相連接,一旦程序跑飛,WO將變?yōu)榈碗娖,并保?40ms以上。該信號將使MAX813L復(fù)位,同時清零看門狗定時器,使RST引腳輸出高電平,將單片機復(fù)位。200ms結(jié)束后,單片機脫離復(fù)位狀態(tài),重新恢復(fù)正常的程序運行。 上述的硬件“看門狗”用于解決主程序的死循環(huán)故障,對于程序中出現(xiàn)的中斷故障,系統(tǒng)使用軟件“看門狗”來實現(xiàn)對中斷的發(fā)現(xiàn)和處理。軟件“看門狗”會在主程序中設(shè)置變量t0和t1。當T0發(fā)生一次中斷,將t0加1,T1發(fā)生一次中斷,將t1加1。在主程序的功能模塊開始處記錄下t0、t1的當前值,設(shè)置計數(shù)器的計數(shù)周期,使之小于功能模塊的執(zhí)行時間。這樣,在功能模塊的執(zhí)行周期內(nèi),計數(shù)器肯定會發(fā)生中斷,通過在功能模塊的出口處檢測這種變化來確定是否發(fā)生了中斷關(guān)閉情況,并進行故障的處理。 控制器總線的抗干擾設(shè)計 由于系統(tǒng)使用的單片機僅僅依靠自身功能不能滿足系統(tǒng)的要求,需要應(yīng)用外部接口芯片對其功能進行擴展。而總線是單片機和外部各種接口芯片進行數(shù)據(jù)交換的通道,總線的可靠性直接關(guān)系到系統(tǒng)的可靠性,系統(tǒng)主要采取以下措施來提高總線的抗干擾能力。 采用三態(tài)門式總線驅(qū)動器提供總線的抗干擾能力?偩驅(qū)動器使用TTL型三態(tài)緩沖門電路74LS245,74LS245可用于雙向驅(qū)動。三態(tài)門緩沖器能減少分布電容與電感對總線工作的影響,在總線上可連接400個芯片,其總線抗干擾能力比OC(集電極開路)門大約大10倍,可驅(qū)動100m的線。 總線接收端加施密特電路做緩沖器抗干擾。在接收端印刷板插座附件加施密特電路來做緩沖器,可以濾除外部噪聲,提高總線的抗干擾性能。 8031的總線由三態(tài)輸出器件構(gòu)成的,在三態(tài)驅(qū)動器(D)都是高阻抗時是不穩(wěn)定的?墒褂蒙侠電阻,將總線通過5kΩ電阻R接到電源,使其在瞬間處于穩(wěn)定的高電位,從而增強抗干擾能力。 改善總線的負載平衡,提高系統(tǒng)可靠性。 給動態(tài)RAM加旁路電容,每片動態(tài)RAM的供電端上對地并接一個0.1μF的電容以抑制干擾,同時盡量縮短電源線和地線的印刷電路板布線。 在靜態(tài)RAM電路中,使電流流動印刷線跳板的各處都比較均勻,不讓電流變動大的區(qū)域在印刷電路板各處頻繁移動。使存儲器存取瞬間所產(chǎn)生的噪聲電壓峰值變小。 接口電路的抗干擾設(shè)計 1 前向通道的抗干擾設(shè)計 前向通道是單片機應(yīng)用系統(tǒng)的信號采集通道,從信號的傳感、變換、到單片機的輸入。在前向通道設(shè)計中主要考慮集成運算放大器的抗干擾設(shè)計、運放電路抗干擾裝配、多路開關(guān)的抗干擾設(shè)計以及A/D轉(zhuǎn)換電路的抗干擾設(shè)計。 集成運放的抗干擾設(shè)計包括集成運放電路內(nèi)部、外部噪聲的控制和集成運放電路共模噪聲控制。 運放電路抗干擾裝配措施包括:
多路開關(guān)的抗干擾也是以抑制噪聲為主,主要包括:
A/D轉(zhuǎn)換器對模擬量的微小噪聲影響十分敏感,為抑制其干擾主要采取以下措施。
2 后向通道的抗干擾設(shè)計 后向通道的抗干擾主要是D/A轉(zhuǎn)換器即DAC的抗干擾設(shè)計。在系統(tǒng)中主要采用以下步驟。
3 人機通道的抗干擾設(shè)計 人機通道的抗干擾設(shè)計主要包括按鍵電路的抗干擾設(shè)計和LED顯示接口的抗干擾設(shè)計。 系統(tǒng)的按鍵抗干擾就是在按鍵確認周期中使用連續(xù)多次的采樣來判定按鍵動作。按鍵確認周期應(yīng)該大于按鍵變換周期并遠小于一次按鍵的穩(wěn)定周期。 系統(tǒng)的LED顯示部分采用5位七段LED譯碼/驅(qū)動芯片MC14489。由于LED的接口在應(yīng)用時,很容易受到其他電子設(shè)備的干擾,使顯示內(nèi)容易發(fā)生改變,我們還需對其進行抗干擾設(shè)計。 在電源部分加入雙電容濾波,然后結(jié)合軟件設(shè)計,在控制腳的兩個步驟程序之間加入一段延時,使正常信號的頻譜向低頻部分集中,以較好地通過濾波電容控制腳所要求的最小電平寬度。 |