天天看點

VS Code編寫Keil工程

VS Code編寫Keil工程

    • 1、前言
    • 2、使用限制
    • 3、安裝VS Code和插件
    • 4、Keil Assistant的設定和使用
    • 5、其他

1、前言

keil C51作為最經典的入門IDE,盡管功能強大,但是界面不太友好,也不支援常用的代碼自動補全,代碼重構等基本功能,代碼量多了以後,程式的編寫,調用,檢視,修改等都很不友善,網上了解了一下常用的開發工具軟體,最終選擇了VS Code代替Keil,記錄分享一下過程,也友善以後檢視。

網上的Keil代碼補全設定隻針對MDK版本Keil MDK 5代碼補全功能設定,Keil C51不支援代碼補全!!!

通常換了一個開發工具軟體,需要重新搭建開發環境,這是很麻煩的事情,但是使用VS Code + Keil Assistant插件可以讓這個過程變得非常簡單。這裡要感謝開發這款插件的大神。

2、使用限制

VS Code是代碼編輯器,通過安裝插件,隻是實作Keil作為IDE最基本的編譯和下載下傳功能,不能完全代替keil,因為插件隻使用了keil的編譯器,這在大多數情況下已經夠用了,但還是有一些限制:

  1. 調試需要回到Keil中
  2. 工程檔案的添加或删除需要在keil中進行(後面還會說)

3、安裝VS Code和插件

VS Code官網:https://code.visualstudio.com/

下載下傳安裝VS Code,選擇Windows下的穩定版即可

VS Code編寫Keil工程

以中文語言插件為例,點左側的插件按鈕,搜尋chinese,選擇中文簡體安裝即可,其他插件的安裝類似。(大部分插件安裝後直接就能用了,設定語言為中文還需要重新開機一下VS Code)

VS Code編寫Keil工程

還需要安裝的插件:

Keil Assistant

VS Code編寫Keil工程

C/C++ IntelliSense(PS:這個插件安裝好就不用管它了,沒有什麼要設定的)

VS Code編寫Keil工程

4、Keil Assistant的設定和使用

打開Keil Assiatant的擴充設定,填寫UV4.exe的路徑到對應位置即可。這裡用的是Keil C51,如果是Keil MDK,就填寫在下面。

VS Code編寫Keil工程

注意完整路徑以UV4.exe結束,預設安裝路徑是C:\Keil_v5\UV4\UV4.exe

VS Code編寫Keil工程

然後就可以添加Keil工程到VS Code了:

VS Code編寫Keil工程

檢視剛才添加的工程代碼:

VS Code編寫Keil工程

點選這裡進行編譯,或者按F7編譯:

VS Code編寫Keil工程

編譯輸出資訊和Keil完全一樣,Ctrl+單擊可以快速的定位到錯誤位置。

VS Code編寫Keil工程

關于之前的使用限制第二點,工程檔案的添加或删除需要在keil中進行,這裡再作進一步說明:因為keil的檔案目錄是在關閉keil時更新的。

例如要添加工程檔案夾或者添加.c .h檔案,跟以往使用Keil一樣,需要添加檔案到keil左側的Project視窗,然後關閉keil,就會自動更新到VS Code中了,否則在VS Code裡編譯會因找不到檔案而報錯。

VS Code編寫Keil工程

通過上面的設定不難發現,Keil Assiatant插件隻是在VS Code中調用本地的Keil編譯器,是以有關工程的編譯選項設定,也需要回到keil中設定,比如生成.HEX檔案的位置等。

VS Code編寫Keil工程

然後就可以愉快的使用VS Code寫代碼了,VS Code有很多有用的代碼編輯功能和技巧,可以檢視相關的VS Code教程,推薦一個大佬的總結VS Code使用技巧整理。

5、其他

直接添加的工程會顯示我們不需要的檔案夾,可以在.vscode檔案夾下的setting.json裡進行設定,參考VSCode隐藏項目中不必要的檔案

VS Code編寫Keil工程

VS Code中幾乎所有的設定都是通過json來設定的,是以有必要熟悉這種模式(最開始使用時,我想設定某個功能,一直習慣性的想找到設定的按鈕。。。)。

在接觸VS Code之前,本人也使用過source insight,了解過一點eclipse。

相較于VS Code,eclipse是強大的內建開發環境,主要用于java,通過擴充也可以很好的支援C/C++,但界面比較繁瑣,不夠輕量,上手不怎麼友好,用來寫個C51有點殺雞用牛刀的感覺。而且沒有現成的可以直接編譯Keil C51工程的插件或腳本,編譯還得回到Keil。

source insight隻是代碼編輯器,用于檢視較大的軟體工程源代碼時非常不錯,但是編譯同樣得回到Keil,而且界面感覺不如VS Code漂亮(個人感覺,勿噴)。

VS Code至少有三款插件用于支援Keil編譯,其中就包括之前的Keil Assistant,另外兩個插件分别是Platform IO IDE和EIDE。

Platform IO IDE需要聯網使用,不太友善,EIDE的配置稍顯麻煩,而且這兩個插件都是使用SDCC工具鍊進行編譯,源代碼與Keil C有稍許不同,現有的工程代碼可能不能直接編譯,還需要做一些修改。

VS Code有很多功能強大的插件,網上有很多資料,可以自行搜尋。

相關連結:

VS Code自定義C代碼模闆

VS Code自定義配色方案

繼續閱讀