<acronym id="yw0ww"><small id="yw0ww"></small></acronym>
<acronym id="yw0ww"></acronym>
<acronym id="yw0ww"><center id="yw0ww"></center></acronym>

西電電院電磁兼容原理大作業.doc 13頁

  • 24
  • 0
  • 0
  • 約7.19千字
  • 2018-06-05 發布
文檔工具:
    1. 1、本文檔共13頁,可閱讀全部內容。
    2. 2、本文檔內容版權歸屬內容提供方,所產生的收益全部歸內容提供方所有。如果您對本文有版權爭議,可選擇認領,認領后既往收益都歸您。
    3. 3、本文檔由用戶上傳,本站不保證質量和數量令人滿意,可能有諸多瑕疵,付費之前,請仔細先通過免費閱讀內容等途徑辨別內容交易風險。如存在嚴重掛羊頭賣狗肉之情形,可聯系本站下載客服投訴處理。
    4. 文檔侵權舉報電話:19940600175。
    西電電院電磁兼容原理大作業.doc

    ——————————————————————————————————————————————— 西電電院電磁兼容原理大作業 電磁兼容原理與技術大作業 班級:021215 學號:0212 軟件抗干擾技術之單片機軟件抗干擾技術 隨著單片機應用的普及,采用單片機控制的產品與設備日益增多,而某些設備所在的工作環 境往往比較惡劣,干擾嚴重,這些干擾會嚴重影響設備的正常工作,使其不能正常運行。因此,為了保證設備能在實際應用中可靠地工作,必須要周密考慮和解決抗干擾的問題。本文對單片機應用中的軟件抗干擾技術作詳細介紹,文中所用單片機為MCS51。 一、數字量輸入輸出中的軟件抗干擾 數字量輸入過程中的干擾,其作用時間較短,因此在采集數字信號時,可多次重復采集,直到若干次采樣結果一致時才認為其有效。例如通過A 價轉換器測量各種模擬量時,如果有干擾作用于模擬信號上,就會使A/D 轉換結果偏離真實值。這時如果只采樣一次A/D 轉換結果,就無法知道其是否真實可靠,而必須進行多次采樣,得到一個A/D 轉換結果的數據系列,對這一系列數據再作各種數字濾波處理,最后才能得到一個可信度較高的結果值。本書第八章將給出各種具體的數字濾波算法及程序。如果對于同一個數據點經多次采樣后得到的信號值變化不定,說明此時的干擾特別嚴重,已經超出允許的范圍,應該立即停止采樣并給出報警信號。如果數字信號屬于開關量信號,如限位開關、操作按扭等,則不能用多次采樣取平均值的方法,而必須每次采樣結果絕對一致才行。這時可編寫一個采樣子程序,程序中設置有采樣成功和采樣失敗標志,如果對同一開關量信號進行若干次采樣,其采樣結果完全一致,則成功標志置位;否則失敗標志置位。后續程序可通過判別這些標志來決定程序的流向。 單片機控制的設備對外輸出的控制信號很多是以數字量的形式出現的,如各種顯示器、步進電機或電磁閥的驅動信號等。即使是以模擬量輸出,也是經過D/A 轉換而獲得的。單片機給出一個正確的數據后,由于外部干擾的作用有可能使輸出裝置得到一個被改變了的錯誤數據,從而使輸出裝置???生誤動作。對于數字量輸出軟件抗干擾最有效的方法是重復輸出同一個數據,重復周期應盡量短。這樣輸出裝置在得到一個被干擾的錯誤信號后,還來不及反應,一個正確的信號又來到了,從而可以防止誤動作的產生。在程序結構上,可將輸出過程安排在監控循環中.循環周期取得盡可能短,就能有效地防止輸出設備的錯誤動作。需要注意的是.經過這種安排后輸出功能是作為一個完整的模塊來執行的,與這種重復輸出措施相對應.軟件設計中還 必須為各個外部輸出設備建立一個輸出暫存單元,每次將應輸出的結果存入暫存單元中,然后再調用輸出功能模塊將各暫存單元的數據一一輸出,不管該數據是剛送來的,還是以前就有的。這樣可以讓每個外部設備不斷得到控制數據,從而使干擾造成的錯誤狀態不能得以維持。在執行輸出功能模塊時,應將有關輸出接口芯片的初始狀態也一并重新設置。因為由于干擾的作用可能使這些芯片的工作方式控制字發生變化,而不能實現正確的輸出功能,重新設置控制字就能避免這種錯誤.確保輸出功能的正確實現。 二、程序執行過程中的軟件抗于擾 前面述及的是針對輸入輸出通道而言的,干擾信號還未作用到CPU 本身,CPU 還能正確地執行各種抗干擾程序。如果干擾信號已經通過某種途徑作用到了CPU 上,則CPU 就不能按正常狀態執行程序,從而引起混亂,這就是通常所說的程序“跑飛”。程序“跑飛”后使其恢復正常的一個最簡單的方法是使CPU 復位,讓程序從頭開始重新運行。很多單片機控制的設備中都有設置人工復位電路。人工復位一般是在整個系統已經完全癱瘓,無計可施的情況下才不得已而為之的。因此在進行軟件設計時就要考慮到萬一程序“跑飛”,應讓其能夠自動恢復到正常狀態下運行。 程序“跑飛”后往往將一些操作數當作指令碼來執行,從而引起整個程序的混亂。采用“指令冗余”是使“跑飛”的程序恢復正常的一種措施。所謂“指令冗余”,就是在一些關鍵的地方人為地插入一些單字節的空操作指令NOP。當程序“跑飛”到某條單字節指令上時,就不會發生將操作數當成指令來執行的錯誤。對于MCS51 單片機來說,所有的指令都不會超過3 個字節,因此在某條指令前面插入兩條NOP 指令,則該條指令就不會被前面沖下來的失控程序拆散,而會得到完整的執行,從而使程序重新納入正常軌道。通常是在一些對程序的流向起關鍵作用的指令前面插入兩條NOP 指令。應該注意的是在一個程序中“指令冗余”不能使用過多,否則會降低程序的執行效率。 采用“指令冗余”使“跑飛”的程序恢復正常是有條件的,首先“跑飛”的程序必須落到程序區,其次必須執行到所設置的冗余指令。如果“跑飛”的程序落

    文檔評論(0)

    • 內容提供方:zhangningclb
    • 審核時間:2018-06-05
    • 審核編號:7023106136001130

    相關文檔

    5分彩官网