《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計應(yīng)用 > 基于MC68HC376單片機的可靠性設(shè)計
基于MC68HC376單片機的可靠性設(shè)計
EEworld
摘要: 該方案采用高性能,、集成度高,、可靠性強的32位新型微控制器MC68HC376為核心,同時在硬件,、軟件以及制板布線等方面采用多種提高系統(tǒng)可靠性的設(shè)計措施。應(yīng)用該方案的數(shù)字式低頻低壓控制裝置RSA800,,已通過電力工業(yè)部電力設(shè)備及儀表質(zhì)量檢驗測試中心的產(chǎn)品型式試驗,。 欲了解更多信息請登錄電子發(fā)燒友網(wǎng)
Abstract:
Key words :

1 引言


隨著工業(yè)技術(shù)的不斷發(fā)展,對單片機控制的要求也越來越高,,需要單片機具備更高的反應(yīng)速度和更強的數(shù)據(jù)處理能力,,各種高性能的新型單片機得到了迅猛的發(fā)展和應(yīng)用。單片機上主要是高速的數(shù)字信號,,弱信號很容易受到外界的電磁干擾,,同時,單片機系統(tǒng)也會發(fā)生掉電,、死循環(huán)等問題,。在工業(yè)控制場合,一旦控制發(fā)生錯誤,,將會造成難以估計的損失,。因此,如何提高控制的可靠性是長期以來的一個重要問題,。本文介紹了應(yīng)用32位高性能單片機MC68HC376的一種實際開發(fā)方案,,同時重點討論了提高系統(tǒng)可靠性的設(shè)計和實現(xiàn)方法。

MC68HC376是Motorola公司推出的一種新型的32位高性能單片機,,具有極強的數(shù)據(jù)處理,、邏輯運算和信息存儲能力,,且支持BDM(Background Debug Mode)模式。通過簡易的專用電纜接口,,可以直接對微控制器系統(tǒng)進行仿真開發(fā)和燒錄程序,。此外,由于MC68HC376內(nèi)部集成度高,,外部擴展工作少,,因此本身具有較強的抗干擾能力;同時通過外部硬件電路以及軟件的抗干擾設(shè)計,,控制系統(tǒng)可以實現(xiàn)較高的可靠性,。

2 控制系統(tǒng)的基本結(jié)構(gòu)設(shè)計

MC68HC376的集成度高,其主要功能模塊包括32位CPU,;系統(tǒng)集成模塊(SIM),;4K備用RAM;8K片內(nèi)ROM,;10位隊列式的模數(shù)轉(zhuǎn)換器(QADC),;隊列式串行通信模塊(QSM);可構(gòu)造時鐘模塊(CTM4),;時間處理單元(TPU),;3.5K靜態(tài)TPURAM;CAN控制模塊(TOUCAN),。其基本性能如下:

(1) 24位地址總線,、16位數(shù)據(jù)總線結(jié)構(gòu),支持32位數(shù)據(jù)操作,。

(2) 2個8位雙功能I/O,,1個7位雙功能I/O,16~44個模擬量輸入通道,。

(3) 具有系統(tǒng)保護邏輯,,同時可進行時鐘監(jiān)視和總線監(jiān)視。

(4) 速度快,,在4.194MHz的晶振下系統(tǒng)時鐘可達20.97MHz,。

(5) 功耗低,具備低功率休眠功能,。

(6) 支持高級語言和背景調(diào)試,。

系統(tǒng)擴展的基本結(jié)構(gòu) MC68HC376 內(nèi)部集成度較高,因而其所需的外圍擴展工作較少,?;窘Y(jié)構(gòu)包括外部Flash ROM、RAM、模擬量輸入通道,、數(shù)字量輸入通道,、鍵盤、液晶顯示,、RS-232電平轉(zhuǎn)換器MAX232和CAN控制器CAN250等,,其結(jié)構(gòu)框圖如圖1所示。本文重點討論系統(tǒng)的可靠性設(shè)計,。


3 系統(tǒng)的可靠性設(shè)計

3.1 微處理器硬件監(jiān)控電路

本文采用監(jiān)控器MAX705芯片構(gòu)成外部監(jiān)控電路,電路外部接線如圖2所示,。該電路具有看門狗定時器,、自動和手動復(fù)位功能,以及電壓門限監(jiān)測功能,。

由于在系統(tǒng)上電,、掉電以及供電電壓不足時, CPU 和總線邏輯狀態(tài)不確定,,因此應(yīng)該將微控制器維持在復(fù)位的狀態(tài),以避免控制錯誤。對于MAX705,,復(fù)位門限電壓為4.65V,,故當Vcc低于4.65V時,系統(tǒng)保持在復(fù)位狀態(tài),。同時,,將Vcc與PFI引腳相連,當Vcc低于1.25V時,,由PFO引腳輸出示警信號,,若較長時間處于電源示警狀態(tài),則可能出現(xiàn)電源故障,,應(yīng)該加以處理,。

當系統(tǒng)正常運行時,由MC68HC376的CTM4模塊的CTD4通道以小于1.6s的間隔定時向MAX705的WDI引腳提供脈沖,;一旦系統(tǒng)不能正常運行而導(dǎo)致MAX705的WDI引腳失去脈沖時,,看門狗定時溢出使得/WDO為低,由于/WDO與手動復(fù)位引腳/MR相連,,因此/RESET腳向MC68HC376發(fā)出低有效的復(fù)位信號,,使系統(tǒng)恢復(fù)到復(fù)位狀態(tài)。

3.2 外部濾波電路

由于系統(tǒng)采用外部參考頻率源,,為了提高系統(tǒng)頻率的穩(wěn)定性和可靠性,,所以需要在MC68HC376的XFC腳上接入濾波電路。該電路應(yīng)盡可能降低XFC腳的泄露電流,以提高時鐘的穩(wěn)定性和內(nèi)部鎖相環(huán)的性能,。圖3所示為高穩(wěn)定的濾波電路,。


3.3輸出驅(qū)動電路可靠性設(shè)計

控制裝置通過對系統(tǒng)狀況進行監(jiān)測和分析后,向控制和調(diào)節(jié)的動作單元提供控制信號,。如果輸出信號受到干擾或者由于裝置故障而發(fā)出錯誤的控制信號,,那么會因產(chǎn)生錯誤的調(diào)節(jié)控制動作而使系統(tǒng)受到危害。因此,,對于輸出驅(qū)動電路應(yīng)該加以相應(yīng)的閉鎖控制和抗干擾設(shè)計,,以提高控制的可靠性。

(1) 閉鎖控制電路

這里采用可再觸發(fā)雙/單穩(wěn)態(tài)多諧振蕩器74LS123 來構(gòu)成輸出閉鎖電路,,電路接線如圖4 所示,。 將74LS123的A腳與MC68HC376的CTM4模塊的CTD4通道相連,由于在正常情況下CTD4定時提供脈沖,,使得振蕩電路不能發(fā)生翻轉(zhuǎn),,此時,/Q保持為1,;如果裝置故障,,使得CTD4失去脈沖,則振蕩電路使得/Q翻轉(zhuǎn)變?yōu)?,,因此閉鎖信號變?yōu)?對輸出控制信號閉鎖,。

同時,與門4081的另一腳接至MC68HC376的TPU模塊的TCH15腳,,直接由MC68HC376控制,。在正常運行中,當需要輸出控制信號時,,置TCH15為1,;當不需要輸出控制信號時,置TCH15為0,,則使閉鎖信號為0,,閉鎖輸出部分,這樣就防止了由于干擾或其他原因造成的誤動作,。

(2) 控制信號輸出部分的抗干擾設(shè)計

當閉鎖信號開通時,,輸出控制信號可能由于擾動而出現(xiàn)偏差,因此應(yīng)設(shè)計相應(yīng)的輸出電路形式來減小擾動的影響,。輸出電路的形式如圖5所示(這里只畫出一路輸出信號),。


采用單線控制時,一旦受到干擾就會使控制信號的電平發(fā)生變化,,從而造成誤動,。這里采用“0,1”控制方式,,用兩根臨近的控制線,一根直接接至與門4081,,另一根經(jīng)過非門4069接至4081,,即當兩根控制線為“0,1”時輸出有效的電平信號1。這樣,,當存在高擾動或低擾動使得控制線同時變?yōu)?或0時,,輸出無效的電平信號0。本系統(tǒng)中,,以CTM4模塊的CPWM7引腳和閉鎖信號一起控制開啟信號,;開啟信號與MC68HC376的控制信號一起控制動作輸出信號。這樣就充分提高了輸出控制的可靠性,。注意,,單片機的I/O控制信號應(yīng)使用上拉電阻。

3.4 掉電報警電路

當系統(tǒng)的某一級工作電源掉電時,,控制裝置將不能正常運作,或者控制信號得不到正確執(zhí)行,。這時應(yīng)該發(fā)出報警信號,,掉電報警電路如圖6所示。將各等級的工作電源通過關(guān)隔MOC8050串接起來,,一旦發(fā)生掉電的情況,,掉電報警處的電平由高變?yōu)榈停瑔訄缶b置,。軟件可靠性設(shè)計

3.5 軟件看門狗

在MC68HC376的SIM模塊中,,有一個軟件看門狗,在監(jiān)控程序中,,可以開啟軟件看門狗,,配合提高系統(tǒng)的可靠性。該軟件看門狗由MC68HC376的系統(tǒng)保護控制寄存器(SYPCR)中的SWE位控制開啟,。當SWE位為1時,,看門狗啟動,開始計時,。在裝置正常工作時,,程序應(yīng)該在軟件看門狗溢出之前對軟件服務(wù)寄存器(SWSR)先后寫入55H和AAH,當寫入完成之后,,軟件看門狗就會清除當前計時值,,重新開始計時。

如果計時值溢出,,則會使MC68HC376的/RESET引腳有效,,系統(tǒng)復(fù)位。這樣,就可以在程序死循環(huán)或者由于其它原因而導(dǎo)致程序跳飛時自動回復(fù)到復(fù)位狀態(tài),。

看門狗的溢出時間由系統(tǒng)頻率以及SYPCR寄存器的看門狗分頻位(SWP)和看門狗定時區(qū)(SWT[1:0])決定,,如表1所示。選擇看門狗溢出時間時應(yīng)該注意大小適中,,若取值過大,,則程序可能會較長時間處于死循環(huán)或跳飛狀態(tài),從而導(dǎo)致控制錯誤或失效,;若取值過小,,則會增加程序負擔,降低裝置運行效率,。


3.6 程序的區(qū)域劃分和操作級別控制

CPU32可進行兩種優(yōu)先級別的操作:監(jiān)控級別和用戶級別,。在監(jiān)控級別下,CPU可以對所有的內(nèi)部集成資源和所有的指令進行操作,,而在用戶級別下,,它對一些寄存器和指令的訪問會受到限制。在程序中有效地利用這種優(yōu)先級別會使內(nèi)部資源和一些系統(tǒng)指令得到有控制的訪問,,從而提高系統(tǒng)運行的可靠性,。CPU32的狀態(tài)寄存器SR中的S位決定CPU的工作級別,當S=1時CPU處于監(jiān)控級別,;S=0時CPU處于用戶級別,。

一般情況下,單片機的程序區(qū)和數(shù)據(jù)區(qū)在同一個物理地址空間,。對于MC68HC376,,可以通過功能碼FC[2:0]來擴展和劃分外部物理空間,對FC[2:0]實現(xiàn)外部解碼,,可以使監(jiān)控級程序,、監(jiān)控級數(shù)據(jù)、用戶級程序,、用戶級數(shù)據(jù)分別使用各自獨立的地址空間,。對于MC68HC376內(nèi)部的各個模塊,可以通過其相應(yīng)的結(jié)構(gòu)寄存器中的SUPV位來確定該部分的通用寄存器所處的地址空間,,當SUPV=1時,,將相關(guān)的寄存器放置于監(jiān)控級數(shù)據(jù)地址空間,CPU只有在監(jiān)控級別時才可對其訪問和操作,;當SUPV=0時,,將相關(guān)的寄存器放置于數(shù)據(jù)級數(shù)據(jù)地址空間,CPU可任意對其進行訪問和操作,。這樣,,整個程序結(jié)構(gòu)性強,,按級別控制訪問,增強了運行的可靠性,。

3.7 總線監(jiān)視器

MC68HC376進行內(nèi)部總線操作時,,數(shù)據(jù)選通應(yīng)答引腳(/DSACK)和自動向量引腳(/AVEC)應(yīng)該有相應(yīng)的應(yīng)答信號。SIM模塊中的總線監(jiān)視器能對/DSACK和/AVEC信號進行監(jiān)視,,當響應(yīng)時間超過定時值就使總線錯誤(/BERR)引腳有效,。程序應(yīng)對/BERR的狀態(tài)進行監(jiān)視,以便及時對總線錯誤做出相應(yīng)的處理,。

總線監(jiān)視器的定時值由系統(tǒng)保護控制寄存器(SYPCR)中的總線監(jiān)視時間區(qū)(BMT[1:0])決定,。BMT[1:0]=00時,定時值為64個系統(tǒng)時鐘,;BMT[1:0]=01時,,定時值為32個系統(tǒng)時鐘;BMT[1:0]=10時,,定時值為16個系統(tǒng)時鐘,;BMT[1:0]=11時,定時值為8個系統(tǒng)時鐘,。程序員應(yīng)根據(jù)實際的運行情況進行選擇,。

其它 其它一些提高可靠性的措施還包括有配置去耦電容;系統(tǒng)時鐘電路采用獨立電源VDDSYN供電,,減少對MCU的干擾,,而且MCU 停電時系統(tǒng)時鐘仍可維持運行,。布線時,,時鐘電路設(shè)置在電路板的中央;Standby RAM采用兩個電源VDD和VSTBY供電,,正常運行時VDD供電,,發(fā)生掉電時,使其自動切換到VSTBY供電,。同時,,在軟件中,將堆棧及一些重要數(shù)據(jù)存放在Standby RAM 有利于重要運行參數(shù)的保存,。

4 結(jié)語

該方案采用高性能,、集成度高、可靠性強的32位新型微控制器MC68HC376為核心,,同時在硬件,、軟件以及制板布線等方面采用多種提高系統(tǒng)可靠性的設(shè)計措施。應(yīng)用該方案的數(shù)字式低頻低壓控制裝置RSA800,,已通過電力工業(yè)部電力設(shè)備及儀表質(zhì)量檢驗測試中心的產(chǎn)品型式試驗,。 欲了解更多信息請登錄電子發(fā)燒友網(wǎng)
此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載。