Keil uVision程序調(diào)試進(jìn)階技巧
在上一篇經(jīng)驗(yàn)中,我們了解了程序調(diào)試的基本操作,現(xiàn)在繼續(xù)深入介紹。當(dāng)你進(jìn)入調(diào)試界面時(shí),會(huì)看到如下圖示部分。光標(biāo)已經(jīng)運(yùn)行到main函數(shù)的入口處,調(diào)試工具欄也展示在你面前。 1. 相關(guān)菜單介紹首先是左邊第一
在上一篇經(jīng)驗(yàn)中,我們了解了程序調(diào)試的基本操作,現(xiàn)在繼續(xù)深入介紹。當(dāng)你進(jìn)入調(diào)試界面時(shí),會(huì)看到如下圖示部分。光標(biāo)已經(jīng)運(yùn)行到main函數(shù)的入口處,調(diào)試工具欄也展示在你面前。
1. 相關(guān)菜單介紹
首先是左邊第一個(gè)選項(xiàng),在調(diào)試運(yùn)行過(guò)程中想重新開(kāi)始時(shí)需要使用它,點(diǎn)擊相當(dāng)于程序重啟。其后依次是全速運(yùn)行、結(jié)束全速運(yùn)行、逐語(yǔ)句調(diào)試和逐過(guò)程調(diào)試選項(xiàng)。
2. 全速運(yùn)行
在全速運(yùn)行中,無(wú)法精確掌控程序執(zhí)行位置,只能通過(guò)點(diǎn)擊停止按鈕才能中斷當(dāng)前運(yùn)行。通常與斷點(diǎn)結(jié)合使用,設(shè)置斷點(diǎn)后全速運(yùn)行將快速到達(dá)指定位置停止。
3. F11逐語(yǔ)句調(diào)試
按下F11可逐步執(zhí)行每一條語(yǔ)句進(jìn)行調(diào)試,特別適用于不確定問(wèn)題出在哪時(shí)。全速運(yùn)行到指定位置后,使用F11逐步調(diào)試,遇到函數(shù)會(huì)進(jìn)入函數(shù)內(nèi)部(前提是該函數(shù)未被打包成庫(kù))。Ctrl F11執(zhí)行完當(dāng)前函數(shù)后停止。
4. F10單步運(yùn)行
使用F10可逐步執(zhí)行代碼,但不會(huì)進(jìn)入當(dāng)前行的函數(shù)內(nèi)部,遇到函數(shù)會(huì)執(zhí)行完整個(gè)函數(shù)內(nèi)的程序。Ctrl F10直接執(zhí)行到光標(biāo)所在行后停止。
5. 返回前一位置
若在函數(shù)內(nèi)部執(zhí)行時(shí)想返回之前位置而不繼續(xù)執(zhí)行,可點(diǎn)擊按鈕進(jìn)行前后翻看操作。
6. 簡(jiǎn)單調(diào)試
現(xiàn)在可以嘗試一些簡(jiǎn)單的調(diào)試操作,更多詳細(xì)調(diào)試技巧將在后續(xù)介紹中。