日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁(yè) > 單片機(jī) > 單片機(jī)
[導(dǎo)讀]應(yīng)用于工業(yè)過程控制和智能化儀器儀表的單片機(jī),由于現(xiàn)場(chǎng)條件往往十分惡劣,不可避免地會(huì)受到各種各樣的電磁干擾。當(dāng)串入系統(tǒng)的干擾作用于單片機(jī)內(nèi)部的 CPU部件時(shí),后果更加嚴(yán)重,將導(dǎo)致系統(tǒng)失控。最典型的失控故障是

應(yīng)用于工業(yè)過程控制和智能化儀器儀表的單片機(jī),由于現(xiàn)場(chǎng)條件往往十分惡劣,不可避免地會(huì)受到各種各樣的電磁干擾。當(dāng)串入系統(tǒng)的干擾作用于單片機(jī)內(nèi)部的 CPU部件時(shí),后果更加嚴(yán)重,將導(dǎo)致系統(tǒng)失控。最典型的失控故障是破壞程序計(jì)數(shù)器PC的狀態(tài),導(dǎo)致程序在地址空間內(nèi)“亂飛”,或者陷入“死循環(huán)”。因此,盡可能早地發(fā)現(xiàn)程序失控,并采取相應(yīng)的補(bǔ)救措施,是單片機(jī)應(yīng)用系統(tǒng)抗干擾設(shè)計(jì)的重要內(nèi)容。

使程序從“亂飛”狀態(tài)納入正軌的方法稱為程序攔截技術(shù),包括指令冗余技術(shù)、軟件陷阱技術(shù)等。使程序擺脫“死循環(huán)”,通常多采用硬件電路實(shí)現(xiàn)的監(jiān)視技術(shù),又稱“看門狗”技術(shù)(Watchdog)。常見的硬件 “看門狗”電路有單穩(wěn)態(tài)型“看門狗”電路、計(jì)數(shù)器型“看門狗”電路、微處理器監(jiān)控專用芯片等。上述的抗干擾方法可參閱有關(guān)資料文獻(xiàn)。本文將討論由軟件實(shí)現(xiàn)的“看門狗”技術(shù)。

由硬件電路實(shí)現(xiàn)的“看門狗”技術(shù),可以有效地克服主程序或中斷服務(wù)程序由于陷入“死循環(huán)”而帶來的不良后果。但在工業(yè)應(yīng)用當(dāng)中,嚴(yán)重的干擾有時(shí)會(huì)破壞中斷方式控制字,導(dǎo)致中斷關(guān)閉,這時(shí)一般的硬件“看門狗”將不能使中斷恢復(fù)正常。依靠軟件進(jìn)行多重監(jiān)視,可以彌補(bǔ)上述不足。

軟件“看門狗”技術(shù)的基本思路是:在主程序中對(duì)中斷服務(wù)程序的運(yùn)行進(jìn)行監(jiān)視;在中斷服務(wù)程序中對(duì)主程序的運(yùn)行進(jìn)行監(jiān)視;采用兩個(gè)中斷實(shí)施相互監(jiān)視,稱之謂軟件三重監(jiān)視抗干擾技術(shù)。從概率觀點(diǎn),這種相互依存,相互制約的抗干擾措施,將使系統(tǒng)的可靠性大大提高。

本文以MCS—51單片機(jī)為例,說明軟件三重監(jiān)視的基本原理。系統(tǒng)軟件包括主程序、T0定時(shí)中斷子程序和T1定時(shí)中斷子程序3部分,將T0設(shè)計(jì)成高級(jí)中斷,T1設(shè)計(jì)成低級(jí)中斷,從而形成中斷嵌套。

1 主程序監(jiān)視過程設(shè)計(jì)  

主程序流程如圖1—1所示。主程序完成系統(tǒng)測(cè)控功能的同時(shí),還要監(jiān)視T0中斷服務(wù)程序因干擾而引起的中斷關(guān)閉故障。A0為T0中斷服務(wù)程序運(yùn)行狀態(tài)的觀測(cè)單元,T0每發(fā)生一次中斷,A0計(jì)數(shù)單元少一次中斷(T0定時(shí)溢出時(shí)間小于測(cè)控功能模塊運(yùn)行時(shí)間),引起A0的變化。在測(cè)控功能模塊的出口處,將A0值與E0值進(jìn)行比較,以判斷A0是否發(fā)生變化。若A0發(fā)生變化,說明T0中斷運(yùn)行正常;若A0不變化,說明T0中斷關(guān)閉,則轉(zhuǎn)到程序入口0000H處,進(jìn)行出錯(cuò)處理后,程序恢復(fù)正常運(yùn)行。

設(shè)A0、E0、M計(jì)數(shù)單元分別為內(nèi)RAM中的30H、40H和50H單元,監(jiān)視程序如下:
        loop1:MOV   50H, #00H;  清M單元
                      MOV   40H,   30H ;暫存A0單元 
               …;           測(cè)控功能模塊
           CLR    C
           MOV    A,     30H
           SUBB   A,     40H; 判斷A0變化
           JZ     loop
           MOV    30H,   #00H
         LJMP   loop1
  loop:LJMP 0000H

2 T1中斷服務(wù)程序監(jiān)視過程設(shè)計(jì)  

T1中斷程序流程如圖2—1所示。T1中斷服務(wù)程序在完成特定測(cè)控功能的同時(shí),還要監(jiān)視主程序的運(yùn)行狀態(tài)。在中斷服務(wù)程序中設(shè)置一個(gè)主程序運(yùn)行計(jì)時(shí)器M1,T1每中斷一次,M便自行加1。M中的數(shù)值與T1定時(shí)溢出時(shí)間之積表示時(shí)間值。若由M表示的時(shí)間值大于主程序的運(yùn)行時(shí)間,說明主程序因干擾而陷入了“死循環(huán)”,T1中斷服務(wù)程序便修改斷點(diǎn)地址,返回0000H,進(jìn)行出錯(cuò)處理。若M不大于主程序運(yùn)行時(shí)間,說明主程序運(yùn)行正常,中斷服務(wù)程序也正常返回。M單元在系統(tǒng)主程序運(yùn)行中循環(huán)清“0”。

設(shè)單片機(jī)晶振頻率為6MHz,T1以工作方式1產(chǎn)生2ms的定時(shí)中斷,則T1的計(jì)數(shù)初值為:
(216-N)×2×10-6=2×10-3
  N=64536D=FC18H

若圖1—1中主程序的最大循環(huán)時(shí)間為200ms,則圖2—1中的T取值應(yīng)不小于64H,可取68H。A1為T1中斷程序運(yùn)行狀態(tài)監(jiān)測(cè)單元,取內(nèi)RAM 31H單元,M仍取50H單元,60H、61H為暫存單元,則T1中斷監(jiān)視程序如下: 
        PUSH   PSW            ;保護(hù)現(xiàn)場(chǎng)
    PUSH    ACC
    MOV     TH1,  #0FCH   ??;T1置初值
    MOV     TL1,  #18H
    INC     31H              ;A1單元加1
    INC     50H                  ;M單元加1
    CLR      C
    MOV      A,#68H
    SUBB     A,50H              ;T≥M?
    JC       loop 
      …                  ??;中斷測(cè)控程序
    POP     ACC                  ;恢復(fù)現(xiàn)場(chǎng)
    POP     PSW
RETI                        ;返回
loop:POP  ACC            ;恢復(fù)現(xiàn)場(chǎng)
    POP     PSW
    POP     60H                  ;原斷點(diǎn)彈出
    POP     61H
    MOV     60H,#00H           ;斷點(diǎn)修改為0000H
    MOV     61H,#00H
    PUSH    60H
    PUSH    61H
  RETI    ;返回

3 T0中斷服務(wù)程序監(jiān)視過程設(shè)計(jì)  

T0中斷程序流程如圖3—1所示。T0中斷的功能是監(jiān)視T1中斷服務(wù)程序的運(yùn)行狀態(tài)。由于T0中斷服務(wù)程序較短,因干擾而引起的“死循環(huán)”的幾率很小,重點(diǎn)考慮中斷關(guān)閉故障。圖3—1中A1、B1為T1中斷運(yùn)行狀態(tài)觀測(cè)單元。A1的初值為00H,T1每中斷一次,A1便加1,如圖2—1所示。T0中斷服務(wù)程序中若檢測(cè)到A1>0,說明T1中斷正常;若A1=0,則B1單元加1(B1的初值為00H),若B1的累加值大于Q,說明T1中斷失效,失效時(shí)間為T0定時(shí)溢出時(shí)間與Q值之積。例如:T0的定時(shí)溢出時(shí)間為4ms,T1的定時(shí)溢出時(shí)間為2 ms,當(dāng)Q=5時(shí),說明允許T1的失效時(shí)間為20 ms,在這樣長(zhǎng)的時(shí)間內(nèi),T1并沒有發(fā)生中斷,說明T1中斷發(fā)生了故障。由于T0中斷級(jí)別高于T1中斷級(jí)別,所以T1的任何故障(如死循環(huán)、中斷關(guān)閉)都會(huì)由T0檢測(cè)出來。T0中斷服務(wù)程序一般很短,發(fā)生“死循環(huán)”的幾率很小。

設(shè)單片機(jī)晶振頻率為6MHz,T0以工作方式1產(chǎn)生4 ms的定時(shí)中斷,則T0的計(jì)數(shù)初值為:
(216-N)×2×10-6=4×10-3 
  N=63536D=F830H

設(shè)計(jì)數(shù)單元A0、A1、B1分別為內(nèi)RAM 30H、31H、32H,Q=5,60H、61H為暫存單元,則T0中斷監(jiān)視程序如下: 
    PUSH   PSW     ;保護(hù)現(xiàn)場(chǎng)
    PUSH      ACC
    MOV       TH0,#0F8H  ;設(shè)T0初值
    MOV       TL0,#30H
    INC       30H          ;A0加1
    MOV       A,31H       ;A1單元判0
    JZ        loop1
    CLR        A       ;清A1、B1單元
    MOV       31H,A
    MOV       32H,A
    loop0:POP   ACC         ;恢復(fù)現(xiàn)場(chǎng)
           POP   PSW
         RETI             ;返回
    loop1:INC   32H         ;B1加1
           CLR    C
           MOV     A         ,32H;B1≥Q?
           SUBB    A,#05H    
           JC      loop0
           POP    ACC    ;恢復(fù)現(xiàn)場(chǎng)
           POP     PSW
           POP     60H        ;原斷點(diǎn)彈出
           POP     61H
           MOV     60H,#00H ;修改斷點(diǎn)0000H
           MOV     61H,#00H
           PUSH    60H
           PUSH    61H
         RETI

當(dāng)系統(tǒng)受到干擾后,主程序可能發(fā)生“死循環(huán)”,中斷服務(wù)程序也可能陷入“死循環(huán)”,或因中斷方式字的破壞而關(guān)閉中斷。主程序的“死循環(huán)”可由T1中斷服務(wù)程序監(jiān)視;T1中斷服務(wù)程序的“死循環(huán)”和中斷關(guān)閉故障由T0中斷服務(wù)程序監(jiān)視;T0的中斷故障可由主程序監(jiān)視。由于采取了三重軟件監(jiān)測(cè)方法,大大提高了系統(tǒng)運(yùn)行的可靠性。

[參考文獻(xiàn)]
[1] 何立民.單片機(jī)應(yīng)用技術(shù)選編[M].北京航空航天大學(xué)出版社,1998,8.
[2] 王幸之.8051/8098單片機(jī)原理及接口設(shè)計(jì)[M].兵器工業(yè)出版社,1998,1.
 

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

特朗普集團(tuán)近日取消了其新推出的T1智能手機(jī)“將在美國(guó)制造”的宣傳標(biāo)語(yǔ),此舉源于外界對(duì)這款手機(jī)能否以當(dāng)前定價(jià)在美國(guó)本土生產(chǎn)的質(zhì)疑。

關(guān)鍵字: 特朗普 蘋果 AI

美國(guó)總統(tǒng)特朗普在公開場(chǎng)合表示,他已要求蘋果公司CEO蒂姆·庫(kù)克停止在印度建廠,矛頭直指該公司生產(chǎn)多元化的計(jì)劃。

關(guān)鍵字: 特朗普 蘋果 AI

4月10日消息,據(jù)媒體報(bào)道,美國(guó)總統(tǒng)特朗普宣布,美國(guó)對(duì)部分貿(mào)易伙伴暫停90天執(zhí)行新關(guān)稅政策,同時(shí)對(duì)中國(guó)的關(guān)稅提高到125%,該消息公布后蘋果股價(jià)飆升了15%。這次反彈使蘋果市值增加了4000多億美元,目前蘋果市值接近3萬(wàn)...

關(guān)鍵字: 特朗普 AI 人工智能 特斯拉

3月25日消息,據(jù)報(bào)道,當(dāng)?shù)貢r(shí)間3月20日,美國(guó)總統(tǒng)特朗普在社交媒體平臺(tái)“真實(shí)社交”上發(fā)文寫道:“那些被抓到破壞特斯拉的人,將有很大可能被判入獄長(zhǎng)達(dá)20年,這包括資助(破壞特斯拉汽車)者,我們正在尋找你。”

關(guān)鍵字: 特朗普 AI 人工智能 特斯拉

1月22日消息,剛剛,新任美國(guó)總統(tǒng)特朗普放出重磅消息,將全力支持美國(guó)AI發(fā)展。

關(guān)鍵字: 特朗普 AI 人工智能

特朗普先生有兩件事一定會(huì)載入史冊(cè),一個(gè)是筑墻,一個(gè)是挖坑。在美墨邊境筑墻的口號(hào)確保邊境安全,降低因非法移民引起的犯罪率過高問題;在中美科技產(chǎn)業(yè)之間挖坑的口號(hào)也是安全,美國(guó)企業(yè)不得使用對(duì)美國(guó)國(guó)家安全構(gòu)成威脅的電信設(shè)備,總統(tǒng)...

關(guān)鍵字: 特朗普 孤立主義 科技產(chǎn)業(yè)

據(jù)路透社1月17日消息顯示,知情人士透露,特朗普已通知英特爾、鎧俠在內(nèi)的幾家華為供應(yīng)商,將要撤銷其對(duì)華為的出貨的部分許可證,同時(shí)將拒絕其他數(shù)十個(gè)向華為供貨的申請(qǐng)。據(jù)透露,共有4家公司的8份許可被撤銷。另外,相關(guān)公司收到撤...

關(guān)鍵字: 華為 芯片 特朗普

曾在2018年時(shí)被美國(guó)總統(tǒng)特朗普稱作“世界第八奇跡”的富士康集團(tuán)在美國(guó)威斯康星州投資建設(shè)的LCD顯示屏工廠項(xiàng)目,如今卻因?yàn)楦皇靠祵㈨?xiàng)目大幅縮水并拒絕簽訂新的合同而陷入了僵局。這也導(dǎo)致富士康無(wú)法從當(dāng)?shù)卣抢铽@得約40億美...

關(guān)鍵字: 特朗普 富士康

今年5月,因自己發(fā)布的推文被貼上“無(wú)確鑿依據(jù)”標(biāo)簽而與推特發(fā)生激烈爭(zhēng)執(zhí)后,美國(guó)總統(tǒng)特朗普簽署了一項(xiàng)行政令,下令要求重審《通信規(guī)范法》第230條。

關(guān)鍵字: 谷歌 facebook 特朗普

眾所周知,寄往白宮的所有郵件在到達(dá)白宮之前都會(huì)在他地進(jìn)行分類和篩選。9月19日,根據(jù)美國(guó)相關(guān)執(zhí)法官員的通報(bào),本周早些時(shí)候,執(zhí)法人員截獲了一個(gè)寄給特朗普總統(tǒng)的包裹,該包裹內(nèi)包含蓖麻毒蛋白。

關(guān)鍵字: 美國(guó) 白宮 特朗普
關(guān)閉