<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 測試測量 > 設計應用 > 編碼不能沒調試,調試不能沒斷點

          編碼不能沒調試,調試不能沒斷點

          作者:周立功致遠電子 時間:2015-10-05 來源:電子產品世界 收藏

            的種類很多,大體分為簡單和復雜兩種。不同的仿真器斷點種類也不同,一般都支持簡單的程序斷點,也是用戶經常使用的斷點。高檔仿真器支持的斷點種類很多,如時間斷點、變量操作斷點等。用戶通過操作斷點可以控制仿真器在指定的位置停止運行,然后分析當前的運行狀態(tài),判斷程序中可能存在的問題或調試整個系統(tǒng)的硬件。下面介紹一下常用的斷點,希望對大家調試時有幫助。

          本文引用地址:http://www.ex-cimer.com/article/280913.htm

            

           

            圖1 斷點調試

            1. 使用鼠標操作設置、刪除斷點

            在程序窗口(包括C語言、匯編和反匯編窗口)中, 用鼠標雙擊需要設置斷點的程序行,則在窗口左邊的狀態(tài)條中出現(xiàn)紅色的斷點標志如圖2所示,完成設置斷點操作。再次用鼠標雙擊該程序行,窗口左邊的紅色斷點標志消失,則為刪除斷點操作。

            

           

            圖2 簡單斷點

            2. 時間斷點

            時間斷點功能,既運行時間與時間斷點設置的時間相同時,程序停止運行。如圖3所示,在運行時間的下面可以看到Tbreak,這就是時間斷點。用戶可以根據(jù)實際觀察需要,設置Tbreak的值,注意單位是ns。當程序運行時間累積到Tbreak的值時,程序停止運行。

            

           

            圖3 時間斷點

            3. 變量操作斷點

            變量操作斷點,當對某一個變量進行讀寫操作時,通過設置變量讀寫操作斷點,讓程序停止運行。

            在Keil MDK環(huán)境下,進入仿真狀態(tài)之后,打開【Debug】菜單下的【Breakpoints】選項。在Breakpoints窗口即可定義變量操作斷點。

            具體定義方法:在Expression內輸入變量的地址,然后選擇讀寫屬性,并正確設置字節(jié)范圍,最后點擊Define即可。例如,在地址0x20004000開始,16字節(jié)范圍內,定義讀寫斷點操作,具體設置方法如圖4所示。

            

           

            圖4 定義讀寫操作斷點

            在圖4中點擊Define之后,斷點即可設置成功,如圖5所示。圖5中共定義了4種類型的斷點。具體意義如下:

            ? 斷點1:表示在地址0x20004000開始,16字節(jié)范圍內,出現(xiàn)讀或寫的操作,則中斷。

            ? 斷點2:表示在地址0x20004100開始,8字節(jié)范圍內,出現(xiàn)讀的操作,則中斷。

            ? 斷點3:表示在地址0x20004200開始,4字節(jié)范圍內,出現(xiàn)寫的操作,則中斷。

            ? 斷點4:表示在地址0x20004300開始,1字節(jié)范圍內,出現(xiàn)讀或寫的操作,則中斷。

            

           

            圖5 Breakpoints定義斷點窗口

            注意:len表示在一個地址范圍內該斷點有效,len必須為1,2,4,8,16,32乘2遞增,同時地址必須處于len的起始位置。例如len=16,則地址必須為0x10字節(jié)對齊, 0x40000010為有效的起始地址,而地址0x40000018為無效,將被系統(tǒng)強行修正為0x40000010。

            4. 小結

            上述簡單介紹了三種斷點的設置方法。簡單斷點是工程師調試程序中使用最頻繁的,設置方法簡單。AK100Pro仿真器支持Flash無限制斷點,但是有些芯片受制于本身的限制,如LPC1766芯片,只支持到最大6個硬件斷點。時間斷點,這個是某些芯片特有的,如Cotex-M3、8051內核的芯片。變量斷點,用于觀察變量的改變對程序的影響。學會靈活運用斷點,助您快速找出程序Bug。

          c語言相關文章:c語言教程




          關鍵詞: 編碼 斷點

          評論


          相關推薦

          技術專區(qū)

          關閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();