<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 設計應用 > 基于32位單片機MC68HC376的高可靠性系統設計

基于32位單片機MC68HC376的高可靠性系統設計

作者:武漢大學(xué)電氣工程學(xué)院,齊曉曼,何勝,劉滌塵 時(shí)間:2004-06-25 來(lái)源:電子設計應用2003年第5期 收藏
摘 要: 本文介紹了32位高性能單片機的基本特性,提出了一種系統設計方案,并重點(diǎn)論述了系統的。論文針對系統的特點(diǎn)從硬件設計、軟件設計以及制板布線(xiàn)等方面討論了提高系統可靠性的具體實(shí)現方法,實(shí)際應用裝置表明該方案具有較高的可靠性。

關(guān)鍵詞:;;

引言
隨著(zhù)工業(yè)技術(shù)的不斷發(fā)展,對單片機控制的要求也越來(lái)越高,需要單片機具備更高的反應速度和更強的數據處理能力,各種高性能的新型單片機得到了迅猛的發(fā)展和應用。
單片機上主要是高速的數字信號,弱信號很容易受到外界的電磁干擾,同時(shí),單片機系統也會(huì )發(fā)生掉電、死循環(huán)等問(wèn)題。在工業(yè)控制場(chǎng)合,一旦控制發(fā)生錯誤,將會(huì )造成難以估計的損失。因此,如何提高控制的可靠性是長(cháng)期以來(lái)的一個(gè)重要問(wèn)題。本文介紹了應用32位高性能單片機的一種實(shí)際開(kāi)發(fā)方案,同時(shí)重點(diǎn)討論了提高系統可靠性的設計和實(shí)現方法。
MC68HC376是Motorola公司推出的一種新型的32位高性能單片機,具有極強的數據處理、邏輯運算和信息存儲能力,且支持BDM(Background Debug Mode)模式。通過(guò)簡(jiǎn)易的專(zhuān)用電纜接口,可以直接對微控制器系統進(jìn)行仿真開(kāi)發(fā)和燒錄程序。此外,由于MC68HC376內部集成度高,外部擴展工作少,因此本身具有較強的抗干擾能力;同時(shí)通過(guò)外部硬件電路以及軟件的抗干擾設計,控制系統可以實(shí)現較高的可靠性。


圖1 MC68HC376應用系統結構框圖


圖2 系統監控電路


圖3 高穩定的濾波電路


圖4 閉鎖控制電路

控制系統的基本結構設計
MC68HC376的基本性能
MC68HC376的集成度高,其主要功能模塊包括32位CPU;系統集成模塊(SIM);4K備用RAM;8K片內ROM;10位隊列式的模數轉換器(QADC);隊列式串行通信模塊(QSM);可構造時(shí)鐘模塊(CTM4);時(shí)間處理單元(TPU);3.5K靜態(tài)TPURAM;CAN控制模塊(TOUCAN)。其基本性能如下:
(1) 24位地址總線(xiàn)、16位數據總線(xiàn)結構,支持32位數據操作。
(2) 2個(gè)8位雙功能I/O,1個(gè)7位雙功能I/O,16~44個(gè)模擬量輸入通道。
(3) 具有系統保護邏輯,同時(shí)可進(jìn)行時(shí)鐘監視和總線(xiàn)監視。
(4) 速度快,在4.194MHz的晶振下系統時(shí)鐘可達20.97MHz。
(5) 功耗低,具備低功率休眠功能。
(6) 支持高級語(yǔ)言和背景調試。
系統擴展的基本結構
MC68HC376內部集成度較高,因而其所需的外圍擴展工作較少?;窘Y構包括外部Flash ROM、RAM、模擬量輸入通道、數字量輸入通道、鍵盤(pán)、液晶顯示、RS-232電平轉換器MAX232和CAN控制器CAN250等,其結構框圖如圖1所示。本文重點(diǎn)討論系統的。

系統的可靠性設計
硬件可靠性設計
*微處理器硬件監控電路
本文采用監控器MAX705芯片構成外部監控電路,電路外部接線(xiàn)如圖2所示。該電路具有看門(mén)狗定時(shí)器、自動(dòng)和手動(dòng)復位功能,以及電壓門(mén)限監測功能。
由于在系統上電、掉電以及供電電壓不足時(shí), CPU和總線(xiàn)邏輯狀態(tài)不確定,因此應該將微控制器維持在復位的狀態(tài),以避免控制錯誤。對于MAX705,復位門(mén)限電壓為4.65V,故當Vcc低于4.65V時(shí),系統保持在復位狀態(tài)。同時(shí),將Vcc與PFI引腳相連,當Vcc低于1.25V時(shí),由PFO引腳輸出示警信號,若較長(cháng)時(shí)間處于電源示警狀態(tài),則可能出現電源故障,應該加以處理。
當系統正常運行時(shí),由MC68HC376的CTM4模塊的CTD4通道以小于1.6s的間隔定時(shí)向MAX705的WDI引腳提供脈沖;一旦系統不能正常運行而導致MAX705的WDI引腳失去脈沖時(shí),看門(mén)狗定時(shí)溢出使得/WDO為低,由于/WDO與手動(dòng)復位引腳/MR相連,因此/RESET腳向MC68HC376發(fā)出低有效的復位信號,使系統恢復到復位狀態(tài)。
*外部濾波電路
由于系統采用外部參考頻率源,為了提高系統頻率的穩定性和可靠性,所以需要在MC68HC376的XFC腳上接入濾波電路。該電路應盡可能降低XFC腳的泄露電流,以提高時(shí)鐘的穩定性和內部鎖相環(huán)的性能。圖3所示為高穩定的濾波電路。
*輸出驅動(dòng)電路可靠性設計
控制裝置通過(guò)對系統狀況進(jìn)行監測和分析后,向控制和調節的動(dòng)作單元提供控制信號。如果輸出信號受到干擾或者由于裝置故障而發(fā)出錯誤的控制信號,那么會(huì )因產(chǎn)生錯誤的調節控制動(dòng)作而使系統受到危害。因此,對于輸出驅動(dòng)電路應該加以相應的閉鎖控制和抗干擾設計,以提高控制的可靠性。
(1) 閉鎖控制電路
這里采用可再觸發(fā)雙/單穩態(tài)多諧振蕩器74LS123 來(lái)構成輸出閉鎖電路,電路接線(xiàn)如圖4所示。
將74LS123的A腳與MC68HC376的CTM4模塊的CTD4通道相連,由于在正常情況下CTD4定時(shí)提供脈沖,使得振蕩電路不能發(fā)生翻轉,此時(shí),/Q保持為1;如果裝置故障,使得CTD4失去脈沖,則振蕩電路使得/Q翻轉變?yōu)?,因此閉鎖信號變?yōu)?對輸出控制信號閉鎖。
同時(shí),與門(mén)4081的另一腳接至MC68HC376的TPU模塊的TCH15腳,直接由MC68HC376控制。在正常運行中,當需要輸出控制信號時(shí),置TCH15為1;當不需要輸出控制信號時(shí),置TCH15為0,則使閉鎖信號為0,閉鎖輸出部分,這樣就防止了由于干擾或其他原因造成的誤動(dòng)作。
(2) 控制信號輸出部分的抗干擾設計
當閉鎖信號開(kāi)通時(shí),輸出控制信號可能由于擾動(dòng)而出現偏差,因此應設計相應的輸出電路形式來(lái)減小擾動(dòng)的影響。輸出電路的形式如圖5所示(這里只畫(huà)出一路輸出信號)。
采用單線(xiàn)控制時(shí),一旦受到干擾就會(huì )使控制信號的電平發(fā)生變化,從而造成誤動(dòng)。這里采用“0,1”控制方式,用兩根臨近的控制線(xiàn),一根直接接至與門(mén)4081,另一根經(jīng)過(guò)非門(mén)4069接至4081,即當兩根控制線(xiàn)為“0,1”時(shí)輸出有效的電平信號1。這樣,當存在高擾動(dòng)或低擾動(dòng)使得控制線(xiàn)同時(shí)變?yōu)?或0時(shí),輸出無(wú)效的電平信號0。本系統中,以CTM4模塊的CPWM7引腳和閉鎖信號一起控制開(kāi)啟信號;開(kāi)啟信號與MC68HC376的控制信號一起控制動(dòng)作輸出信號。這樣就充分提高了輸出控制的可靠性。注意,單片機的I/O控制信號應使用上拉電阻。


圖5 控制輸出通道的抗干擾設計


圖6 掉電報警電路


表1 軟件看門(mén)狗溢出時(shí)間

*掉電報警電路
當系統的某一級工作電源掉電時(shí),控制裝置將不能正常運作,或者控制信號得不到正確執行。這時(shí)應該發(fā)出報警信號,掉電報警電路如圖6所示。
將各等級的工作電源通過(guò)關(guān)隔MOC8050串接起來(lái),一旦發(fā)生掉電的情況,掉電報警處的電平由高變?yōu)榈?,啟?dòng)報警裝置。
軟件可靠性設計
*軟件看門(mén)狗
在MC68HC376的SIM模塊中,有一個(gè)軟件看門(mén)狗,在監控程序中,可以開(kāi)啟軟件看門(mén)狗,配合提高系統的可靠性。該軟件看門(mén)狗由MC68HC376的系統保護控制寄存器(SYPCR)中的SWE位控制開(kāi)啟。當SWE位為1時(shí),看門(mén)狗啟動(dòng),開(kāi)始計時(shí)。
在裝置正常工作時(shí),程序應該在軟件看門(mén)狗溢出之前對軟件服務(wù)寄存器(SWSR)先后寫(xiě)入55H和AAH,當寫(xiě)入完成之后,軟件看門(mén)狗就會(huì )清除當前計時(shí)值,重新開(kāi)始計時(shí)。如果計時(shí)值溢出,則會(huì )使MC68HC376的/RESET引腳有效,系統復位。這樣,就可以在程序死循環(huán)或者由于其它原因而導致程序跳飛時(shí)自動(dòng)回復到復位狀態(tài)。
看門(mén)狗的溢出時(shí)間由系統頻率以及SYPCR寄存器的看門(mén)狗分頻位(SWP)和看門(mén)狗定時(shí)區(SWT[1:0])決定,如表1所示。選擇看門(mén)狗溢出時(shí)間時(shí)應該注意大小適中,若取值過(guò)大,則程序可能會(huì )較長(cháng)時(shí)間處于死循環(huán)或跳飛狀態(tài),從而導致控制錯誤或失效;若取值過(guò)小,則會(huì )增加程序負擔,降低裝置運行效率。
*程序的區域劃分和操作級別控制
CPU32可進(jìn)行兩種優(yōu)先級別的操作:監控級別和用戶(hù)級別。在監控級別下,CPU可以對所有的內部集成資源和所有的指令進(jìn)行操作,而在用戶(hù)級別下,它對一些寄存器和指令的訪(fǎng)問(wèn)會(huì )受到限制。在程序中有效地利用這種優(yōu)先級別會(huì )使內部資源和一些系統指令得到有控制的訪(fǎng)問(wèn),從而提高系統運行的可靠性。CPU32的狀態(tài)寄存器SR中的S位決定CPU的工作級別,當S=1時(shí)CPU處于監控級別;S=0時(shí)CPU處于用戶(hù)級別。
一般情況下,單片機的程序區和數據區在同一個(gè)物理地址空間。對于MC68HC376,可以通過(guò)功能碼FC[2:0]來(lái)擴展和劃分外部物理空間,對FC[2:0]實(shí)現外部解碼,可以使監控級程序、監控級數據、用戶(hù)級程序、用戶(hù)級數據分別使用各自獨立的地址空間。對于MC68HC376內部的各個(gè)模塊,可以通過(guò)其相應的結構寄存器中的SUPV位來(lái)確定該部分的通用寄存器所處的地址空間,當SUPV=1時(shí),將相關(guān)的寄存器放置于監控級數據地址空間,CPU只有在監控級別時(shí)才可對其訪(fǎng)問(wèn)和操作;當SUPV=0時(shí),將相關(guān)的寄存器放置于數據級數據地址空間,CPU可任意對其進(jìn)行訪(fǎng)問(wèn)和操作。這樣,整個(gè)程序結構性強,按級別控制訪(fǎng)問(wèn),增強了運行的可靠性。
*總線(xiàn)監視器
MC68HC376進(jìn)行內部總線(xiàn)操作時(shí),數據選通應答引腳(/DSACK)和自動(dòng)向量引腳(/AVEC)應該有相應的應答信號。SIM模塊中的總線(xiàn)監視器能對/DSACK和/AVEC信號進(jìn)行監視,當響應時(shí)間超過(guò)定時(shí)值就使總線(xiàn)錯誤(/BERR)引腳有效。程序應對/BERR的狀態(tài)進(jìn)行監視,以便及時(shí)對總線(xiàn)錯誤做出相應的處理。
總線(xiàn)監視器的定時(shí)值由系統保護控制寄存器(SYPCR)中的總線(xiàn)監視時(shí)間區(BMT[1:0])決定。BMT[1:0]=00時(shí),定時(shí)值為64個(gè)系統時(shí)鐘;BMT[1:0]=01時(shí),定時(shí)值為32個(gè)系統時(shí)鐘;BMT[1:0]=10時(shí),定時(shí)值為16個(gè)系統時(shí)鐘;BMT[1:0]=11時(shí),定時(shí)值為8個(gè)系統時(shí)鐘。程序員應根據實(shí)際的運行情況進(jìn)行選擇。
其它
其它一些提高可靠性的措施還包括有配置去耦電容;系統時(shí)鐘電路采用獨立電源VDDSYN供電,減少對MCU的干擾,而且MCU停電時(shí)系統時(shí)鐘仍可維持運行。布線(xiàn)時(shí),時(shí)鐘電路設置在電路板的中央;Standby RAM采用兩個(gè)電源VDD和VSTBY供電,正常運行時(shí)VDD供電,發(fā)生掉電時(shí),使其自動(dòng)切換到VSTBY供電。同時(shí),在軟件中,將堆棧及一些重要數據存放在Standby RAM有利于重要運行參數的保存。

結語(yǔ)
該方案采用高性能、集成度高、可靠性強的32位新型微控制器MC68HC376為核心,同時(shí)在硬件、軟件以及制板布線(xiàn)等方面采用多種提高系統可靠性的設計措施。應用該方案的數字式低頻低壓控制裝置RSA800,已通過(guò)電力工業(yè)部電力設備及儀表質(zhì)量檢驗測試中心的產(chǎn)品型式試驗?!?/P>

參考文獻
1 MC68336/376 user's manual. Motorola.Inc.1996
2 CPU32 reference manual. Motorola.Inc.1996
3 CTM configurable timer module reference manual. Motorola.Inc.1996
4 QADC queued analog-to-digital converter reference manual. Motorola.Inc.1996
5 SIM system integration module reference manual. Motorola.Inc.1996
6 QSM queued serial module reference manual. Motorola.Inc.1996
7 王幸之等. 單片機應用系統抗干擾技術(shù). 北京航空航天大學(xué)出版社. 1999
8王福瑞等. 單片微機測控系統設計大全[M]. 北京航空航天大學(xué)出版社. 1999
9李華等. MCS-51系列單片機實(shí)用接口技術(shù). 北京航空航天大學(xué)出版社. 1993



評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>