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

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

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

keil實用技巧

掌芯元器 ? 2024-08-30 13:23 ? 次閱讀

KEIL軟件是一款專業(yè)的嵌入式軟件開發(fā)環(huán)境,具有集成化開發(fā)環(huán)境、支持多種芯片體系結(jié)構(gòu)、集編輯、編譯、調(diào)試于一體。內(nèi)置豐富的庫函數(shù)和示例代碼等特點,可以幫助開發(fā)者快速高效地進行嵌入式軟件開發(fā)、調(diào)試和測試工作。

一、統(tǒng)一編程風格

1、插件介紹及下載

Astyle全稱Artistic Style,是一個免費,快速,小型的自動格式化程序,適用于C,C++,C++/CLI,Objective?C,C#和Java源代碼。

2、安裝使用步驟

l配置用戶自定義插件

打開keil -> 菜單欄Tools -> 選擇Customize Tools Menu -> new -> 設(shè)置用戶自定義插件名稱,如:格式化代碼 -> Command欄:導入插件地址 -> Arguments欄填入格式化配置

注:插件最好放置在keil的安裝目錄下。

l格式化配置說明

格式化工程:-n "$E*.c" "$E*.h" --style=ansi -p -s4 -S -f -xW -w -xw -R

格式化當前文件:-n !E --style=ansi -p -s4 -S -f -xW -w -xw

個人自定義整體配置:!E --style=1tbs --indent-col1-comments --break-blocks --pad-oper --pad-comma --pad-header --unpad-paren --delete-empty-lines --align-pointer=name --break-one-line-headers --add-braces --max-code-length=120-

注:上述命令可直接復制到Arguments欄進行格式化配置。!E表示的是當前獲得焦點且正在編輯的文件。$E*.c和$E*.h代表當前獲得焦點且正在編輯文件所在目錄下所有.c和.h文件(參考keil uVision的幫助文檔)使用的是Astyle默認格式來格式化文件,另外也可以自定義格式,自定義格式參考Astyle官網(wǎng):藝術(shù)風格 (sourceforge.net)。

ec5a304c-668f-11ef-89ff-92fbcf53809c.png

ec80269e-668f-11ef-89ff-92fbcf53809c.png

二、快捷添加文件及函數(shù)注釋

2.1 方法一 利用keil本身的功能實現(xiàn)

keil -> Edit(編輯)—> Configuration(配置)-> Text Completion -> Templates -> new - > 自定義注釋名稱并選中 -> Text輸入對應內(nèi)容 -> Ok保存退出—>光標置于需添加注釋的位置 -> keil的Project菜單欄選擇下方的Templates選擇對應的注釋名稱即可實現(xiàn)添加,也可通過工具欄下的插件進行調(diào)用,更可通過設(shè)置快捷鍵的方式實現(xiàn),可參考方法二中的設(shè)置快捷鍵。具體使用和設(shè)置步驟詳見下圖。

注:keil漢化之后請參考()內(nèi)的內(nèi)容進行查找選項,未漢化的則直接查找選項即可。

eca068d2-668f-11ef-89ff-92fbcf53809c.png

ecb216f4-668f-11ef-89ff-92fbcf53809c.png ? ?

ecd143d0-668f-11ef-89ff-92fbcf53809c.png

ece6d420-668f-11ef-89ff-92fbcf53809c.png

2.2 方法二 快捷鍵和插件實現(xiàn)

導入插件:keil -> Edit(編輯)—> Configuration(配置)-> Text Completion -> Templates -> All Enteries -> Import 導入工具包中的插件腳本.cfg文件即可實現(xiàn)插件導入 -> OK 退出即可 -> Tools -> 點擊對應插件如:當前日期即可實現(xiàn)。

設(shè)置快捷鍵:keil -> Edit(編輯)—> Configuration(配置)-> Shortcut Keys -> select a command中找到對應的插件名稱如:tools:函數(shù)注釋并選中,然后在Assigned Shortcuts中設(shè)置對應的快捷鍵即可,但是該快捷鍵一定不能與系統(tǒng)和keil中已經(jīng)設(shè)置的快捷鍵重復,負責不能正常運行。注釋的內(nèi)容可通過修改工具包中對應的.c文件進行設(shè)置,如:File.c

eca068d2-668f-11ef-89ff-92fbcf53809c.png

ed0ed286-668f-11ef-89ff-92fbcf53809c.png

插件包下載:https://pan.baidu.com/s/1btxAYCFkfy-rRu1BhugX7g?pwd=7xt9

三、keil調(diào)試部分技巧

3.1 軟件仿真

軟件仿真:keil點擊小掃把圖標 —>Debug調(diào)試界面 -> 勾選Use Simulator -> dialog.DLL 中的DCM和TCM分別改為DARSTM和TARSTM,對應的parameter選項將內(nèi)核改為具體的芯片型號即可,如:CM3的內(nèi)核選項改為具體的芯片型號,如:STM32F103CB。

ed4503f6-668f-11ef-89ff-92fbcf53809c.png

3.2keil自帶邏輯分析儀使用

ed57cd06-668f-11ef-89ff-92fbcf53809c.png ? ?

ed81fb3a-668f-11ef-89ff-92fbcf53809c.png

3.3 精準計時

精準計時功能(可用于計算執(zhí)行某一段代碼所需時間):配置-trace中的coreclock改成與單片機頻率(主頻)一致。打開Keil調(diào)試界面,在右下角會有一個t0:xxxxxsec的字樣,把鼠標放在該圖標上面,會看到如下圖所示的三個時間顯示,t0,t1,t2, 其中,t0是系統(tǒng)上電運行的時間,與Registers窗口的時間一致,t1與t2是我們可以做測試的運行時間 右鍵單擊t0圖標,可以設(shè)置顯示t0/t1/t2,或復位t1/t2 在待測試的代碼起始位置打一個斷點,設(shè)置顯示t1,且復位t1的時間 在待測試的代碼末尾位置打一個斷點,全速運行代碼到該斷點處,當運行到該斷點時,t1的時間即是該段代碼運行的時間。

ed9f045a-668f-11ef-89ff-92fbcf53809c.png ? ?

edca13d4-668f-11ef-89ff-92fbcf53809c.png

3.4 監(jiān)控界面數(shù)據(jù)實時追蹤

目前來說,在keil調(diào)試時,監(jiān)控數(shù)據(jù)基本上是實時變化的,但也存在某些個別情況下,keil調(diào)試下的監(jiān)控窗口的數(shù)據(jù)是不變化,在遇到此種情況時,則需要我們進行手動設(shè)置,打開調(diào)試界面,設(shè)置更新選項即可。

eddee106-668f-11ef-89ff-92fbcf53809c.png

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

    關(guān)注

    452

    文章

    50222

    瀏覽量

    420974
  • 嵌入式軟件
    +關(guān)注

    關(guān)注

    4

    文章

    239

    瀏覽量

    26598
  • keil
    +關(guān)注

    關(guān)注

    68

    文章

    1210

    瀏覽量

    166584
收藏 人收藏

    評論

    相關(guān)推薦

    LabVIEW 實用技巧.

    Labview實用技巧
    發(fā)表于 06-29 12:38

    LabVIEW編程的實用技巧系列(18)

    LabVIEW編程的實用技巧系列第十八講視頻教程
    的頭像 發(fā)表于 06-26 00:01 ?2177次閱讀
    LabVIEW編程的<b class='flag-5'>實用技巧</b>系列(18)

    LabVIEW編程的實用技巧系列(17)

    LabVIEW編程的實用技巧系列第十七講視頻教程
    的頭像 發(fā)表于 06-26 03:44 ?2712次閱讀
    LabVIEW編程的<b class='flag-5'>實用技巧</b>系列(17)

    LabVIEW編程的實用技巧系列(13)

    LabVIEW編程的實用技巧系列第十三講視頻教程
    的頭像 發(fā)表于 06-26 00:07 ?2188次閱讀
    LabVIEW編程的<b class='flag-5'>實用技巧</b>系列(13)

    LabVIEW編程的實用技巧系列(12)

    LabVIEW編程的實用技巧系列第十二講視頻教程
    的頭像 發(fā)表于 06-26 00:09 ?2306次閱讀
    LabVIEW編程的<b class='flag-5'>實用技巧</b>系列(12)

    LabVIEW編程的實用技巧系列(11)

    LabVIEW編程的實用技巧系列第十一講視頻教程
    的頭像 發(fā)表于 06-26 00:14 ?2308次閱讀
    LabVIEW編程的<b class='flag-5'>實用技巧</b>系列(11)

    LabVIEW編程的實用技巧系列(10)

    LabVIEW編程的實用技巧系列第十講視頻教程
    的頭像 發(fā)表于 06-26 00:10 ?2425次閱讀
    LabVIEW編程的<b class='flag-5'>實用技巧</b>系列(10)

    LabVIEW編程的實用技巧系列(8)

    LabVIEW編程的實用技巧系列第八講視頻教程
    的頭像 發(fā)表于 06-26 13:44 ?2787次閱讀
    LabVIEW編程的<b class='flag-5'>實用技巧</b>系列(8)

    LabVIEW編程的實用技巧系列(1)

    LabVIEW編程的實用技巧系列第一講視頻教程
    的頭像 發(fā)表于 06-26 00:02 ?2531次閱讀
    LabVIEW編程的<b class='flag-5'>實用技巧</b>系列(1)

    LabVIEW編程的實用技巧系列(2)

    LabVIEW編程的實用技巧系列第二講視頻教程
    的頭像 發(fā)表于 06-26 00:46 ?2316次閱讀
    LabVIEW編程的<b class='flag-5'>實用技巧</b>系列(2)

    LabVIEW編程的實用技巧系列(3)

    LabVIEW編程的實用技巧系列第三講視頻教程
    的頭像 發(fā)表于 06-26 00:44 ?2251次閱讀
    LabVIEW編程的<b class='flag-5'>實用技巧</b>系列(3)

    LabVIEW編程的實用技巧系列(5)

    LabVIEW編程的實用技巧系列第五講視頻教程
    的頭像 發(fā)表于 06-25 12:11 ?2171次閱讀
    LabVIEW編程的<b class='flag-5'>實用技巧</b>系列(5)

    LabVIEW編程的實用技巧系列(20)

    LabVIEW編程的實用技巧系列第二十講視頻教程
    的頭像 發(fā)表于 06-24 02:09 ?2739次閱讀

    LabVIEW編程的實用技巧系列(19)

    LabVIEW編程的實用技巧系列第十九講視頻教程
    的頭像 發(fā)表于 06-24 02:17 ?2295次閱讀
    LabVIEW編程的<b class='flag-5'>實用技巧</b>系列(19)

    PLC日常應用中的實用技巧

    PLC日常應用中的實用技巧,希望能對大家在日常使用PLC有所幫助。
    的頭像 發(fā)表于 07-10 14:39 ?502次閱讀