基于80C552單片機(jī)的多芯片同步復(fù)位電路
出處:微計算機(jī)信息 發(fā)布于:2007-09-24 08:50:43
摘要:首先分析了單片機(jī)應(yīng)用系統(tǒng)的一般復(fù)位電路,然后討論了多芯片系統(tǒng)對復(fù)位功能的要求,并針對80C552的特殊復(fù)位結(jié)構(gòu),詳細(xì)介紹了一種軟件、硬件相結(jié)合的同步復(fù)位電路。
關(guān)鍵詞:軟件復(fù)位;同步;可靠性
引言
復(fù)位是單片機(jī)的重要操作內(nèi)容,復(fù)位功能是系統(tǒng)正常運行的先決條件。在簡單的復(fù)位電路中,只要在微處理芯片的RESET引腳保持高電平達(dá)2個以上的機(jī)器周期,即可完成復(fù)位操作[1]??紤]到電源的穩(wěn)定時間,參數(shù)漂移,晶振穩(wěn)定時間以及復(fù)位的可靠性等因素,一般只要在RESET引腳出現(xiàn)10ms以上的高電平,就能使單片機(jī)有效復(fù)位。但是在單片機(jī)應(yīng)用系統(tǒng)中除單片機(jī)外,往往還有若干個外圍器件,如果外圍器件有復(fù)位要求,便形成了多個芯片的綜合復(fù)位系統(tǒng),這時,一般的復(fù)位電路就不能滿足使用要求,本文以常用芯片80C552為例,提出了一種多芯片同步復(fù)位電路設(shè)計方法,供讀者參考。
1.MSC-51系列的一般上電復(fù)位電路
|
圖1 一般復(fù)位電路 |
一般上電復(fù)位電路是利用RC充電原理實現(xiàn)的,如圖1(a)所示。初始上電,電容兩端等電位,則RESET為高電平,隨著對電容的充電,RESET端電位逐漸降低,直至低電平,復(fù)位過程結(jié)束。RC的選取應(yīng)使RESET端保持10ms的高電平,才能實現(xiàn)可靠復(fù)位。
圖1(a)雖然能實現(xiàn)上電復(fù)位功能,但對干擾沒有抵抗作用,不能保證復(fù)位電路任何時候都能可靠地工作。單片機(jī)復(fù)位端口的干擾主要來自電源的噪聲,盡管不會造成單片機(jī)的錯誤復(fù)位,但會引起某些內(nèi)部寄存器錯誤復(fù)位。因此要采取必要措施,消除干擾低復(fù)位功能的影響。
圖1(b)給出了一個改進(jìn)的電路。電阻R與電容C構(gòu)成一個低通濾波環(huán)節(jié),然后通過74LS14施密特電路接入單片機(jī)復(fù)位端,可以提高對串入復(fù)位端噪聲的抑制能力。電路中并聯(lián)二極管D的目的是在電源斷電后,電容能迅速放電。如果沒有二極管,那么在斷電窄脈沖的干擾下,由于電容C不能迅速將電荷放掉,待電源恢復(fù)時,由于電容C兩端仍維持較高電壓,單片機(jī)不能上電自動復(fù)位,導(dǎo)致程序運行失控。
2. 基于80C552的多芯片同步復(fù)位的硬件電路
2.1 80C552內(nèi)部特殊的復(fù)位結(jié)構(gòu)
|
圖 2 80C552片內(nèi)復(fù)位電路 |
80C552[4]芯片的內(nèi)部復(fù)位電路和MSC-51系列的其他芯片不同,它已經(jīng)將抑制噪聲干擾的史密特電路集成到芯片內(nèi)部,這樣就減少了外部連接的不可靠因素的影響,而且將上電復(fù)位用的充電電阻也集成到芯片內(nèi)部,簡化了外部復(fù)位電路的硬件設(shè)計,提高了上電復(fù)位的可靠性。
另外,80C552內(nèi)部有一個定時監(jiān)視器T3,可以產(chǎn)生內(nèi)部復(fù)位。如圖2所示。80C552的內(nèi)部復(fù)位過程是:將定時監(jiān)視器T3置為有效,當(dāng)程序運行出現(xiàn)異常時,定時器T3溢出,并輸出寬度為3個機(jī)器周期的窄脈沖到復(fù)位電路,這樣的脈沖足以完成復(fù)位操作,使系統(tǒng)盡快地從故障中恢復(fù)正常。80C552的外部復(fù)位與內(nèi)部復(fù)位是相互獨立的,當(dāng)允許內(nèi)部復(fù)位時,不管RST引腳是否為高電平,都能產(chǎn)生復(fù)位操作。
2.2 單獨采用80C552芯片的復(fù)位電路

|
圖 3 80C552外部復(fù)位電路
|
如果80C552的復(fù)位端不再連到其它芯片上,可以采取圖3(a)的方案,外部元件少,而且外部復(fù)位、內(nèi)部復(fù)位均可實現(xiàn),系統(tǒng)設(shè)計簡單,可靠性也高。
2.3 多芯片簡單復(fù)位電路
當(dāng)系統(tǒng)中有多個復(fù)位端連在一起時,不能采用圖3(a)的方案。因為電容的放電作用,使得T3輸出的窄脈沖無法在RST引腳出現(xiàn),這樣,當(dāng)產(chǎn)生內(nèi)部復(fù)位條件時,雖然80C552可以得到復(fù)位,但其它外圍芯片無法得到復(fù)位。這時應(yīng)采用圖3(b)的方案,電容不直接與RST引腳相連,在RST引腳就可以取到T3輸出的窄脈沖了。這樣,當(dāng)產(chǎn)生內(nèi)部復(fù)位條件時,整個系統(tǒng)都可以實現(xiàn)復(fù)位了。
但由于不同廠家生產(chǎn)的芯片結(jié)構(gòu)不同,對復(fù)位的要求也不同[5],況且多芯片的復(fù)位連接必然使復(fù)位線加長,這極易引起較大的分布電容,從而使外圍電路的復(fù)位過程滯后于單片機(jī),如果單片機(jī)復(fù)位結(jié)束后立即對外圍電路進(jìn)行初始化操作,往往會導(dǎo)致失敗。解決的方法是在程序的初始處加一些延時軟件,然后再對外圍芯片進(jìn)行初始化設(shè)置,可實現(xiàn)多個芯片的可靠同步。
2.4 基于80C552的多芯片同步復(fù)位電路設(shè)計圖
圖 4 多芯片綜合復(fù)位電路舉例

5 軟件復(fù)位流程圖
|
|
圖4是我們設(shè)計的遙控數(shù)據(jù)采集器的接收和轉(zhuǎn)發(fā)電路,紅外接收器接收發(fā)射器發(fā)過來的現(xiàn)場數(shù)據(jù)信息,送到89C2051進(jìn)行處理,然后通過I2C總線傳送到80C552,經(jīng)過80C552進(jìn)一步處理后,采用CAN總線傳送到數(shù)據(jù)處理中心.我們這里僅對它的復(fù)位電路進(jìn)行討論.
在這個系統(tǒng)中,除了80C552需要復(fù)位外,還有兩個芯片需要復(fù)位操作,一個是CAN控制器SJA1000,一個是單片機(jī)89C2051。其復(fù)位要求是:既要有上電自動復(fù)位功能,又要能通過定時監(jiān)視器T3實現(xiàn)“看門狗”復(fù)位功能;當(dāng)80C552復(fù)位時,89C2051和SJA1000也同時復(fù)位;當(dāng)89C2051或SJA1000出現(xiàn)問題時,通過80C552能夠分別對其進(jìn)行復(fù)位,而不影響80C552程序的正常運行。而且,89C2051和SJA1000兩個芯片的復(fù)位電平信號不同,前者為高電平復(fù)位,后者為低電平復(fù)位。按照上述功能要求,簡單的采用前面介紹的兩種復(fù)位電路均不可行。于是我們采取了一種軟件與硬件結(jié)合的方法,這種方法是,在硬件結(jié)構(gòu)上,芯片80C552的外部復(fù)位電路仍采用圖3(a)的結(jié)構(gòu),芯片89C2051和SJA1000的復(fù)位不直接與80C552的復(fù)位端相連,而是連到了80C552的兩根I/O口線P1.1和P1.3;在軟件設(shè)計上,通過在初始化程序中軟件模擬上電復(fù)位過程,就可以滿足系統(tǒng)的要求,其程序流程圖如圖5所示。
系統(tǒng)綜合復(fù)位過程是:系統(tǒng)上電后,80C552首先復(fù)位,開始運行軟件程序,在執(zhí)行初始化部分時,首先通過P1.1和P1.3實現(xiàn)對89C2051和SJA1000的復(fù)位操作,然后再運行其他程序。當(dāng)程序運行出現(xiàn)異常時,“看門狗”起作用,T3溢出產(chǎn)生內(nèi)部復(fù)位操作,程序重新開始,初始化部分也重新運行,89C2051和SJA1000隨之再復(fù)位。在程序正常運行過程中,如果與89C2051或SJA1000相關(guān)的模塊出現(xiàn)錯誤時,可以通過軟件判定是否出現(xiàn)異常,之后通過P1.1、P1.3端口分別對89C2051或SJA1000單獨進(jìn)行復(fù)位操作,此時80C552并不需要復(fù)位,程序正常運行。
3 結(jié)論:
本文作者創(chuàng)新點: 對于多芯片結(jié)構(gòu)提出了一種軟件與硬件相結(jié)合的方法建立同步復(fù)位系統(tǒng)。這種方法有利于提高系統(tǒng)設(shè)計的靈活性和可靠性。經(jīng)過長期使用的結(jié)果表明,這種采用軟件、硬件相結(jié)合的復(fù)位方法,具有硬件器件少、靈活、可靠性高的特點,完夠保證多個芯片的可靠同步。
參考文獻(xiàn):
[1]. 80C552 datasheet http://www.hbjingang.com/datasheet/80C552_103605.html.
[2]. 74LS14 datasheet http://www.hbjingang.com/datasheet/74LS14_1485322.html.
[3]. 89C2051 datasheet http://www.hbjingang.com/datasheet/89C2051_105398.html.
[4]. SJA1000 datasheet http://www.hbjingang.com/datasheet/SJA1000_609075.html.
版權(quán)與免責(zé)聲明
凡本網(wǎng)注明“出處:維庫電子市場網(wǎng)”的所有作品,版權(quán)均屬于維庫電子市場網(wǎng),轉(zhuǎn)載請必須注明維庫電子市場網(wǎng),http://www.hbjingang.com,違反者本網(wǎng)將追究相關(guān)法律責(zé)任。
本網(wǎng)轉(zhuǎn)載并注明自其它出處的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點或證實其內(nèi)容的真實性,不承擔(dān)此類作品侵權(quán)行為的直接責(zé)任及連帶責(zé)任。其他媒體、網(wǎng)站或個人從本網(wǎng)轉(zhuǎn)載時,必須保留本網(wǎng)注明的作品出處,并自負(fù)版權(quán)等法律責(zé)任。
如涉及作品內(nèi)容、版權(quán)等問題,請在作品發(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。
- 單片機(jī)技術(shù)特性與嵌入式開發(fā)實踐指南2026/1/7 10:00:02
- 單片機(jī)(MCU)與數(shù)字信號處理器(DSP)分類及選型技術(shù)指南2025/12/30 10:02:37
- 工業(yè)級DSP信號處理系統(tǒng):硬件適配與抗干擾工程方案2025/12/15 14:41:00
- HOLTEK推出HT32F65533G/733G內(nèi)建N/N預(yù)驅(qū)電機(jī)專用SoC單片機(jī)2025/11/26 14:11:41
- 什么是C51數(shù)據(jù)類型擴(kuò)充定義2025/10/27 13:59:22
- 高速PCB信號完整性(SI)設(shè)計核心實操規(guī)范
- 鎖相環(huán)(PLL)中的環(huán)路濾波器:參數(shù)計算與穩(wěn)定性分析
- MOSFET反向恢復(fù)特性對系統(tǒng)的影響
- 電源IC在惡劣環(huán)境中的防護(hù)設(shè)計
- 連接器耐腐蝕性能測試方法
- PCB電磁兼容(EMC)設(shè)計與干擾抑制核心實操規(guī)范
- 用于相位噪聲測量的低通濾波器設(shè)計與本振凈化技術(shù)
- MOSFET在高頻開關(guān)中的EMI問題
- 電源IC在便攜式設(shè)備中的設(shè)計要點
- 連接器結(jié)構(gòu)設(shè)計常見問題分析











