KeilMDK配置詳解與調(diào)試技術(shù)-創(chuàng)新互聯(lián)

工程配置介紹

①??? 通用配置選項(xiàng);

創(chuàng)新互聯(lián)服務(wù)項(xiàng)目包括咸豐網(wǎng)站建設(shè)、咸豐網(wǎng)站制作、咸豐網(wǎng)頁制作以及咸豐網(wǎng)絡(luò)營銷策劃等。多年來,我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢、行業(yè)經(jīng)驗(yàn)、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機(jī)構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,咸豐網(wǎng)站推廣取得了明顯的社會(huì)效益與經(jīng)濟(jì)效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到咸豐省份的部分城市,未來相信會(huì)繼續(xù)擴(kuò)大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!

②??? 操作系統(tǒng)選項(xiàng);

③??? 勾選后可以減小鏡像尺寸,加快運(yùn)行速度;

④??? 浮點(diǎn)配置;

⑤??? 加載簡要配置,分散加載情況需要配置;

  1. 編譯器輸出選項(xiàng);

  1. 可執(zhí)行鏡像名稱;

  1. 跳轉(zhuǎn)信息,選擇該項(xiàng)可以查詢跳轉(zhuǎn)信息,不選擇可以加快編譯速度;

  1. 生成庫.lib;

  1. 編譯器編譯報(bào)表選項(xiàng);

  1. 編譯器編譯列表選項(xiàng);

  1. 編譯器、預(yù)處理器報(bào)表選項(xiàng);

  1. 連接器報(bào)表選項(xiàng);

  1. 用戶配置選項(xiàng);

  1. C/C++編譯前運(yùn)行選項(xiàng);

  1. 工程build前運(yùn)行選項(xiàng);

  1. 工程build后運(yùn)行選項(xiàng);

  1. 編譯器配置選項(xiàng);

  1. 匯編器全局宏定義;

  1. 編譯器等級優(yōu)化選項(xiàng);

  1. 對冗余函數(shù)的優(yōu)化,建議勾選;

  1. 編譯器路徑;

  1. 編譯器控制字;

  1. 編譯器已添加控制字;

  1. 匯編器;

  1. 匯編器全局宏定義;

  1. 匯編器常用控制字;

  1. 匯編器路徑;

  1. 匯編器控制字;

  1. 匯編器已添加控制字;

  1. 連接器;

  1. 連接器常用功能開關(guān);

  1. 分散加載文件;

  1. 連接器命令控制字段;

  1. 連接器已加載控制字;

調(diào)試技術(shù)

1.內(nèi)核寄存器;其中R0-R7也被稱為低組寄存器,可以被所有指令使用;R8-R12也被稱為高組寄存器,只能被32bit使用,不能被16bit指令使用;R13堆棧指針寄存器;R14連接寄存器,用于在調(diào)用子程序時(shí)存儲(chǔ)返回地址;R15為程序計(jì)數(shù)器,在匯編代碼中一般我們都都叫它的外號“PC”。因?yàn)镃M3內(nèi)部使用了指令流水線,讀PC時(shí)返回的值是當(dāng)前指令的地址+4。通過這些寄存器組可以迅速定位到出錯(cuò)的程序的位置,無須在界面5里面打斷點(diǎn)自己慢慢找。

例如,寫如下代碼:

void test_param(int var1,int var2,int var3,int var4,int var5,int var6){
    var1++;
    var2++;
    var3++;
    var4++;
    var5++;
    var6++;
}
int main(void)
{  
  test_param(0x11,0x22,0x33,0x44,0x55,0x66);
  while (1)
  {
  }
}

進(jìn)入debug調(diào)試,可以觀察寄存器組,及堆棧中的值:

2.反匯編窗口;在問題難以定位的情況下,匯編可能是分析問題的最后一根稻草。

3.命令窗口,Keil支持很多的調(diào)試命令,作為斷點(diǎn)調(diào)試的強(qiáng)有力補(bǔ)充手段,比如用于顯示特定Memory的Display命令、用于顯示當(dāng)前Symbol的dir命令、用于調(diào)用邏輯分析儀的LA命令、用于下一些特殊斷點(diǎn)的BreakSet/BreakRead命令等。

4.CallStack+locals窗口;可以顯示變量/當(dāng)前堆棧的里的元素,可以看出堆棧內(nèi)部情況及調(diào)用關(guān)系。

其他窗口如memory窗口,可以通過輸入地址查看具體存儲(chǔ)值,非常常用。

其他窗口如NVIC窗口,可以觀察所有中斷的狀態(tài)。

拓展內(nèi)容

1.《Cortex-M啟動(dòng)代碼分析》

2.《編譯器原理簡介》

你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機(jī)房具備T級流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級服務(wù)器適合批量采購,新人活動(dòng)首月15元起,快前往官網(wǎng)查看詳情吧

本文名稱:KeilMDK配置詳解與調(diào)試技術(shù)-創(chuàng)新互聯(lián)
URL鏈接:http://www.bm7419.com/article34/ceedse.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供外貿(mào)網(wǎng)站建設(shè)搜索引擎優(yōu)化、網(wǎng)站營銷電子商務(wù)、網(wǎng)頁設(shè)計(jì)公司、移動(dòng)網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

微信小程序開發(fā)