一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Keil設(shè)置斷點(diǎn)的高級(jí)用法

Q4MP_gh_c472c21 ? 來(lái)源:嵌入式技術(shù)開發(fā) ? 作者:嵌入式技術(shù)開發(fā) ? 2022-05-10 14:17 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

在線調(diào)試程序時(shí),打斷點(diǎn)是非常有效的一種方式,配合單步調(diào)試,可以快速定位問(wèn)題。但有的時(shí)候,手動(dòng)打斷點(diǎn)用起來(lái)不是那么方便。 比如,想要在一個(gè)循環(huán)的第N次停下來(lái),如果手動(dòng)打斷點(diǎn),那就要不停的點(diǎn)擊單步運(yùn)行,直到循環(huán)運(yùn)行到第N次。 再比如,程序運(yùn)行過(guò)程中變量不知何時(shí)被改變了,又不好定位,手動(dòng)打斷點(diǎn)就不知打在哪里。這時(shí)就要用到一些斷點(diǎn)的高級(jí)用法。

1、設(shè)置斷點(diǎn)的運(yùn)行次數(shù)

以下面程序?yàn)槔谘h(huán)的第十次將程序停止。首先在循環(huán)中手動(dòng)打一個(gè)斷點(diǎn):

c9379c7e-d016-11ec-bce3-dac502259ad0.png

點(diǎn)擊Debug菜單,選擇BreakPoints:

c94f577e-d016-11ec-bce3-dac502259ad0.png

彈出下面菜單:

c9750d02-d016-11ec-bce3-dac502259ad0.png

最上面的斷點(diǎn)是手動(dòng)打的,雙擊該斷點(diǎn),會(huì)看到Expression會(huì)顯示該斷點(diǎn)的信息,修改Count的值為10,點(diǎn)擊Define,然后關(guān)閉該窗口。這里說(shuō)明一下:Expression為表達(dá)式,即斷點(diǎn)的條件,可以看到,手動(dòng)設(shè)置的斷點(diǎn)結(jié)尾為123,表示在main.c文件的123行。這里支持基本的>、<、==、!=等操作符。Count為次數(shù),表示運(yùn)行多少次中斷一次,手動(dòng)設(shè)置的斷點(diǎn)Count都是1。Command為命令,表示到達(dá)該斷點(diǎn)時(shí)執(zhí)行的命令,默認(rèn)為空。 按照上面的設(shè)置,運(yùn)行程序??梢钥吹?,程序運(yùn)行到斷點(diǎn)時(shí)沒(méi)有馬上停下,而是在第10次才停下來(lái): ?

c9940f7c-d016-11ec-bce3-dac502259ad0.png

2、變量匹配斷點(diǎn)

將變量添加到Watch窗口,右擊選擇Set Access BreakPoint at xxx。還是彈出剛才的菜單:

c9a92f92-d016-11ec-bce3-dac502259ad0.png

c9bd850a-d016-11ec-bce3-dac502259ad0.png

勾選Access方式Read或Write,設(shè)置Count值,點(diǎn)擊Define。這里選擇Write,Count值為4,表示該變量第四次被寫入時(shí)程序會(huì)停止。

3、變量條件匹配斷點(diǎn)

跟上一步一樣,在Watch窗口,右擊變量選擇Set Access BreakPoint at xxx。勾選Access方式Read或Write,刪除Expression下原來(lái)的內(nèi)容,填寫表達(dá)式“AD== 10”。點(diǎn)擊Define。這樣當(dāng)AD==10時(shí)程序會(huì)停止。

c9da0c7a-d016-11ec-bce3-dac502259ad0.png

4、打印信息

選擇一個(gè)手動(dòng)打好的斷點(diǎn),然后在Command下填寫printf(),則在運(yùn)行到斷點(diǎn)處時(shí),程序不會(huì)停止,而是在Command窗口打印設(shè)置的信息。

c9f67cac-d016-11ec-bce3-dac502259ad0.png

ca0cac16-d016-11ec-bce3-dac502259ad0.png

5、條件匹配打印信息

還可以將3和4組合使用,如下:

ca22543a-d016-11ec-bce3-dac502259ad0.png

則AD==10時(shí),程序不中斷,在Command窗口打印信息。 斷點(diǎn)的高級(jí)用法還有很多種,不同的表達(dá)式,不同的指令等,具體可查閱Keil的使用幫助文檔。

ca4071cc-d016-11ec-bce3-dac502259ad0.png

END

審核編輯 :李倩

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • keil
    +關(guān)注

    關(guān)注

    69

    文章

    1223

    瀏覽量

    169565
  • 變量
    +關(guān)注

    關(guān)注

    0

    文章

    614

    瀏覽量

    28944
  • 斷點(diǎn)
    +關(guān)注

    關(guān)注

    0

    文章

    12

    瀏覽量

    7914

原文標(biāo)題:Keil調(diào)試時(shí)設(shè)置斷點(diǎn)的高級(jí)用法

文章出處:【微信號(hào):gh_c472c2199c88,微信公眾號(hào):嵌入式微處理器】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    邊緣計(jì)算網(wǎng)關(guān)支持斷點(diǎn)續(xù)傳嗎

    邊緣計(jì)算網(wǎng)關(guān)通常支持斷點(diǎn)續(xù)傳功能 。斷點(diǎn)續(xù)傳功能是邊緣計(jì)算網(wǎng)關(guān)的重要特性之一,它能夠在網(wǎng)絡(luò)中斷或設(shè)備故障時(shí),將采集到的數(shù)據(jù)暫存在本地存儲(chǔ)空間中,待網(wǎng)絡(luò)恢復(fù)后再將數(shù)據(jù)上傳至云平臺(tái),從而保證數(shù)據(jù)的完整性
    的頭像 發(fā)表于 05-27 15:25 ?182次閱讀

    Keil C51與Proteus聯(lián)調(diào),為何在Keil設(shè)置斷點(diǎn)失效?

    Keil5 C51+Proteus 8.17 sp5環(huán)境,在調(diào)試時(shí)能夠在反匯編窗口設(shè)置斷點(diǎn),并能正常調(diào)試,在C源代碼窗口設(shè)置斷點(diǎn)變成\"!
    發(fā)表于 04-02 10:08

    STM32CubeIDE編譯設(shè)置是否有像keil一樣有編譯后執(zhí)行Bat腳本的功能和設(shè)置?

    STM32CubeIDE編譯設(shè)置問(wèn)題,是否有像keil一樣有編譯后執(zhí)行Bat腳本的功能和設(shè)置?或者有相關(guān)的腳本和插件?
    發(fā)表于 03-14 15:59

    HarmonyOS NEXT 原生應(yīng)用/元服務(wù)-ArkTS代碼調(diào)試使用斷點(diǎn)

    光標(biāo)置于該行上并按Ctrl + F8(macOS為Command+F8)。 當(dāng)您設(shè)置斷點(diǎn)時(shí),相應(yīng)的代碼行旁邊會(huì)出現(xiàn)一個(gè)紅點(diǎn),如圖。 在設(shè)置斷點(diǎn)紅點(diǎn)處,單擊鼠標(biāo)右鍵,在Conditio
    發(fā)表于 03-04 17:15

    hyper 網(wǎng)絡(luò)設(shè)置,Hyper-V網(wǎng)絡(luò)設(shè)置高級(jí)網(wǎng)絡(luò)配置技巧

    設(shè)置高級(jí)網(wǎng)絡(luò)配置技巧。 ? ?Hyper-V網(wǎng)絡(luò)設(shè)置高級(jí)網(wǎng)絡(luò)配置技巧 ? ?在虛擬化環(huán)境中,網(wǎng)絡(luò)配置是確保虛擬機(jī)高效通信的關(guān)鍵環(huán)節(jié)。Hyper-V作為微軟的虛擬化平臺(tái),提供了強(qiáng)大的
    的頭像 發(fā)表于 02-10 10:36 ?1045次閱讀
    hyper 網(wǎng)絡(luò)<b class='flag-5'>設(shè)置</b>,Hyper-V網(wǎng)絡(luò)<b class='flag-5'>設(shè)置</b>:<b class='flag-5'>高級(jí)</b>網(wǎng)絡(luò)配置技巧

    hyper-v 配置,Hyper-V配置:性能優(yōu)化與高級(jí)設(shè)置

    Hyper-V配置:性能優(yōu)化與高級(jí)設(shè)置。 ? ?Hyper-V配置:性能優(yōu)化與高級(jí)設(shè)置 ? ?在虛擬化環(huán)境中,Hyper-V作為一款強(qiáng)大的虛擬化平臺(tái),通過(guò)合理的配置和優(yōu)化,可以顯著提升
    的頭像 發(fā)表于 02-08 09:49 ?1210次閱讀
    hyper-v 配置,Hyper-V配置:性能優(yōu)化與<b class='flag-5'>高級(jí)</b><b class='flag-5'>設(shè)置</b>

    keil在Debug的高級(jí)用法

    第一節(jié)軟件說(shuō)明Keil提供了包括C編譯器、宏匯編、鏈接器、庫(kù)管理和一個(gè)功能強(qiáng)大的仿真調(diào)試器等在內(nèi)的完整開發(fā)方案,通過(guò)一個(gè)集成開發(fā)環(huán)境(μVision)將這些部分組合在一起。目前軟件對(duì)中文的支持不友好
    的頭像 發(fā)表于 12-26 21:01 ?1930次閱讀
    <b class='flag-5'>keil</b>在Debug的<b class='flag-5'>高級(jí)</b><b class='flag-5'>用法</b>

    網(wǎng)關(guān)斷點(diǎn)續(xù)傳可以實(shí)現(xiàn)什么功能

    在數(shù)字化時(shí)代,數(shù)據(jù)傳輸?shù)男屎头€(wěn)定性成為了衡量信息系統(tǒng)性能的重要指標(biāo)之一。隨著云計(jì)算、大數(shù)據(jù)、物聯(lián)網(wǎng)等技術(shù)的飛速發(fā)展,數(shù)據(jù)量的爆炸性增長(zhǎng)對(duì)數(shù)據(jù)傳輸技術(shù)提出了更高要求。在這樣的背景下,網(wǎng)關(guān)斷點(diǎn)
    的頭像 發(fā)表于 10-16 13:53 ?894次閱讀

    網(wǎng)關(guān)的設(shè)置規(guī)則

    網(wǎng)關(guān)的設(shè)置規(guī)則涉及多個(gè)方面,包括硬件安裝、網(wǎng)絡(luò)連接、基本配置、高級(jí)配置以及安全設(shè)置等。以下是一篇關(guān)于網(wǎng)關(guān)設(shè)置規(guī)則的詳細(xì)指南,旨在幫助用戶正確配置和管理網(wǎng)關(guān)設(shè)備。
    的頭像 發(fā)表于 09-30 11:48 ?4702次閱讀

    keil軟件怎么運(yùn)行寫好的程序

    Keil軟件是一款功能強(qiáng)大的嵌入式開發(fā)工具,廣泛應(yīng)用于單片機(jī)、ARM、DSP等嵌入式系統(tǒng)的開發(fā)。本文將介紹如何使用Keil軟件運(yùn)行寫好的程序。 安裝Keil軟件 首先,需要從Keil
    的頭像 發(fā)表于 09-02 10:29 ?4501次閱讀

    keil軟件仿真如何仿真輸入

    多種微控制器和處理器,如ARM、Cortex-M、8051等。Keil軟件的主要功能包括: 代碼編輯:提供語(yǔ)法高亮、代碼折疊、自動(dòng)補(bǔ)全等功能。 編譯:將源代碼編譯成目標(biāo)代碼。 調(diào)試:在開發(fā)過(guò)程中,可以設(shè)置斷點(diǎn)、單步執(zhí)行、查看變量
    的頭像 發(fā)表于 09-02 10:25 ?2229次閱讀

    如何把keil軟件設(shè)置成中文

    以下是將Keil軟件設(shè)置為中文的步驟: 下載并安裝Keil軟件: 首先,您需要從官方網(wǎng)站下載Keil軟件的最新版本。請(qǐng)確保下載與您的操作系統(tǒng)兼容的版本。 啟動(dòng)
    的頭像 發(fā)表于 09-02 10:21 ?1.1w次閱讀

    keil5怎么往stm32里燒錄程序

    STM32開發(fā)板 使用USB線將STM32開發(fā)板連接到計(jì)算機(jī)。 配置Keil5項(xiàng)目 打開Keil5軟件,然后創(chuàng)建一個(gè)新的項(xiàng)目。 在項(xiàng)目設(shè)置中,選擇您的STM32設(shè)備型號(hào)。 配置項(xiàng)目路徑、目標(biāo)文件名和其他
    的頭像 發(fā)表于 08-22 09:31 ?5059次閱讀

    GD32F303使用KEIL仿真,JLINK連不上什么原因?需要怎么設(shè)置?

    GD32F303使用KEIL仿真,JLINK連不上什么原因?需要怎么設(shè)置?
    發(fā)表于 07-26 06:34

    LED燈帶斷點(diǎn)續(xù)傳是什么意思

    led幻彩跑馬燈帶分帶斷點(diǎn)續(xù)傳和不帶斷點(diǎn)續(xù)傳的。燈帶斷點(diǎn)續(xù)傳是指采用雙信號(hào)線交叉?zhèn)鬏數(shù)姆桨福?dāng)其中一個(gè)信號(hào)中斷后,另一條備用信號(hào)線能繞開故障點(diǎn),將信號(hào)傳輸?shù)较乱粋€(gè)像素點(diǎn)。簡(jiǎn)單來(lái)說(shuō)就是一個(gè)燈珠壞了
    發(fā)表于 07-18 18:20