編碼調試的重點:常用斷點的基本介紹
發布時間:2015-10-09 責任編輯:susan
【導讀】斷點的種類很多,大體分為簡單斷點和複雜斷點兩種。不同的仿真器斷點種類也不同,一般都支持簡單的程序斷點,也是用戶經常使用的斷點。下麵介紹一下常用的斷點,希望對大家調試時有幫助。
高檔仿真器支持的斷點種類很多,如時間斷點、變bian量liang操cao作zuo斷duan點dian等deng。用yong戶hu通tong過guo操cao作zuo斷duan點dian可ke以yi控kong製zhi仿fang真zhen器qi在zai指zhi定ding的de位wei置zhi停ting止zhi運yun行xing,然ran後hou分fen析xi當dang前qian的de運yun行xing狀zhuang態tai,判pan斷duan程cheng序xu中zhong可ke能neng存cun在zai的de問wen題ti或huo調tiao試shi整zheng個ge係xi統tong的de硬ying件jian。

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

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

圖3 時間斷點
3. 變量操作斷點
變量操作斷點,當對某一個變量進行讀寫操作時,通過設置變量讀寫操作斷點,讓程序停止運行。
在Keil MDK環境下,進入仿真狀態之後,打開【Debug】菜單下的【Breakpoints】選項。在Breakpoints窗口即可定義變量操作斷點。
具體定義方法:在Expression內輸入變量的地址,然後選擇讀寫屬性,並正確設置字節範圍,最後點擊Define即可。例如,在地址0x20004000開始,16字節範圍內,定義讀寫斷點操作,具體設置方法如圖4所示。

圖4 定義讀寫操作斷點
在圖4中點擊Define之後,斷點即可設置成功,如圖5所示。圖5中共定義了4種類型的斷點。具體意義如下:
斷點1:表示在地址0x20004000開始,16字節範圍內,出現讀或寫的操作,則中斷。
斷點2:表示在地址0x20004100開始,8字節範圍內,出現讀的操作,則中斷。
斷點3:表示在地址0x20004200開始,4字節範圍內,出現寫的操作,則中斷。
斷點4:表示在地址0x20004300開始,1字節範圍內,出現讀或寫的操作,則中斷。

圖5 Breakpoints定義斷點窗口
注意:len表示在一個地址範圍內該斷點有效,len必須為1,2,4,8,16,32乘2遞增,同時地址必須處於len的起始位置。例如len=16,則地址必須為0x10字節對齊, 0x40000010為有效的起始地址,而地址0x40000018為無效,將被係統強行修正為0x40000010。
4. 小結
上述簡單介紹了三種斷點的設置方法。簡單斷點是工程師調試程序中使用最頻繁的,設置方法簡單。AK100Pro仿真器支持Flash無限製斷點,但是有些芯片受製於本身的限製,如LPC1766芯片,隻支持到最大6個硬件斷點。時間斷點,這個是某些芯片特有的,如Cotex-M3、8051內核的芯片。變量斷點,用於觀察變量的改變對程序的影響。學會靈活運用斷點,助您快速找出程序Bug。
小編推薦閱讀:
我愛快包——電子工程師的外快錢包
小編推薦閱讀:
我愛快包——電子工程師的外快錢包
特別推薦
- 噪聲中提取真值!瑞盟科技推出MSA2240電流檢測芯片賦能多元高端測量場景
- 10MHz高頻運行!氮矽科技發布集成驅動GaN芯片,助力電源能效再攀新高
- 失真度僅0.002%!力芯微推出超低內阻、超低失真4PST模擬開關
- 一“芯”雙電!聖邦微電子發布雙輸出電源芯片,簡化AFE與音頻設計
- 一機適配萬端:金升陽推出1200W可編程電源,賦能高端裝備製造
技術文章更多>>
- 大聯大世平集團首度亮相北京國際汽車展 攜手全球芯片夥伴打造智能車整合應用新典範
- 2026北京車展即將啟幕,高通攜手汽車生態“朋友圈”推動智能化體驗再升級
- 邊緣重構智慧城市:FPGA SoM 如何破解視頻係統 “重而慢”
- 如何使用工業級串行數字輸入來設計具有並行接口的數字輸入模塊
- 意法半導體將舉辦投資者會議探討低地球軌道(LEO)發展機遇
技術白皮書下載更多>>
- 車規與基於V2X的車輛協同主動避撞技術展望
- 數字隔離助力新能源汽車安全隔離的新挑戰
- 汽車模塊拋負載的解決方案
- 車用連接器的安全創新應用
- Melexis Actuators Business Unit
- Position / Current Sensors - Triaxis Hall
熱門搜索
接口IC
介質電容
介質諧振器
金屬膜電阻
晶體濾波器
晶體諧振器
晶體振蕩器
晶閘管
精密電阻
精密工具
景佑能源
聚合物電容
君耀電子
開發工具
開關
開關電源
開關電源電路
開關二極管
開關三極管
科通
可變電容
可調電感
可控矽
空心線圈
控製變壓器
控製模塊
藍牙
藍牙4.0
藍牙模塊
浪湧保護器


