性欧美丰满熟妇bbb,精品国产精品国内自产拍,亚洲精品日韩精品欧美精品,欧美日韩大片免费看一区二区三区

網站首頁

HOME

關于我們

ABOUT US

產品展示

PRODUCT

新聞中心

NEWS

成功案例

CASE

下載中心

DOWNLOAD

人才招聘

RECRUIT

在線留言

MESSAGE

聯系我們

CONTACT US

    技術文章
    聯系我們
    西安航普電子有限責任公司
    電話:029-81870107
    郵箱:hangpudianzi@163.com
    網址:www.028spc.com
    公司地址:西安市電子四路西京三號2號樓17層
     
     
    技術文章
    嵌入式系統調試中偶發性問題解決技巧
    更新時間:2017-09-07 12:52:22    點擊:1012次
    嵌入式系統軟件調試過程中,偶發性問題往往是一個令人頭痛的問題。這些問題的特點是:按一定概率出現,具有不確定性。因此,如果不采取一些技巧,往往不容易捕捉到問題現場。因為問題出現的特點是“稍縱即逝”。找不到問題出現的現場,則無法深入分析問題出現的機理原因,只能通過猜測問題原因并嘗試修改,然后觀察問題是否再出現,如果問題看起來不再出現則認為問題解決了,但是對于問題的實質原因,卻難以說出個究竟來。這種方法雖然可以避免問題,但是無法從根本解決問題,很可能導致問題復發。

      對付偶發性問題的基本策略是:

      (1)通過問題現象,初步判斷問題的出現點。

      (2)用多種手段,鎖定問題現場。

      (3)用驗證的方法放大問題點,使之由偶發性問題變為必發問題。

      (4)根據問題出現機理,提出解決對策

      (5)驗證解決對策的可靠性。

      下面詳細介紹三種具體的方法來鎖定偶發性問題:

      (1)  如果對實時性不高,那么可以采用文件、串口等記錄手段記錄程序運行過程中的各個狀態、關鍵變量的編號,便于發生問題后跟蹤分析。

      (2)  如果實時性要求很高,定義若干個公共數組變量,用于記錄在程序運行過程中各關鍵變量和現場數據,增加條件停止的程序,即所謂的陷阱程序。當發生問題后,程序跑到陷阱程序中  可以通過停止運行或把公共變量通過串口、屏幕輸出,觀察分析問題原因。

      (3)  ARM嵌入式系統中,如果程序出現突然復位或者死機時,如何找回現場?很簡單,只需要在啟動點上再設一個斷點,當程序復位或死機時,并停止運行時,觀察R13,然后 在內存中找到R13所指的程序段,反匯編之(AXD可以反匯編內存),就可以大概分析出哪個函數出問題。然后追溯到對應的C代碼上,在該C代碼之前若干行設置斷點,然后單步運行,可以觀察到問題再現。

      (4) 用多余的I/O口來跟蹤程序的運行狀態,方法是:當程序運行到某程序段時某輸出口為高電平,否則為低電平。用示波器觀察輸出口狀態,如果問題出現在高電平,則可以初步判定可能該段程序有問題,可以深入跟蹤之。這在前后臺系統中比較管用,在多任務系統中, 可以考慮用多引腳組合起來跟蹤。這種方法對于實時測量系統中跟蹤程序很好用。

    上一篇: 利用FPGA和USB總線的視頻圖像的采集與處理系統設計
    下一篇: HDL設計探究
    ?
    版權所有 ? 西安航普電子有限責任公司 未經許可

    嚴禁復制 陜ICP備08100257號 建站/推廣/維護/安全:西安利友科技