目錄
一、keil Assistant的優勢和缺點? ? ? ??
二、使用方法
(1)配置keil的路徑
(2)導入并使用工程
(3)默認使用keil自帶的ARM編譯器而非GUN工具鏈
一、keil Assistant的優勢和缺點? ? ? ??
在日常學習單片機的過程中,常見的教學視頻采取的都是keil這個IDE來進行開發,但是這個軟件的UI界面實在是慘不忍睹,就好像上個世紀的產物,并且在代碼補齊方面支持的不好,讓我頭疼了許久。
? ? ? 偶然間發現VScode的插件keil Assistant可以進行代碼編輯,但是這種方式并不能直接VScode中創建一個工程,同時也不支持調試,僅僅利用到了VScode強大的代碼補齊功能。當然在網絡上還有較為完善的EIDE+GUN+STLink的開發環境搭建教學,但是他們都是基于CubeMX這個軟件的,其中有一個較為關鍵的是有一個的鏈接腳本文件,是由CubeMX生成的,但是本人并沒有使用過CubeMX,只能暫且使用KeilAssistant。
? ? ? ? 不過由于我目前還不怎么涉及到調試,并沒有很強的在Vscode調試的需求。所以并沒有研究如何使用EIDE。當后續如果使用到了再來學習。
? ? ? ? 當然keil Assistant僅僅只是用于代碼編輯,編譯,下載的。并不直接支持創建工程、或者在工程中創建、刪除文件,所以一切的一切都需要你能夠在keil中搭建好工程的框架。這個我們在之前的文章中著重講解了。
二、使用方法
(1)配置keil的路徑
(2)導入并使用工程
當你在vscode中編輯了代碼,再進入keil界面的時候可以看到代碼已經發生了更改。
(3)默認使用keil自帶的ARM編譯器而非GUN工具鏈
- 工具鏈來源
- Keil Assistant:使用 Keil 自帶的 ARM 編譯器,工具鏈與 Keil IDE 捆綁,版本由 Keil 安裝包決定。
- GNU 工具鏈:需用戶手動下載并配置(如 GCC ARM Embedded),工具鏈獨立于 Keil,版本由用戶自行選擇。
- 配置復雜度
- Keil Assistant:幾乎無需額外配置,插件自動關聯 Keil 的編譯器路徑。
- GNU 工具鏈:需手動設置編譯器路徑、鏈接器腳本、編譯選項等,配置過程較復雜。
- 功能特性
- Keil Assistant:專注于 Keil 工程,支持 Keil 特有的功能(如 CMSIS 包管理、設備數據庫)。
- GNU 工具鏈:提供更通用的編譯選項,支持跨平臺開發,但需用戶自行處理 Keil 特有的功能(如通過腳本模擬 CMSIS 包管理)。
- 調試支持
- Keil Assistant:依賴 Keil 的調試器(如 ULINK),調試功能與 Keil IDE 一致。
- GNU 工具鏈:通常結合 OpenOCD 或 J-Link GDB Server 進行調試,調試流程與 Keil 不同。
從上面的介紹你可以總結出來:
(1)ARM編譯器是keil下載的時候就已經存在的,他不需要用戶手動選擇,而是下載的時候由安裝包自動配置好了。
(2)ARM編譯器分為ARMCC(ARM Compiler 5)和ARMCLANG(ARM Compiler 6),這個可以在keil中選擇。
(3)如果想要使用GUN工具鏈,則需要手動配置一系列東西。譬如編譯器路徑、鏈接器腳本、編譯選項。而我們并沒有鏈接器腳本,所以不能使用,如果你后續使用了CubeMx可以考慮更換成GUN工具鏈。