生命在於運動,技術在於折騰,你是否厭倦了在keil、iar下孜孜不倦的寫代碼、debug,是否玩累了在外部編輯器下寫代碼,然後在轉到ide下進行仿真、下載等操作呢?
這個教程將介紹下如何在vscode下實現這些操作,真正實現一個vscode可以吃天、實現編譯仿真下載一條龍服務,而你只需要在vscode下的終端敲幾個命令而已。。。
本教程以阿波羅開發板stm32f429igt6為例,先瞅瞅最終界面
最終可以用的功能如下:
1,vscode終端下執行make指令,即可在build文件下編譯出.hex .bin .elf文件,中間文件放在build/Obj/文件夾下
2,執行make clean,可清除build文件夾
3,執行make download,可一鍵下載hex到目標板子並讓板子復位運行,相當於keil的一鍵下載按鈕
4,執行make reset,可以讓板子復位運行一下
5,執行make commit,可一鍵推送到你的github或者giteee遠程伺服器上去,但前提是你自己創建了這個工程的git
教程如下:
環境:
1,下載vscode及必要插件,令需要一個插件Cortex_debug
2,Windows下安裝arm-none-eabi-gcc工具鏈,推薦q4版本
下載及安裝教程:見原文
3,Windows下安裝Jlink最新版驅動(V6.88a)
見原文
4,GNU make
百度網盤連結和安裝教程、添加環境變量教程見原文
5,git bash
這個不用說,大家都會有的吧,然後需要把vscode的終端換成git bash。百度一下,太容易了。
好了,環境就搭好了,不要嫌麻煩,現在越麻煩,你用起來越方便!
編譯:
編譯只需在vscode終端中執行make指令就行,如下圖:
仿真:
仿真的話需要vscode下的插件cortex debug,這個教程我粘貼上我之前寫的國產晶片fm33lc02x的教程,大家只要把晶片名字換成STM32F429就行
(1) vscode下載插件cortex debug插件
(2) 創建launch.json文件
如下圖所示:
然後選擇CotrexDebug即可創建好launch.json文件
(3) 配置launch.json文件
稍微按照自己的晶片修改下就好,以FM33LC026為例:
然後將廠商提供的.svd文件放到你的工程根目錄即可開始仿真,可以看變量、看外設寄存器、內核寄存器等等,還可以保存你的斷點等。
然後實現這一切的核心就是makefile文件
,不用管,我已經幫你寫好了,而且全部中文注釋,各種參數也是取自stm32cube的makefile參數,放心的用,放心的學!
然後我將在附件提供一個基於阿波羅開發板stm32f429igt6的點燈例程。如果的晶片不是stm32f429,但只要你的核是arm核,本例程本makefile,通通能用!
換晶片後你需要改以下內容:
1,找到你的晶片的基於gcc的啟動文件和連結腳本,一般問廠商要肯定有的,不用自己寫,然後替換到根目錄下的2個對應文件
2,改以下內容,是不是看起來特簡單。
然後,就搞定了,具體的參數可以去stm32cube上生成一個對應內核的makefile,然後參考下就行了,其實其他核是更簡單的。教程可能有點亂,後期我會在整理下。
最後附上我的整個makefile
由于格式限制,想查看詳細代碼和安裝包請搜索:21ic,輸入下方標題搜索查看哦~
原標題:教你在vscode下用stm32+makefile+gcc實現編譯仿真下載一條龍服務
原創作者:791314247
本文為21ic原創獎勵作品,詳情請見21ic論壇活動專區:第一屆萬元紅包——藍V達人原創獎勵活動,如果您也有興趣參與徵文,歡迎進入論壇參與活動~