VSCode搭建ARM(STM32开发环境)
目錄
?
需要用到的工具
軟件安裝
下載安裝 Visual Studio Code?
下載安裝 STM32Cubemx
下載安裝 ARM GCC交叉編譯工具鏈
下載安裝 Msys2
下載安裝 OpenOCD
下載安裝 Make
開發環境配置
msys2_shell.cmd作為VSCode的終端
生成Makefile工程
VsCode下編譯工程
安裝C/C++插件
添加GDB調試
添加任務?
添加OcdStm32.cfg文件
編譯下載調試
打開調試服務命令
開始調試
運行效果展示?
需要用到的工具
軟件安裝
下載安裝 Visual Studio Code?
軟件正常安裝就行,在安裝快要完成的時候,將VSC添加到Path。
下載安裝 STM32Cubemx
軟件正常安裝就行。需要注意的時候,后期需要將自己使用到的庫,添加到STM32Cubemx。
下載安裝 ARM GCC交叉編譯工具鏈
軟件正常安裝。安裝完成后把bin文件夾加到系統環境變量。然后在CMD命令行下輸入arm-none-eabi-gcc -v,測試環境ARM GCC是否安裝正常。如下圖所示
下載安裝 Msys2
正常安裝Msys2。然后讓其直接繼承Windows的環境變量,在msys2文件夾下有msys2_shell.cmd,用記事本打開,把第16行前的rem去掉,改成set MSYS2_PATH_TYPE=inherit。如下圖所示
下載安裝 OpenOCD
在硬盤里找個位置,然后將OpenOCD解壓到當前目錄,即安裝完成。然后將bin或者bin-x64目錄添加到系統環境變量。運行openocd -v,測試安裝是否正常。如下圖所示
下載安裝 Make
文件選擇Complete package, except sources(如果無法進入下載頁面,請從文末給出的網盤地址進行下載)。然后將bin目錄加到系統環境變量。運行make -v,測試安裝是否正常。如下圖所示
雙擊打開msys2_shell.cmd,進入目錄下有Makefile的工程,運行make,看是否編譯成功。如下圖所示
?
至此,所需要的軟件已經全部安裝完成,接下來,進行開發環境的配置。
?
開發環境配置
msys2_shell.cmd作為VSCode的終端
?在VsCode中,使用快捷鍵ctrl+shift+p搜索setting,找到“首選項:打 開設置(json)”。點擊會進入一個文件,把這兩行復制進去,只要改第一行msys2_shell.cmd的地址。
{"terminal.integrated.shell.windows":"C:/msys64/msys2_shell.cmd", "terminal.integrated.shellArgs.windows": ["-defterm", "-mingw32", "-no-start", "-here"], }生成Makefile工程
打開STM32Cubemx,在ToolChain/IDE選項中選擇Makefile,生成一個Makefile工程。如下圖
VsCode下編譯工程
將生成的Makefile工程,添加到VsCode中,然后在終端下選擇使用msys2_shell.cmd終端。然后輸入make編譯命令。如下圖所示。
安裝C/C++插件
在VsCode中打開插件商店,然后輸入C/C++,點擊安裝,安裝此插件。如下圖所示
添加GDB調試
如上圖
第一步:點擊調試按鈕。
第二步:點擊白色下拉箭頭,然后選擇GDB/LLDB。
然后在launch.json中直接復制以下代碼,有 // 備注的地方,需要修改相關參數。
{"version": "0.2.0","configurations": [{"name": "ARM Debug","type": "cppdbg","request": "launch", ? ? ? ? ? "program": "${workspaceFolder}/build/${workspaceRootFolderName}.elf","cwd": "${workspaceFolder}","externalConsole": true,"MIMode": "gdb","miDebuggerPath": "C:/Program Files (x86)/GNU Tools ARM Embedded/5.4 2016q3/bin/arm-none-eabi-gdb.exe", //交叉編譯工具鏈地址"setupCommands": [{"text": "file C:/Users/Administrator/Desktop/666/666/build/666.elf", //工程使用絕對地址},{"text": "target remote localhost:3333", //調試器端口號},//以下命令根據不同的單片機可能有變化,例如STM32F1就不行,需要更換命令,STM32F4可以。gdb是可以手動用命令行執行的,這部分就是需執行的命令。百度,谷歌可以找到的。{"text": "monitor reset",},{"text": "monitor halt",},{"text": "load" , ? ? ? ? ? ? ? ? ? ? ? ? ?}],"preLaunchTask": "build" } ] }添加任務?
第一步:ctrl+shift+p打開命令面板。
第二步:搜索tasks。
第三步:點配置任務。
第四步:選擇工程文件夾,選擇Others
然后在打開的tasks.json中復制下圖代碼
//tasks.json {"version": "2.0.0","tasks": [{"label": "build","type": "shell","command": "echo compile exeover&make -j4"}] }添加OcdStm32.cfg文件
在工程目錄下(和Makefile文件同一目錄)添加OcdStm32.cfg文件。然后配置以下參數。
interface stlink-v2 #調試器的名字,在openocd-0.10.0\scripts\interface里找 transport select swd #接口名,swd或jtag source [find target/stm32f4x.cfg] #芯片類型,在openocd-0.10.0\scripts\target里找?至此,配置已經全部結束了。
?
編譯下載調試
打開調試服務命令
在msys2_shell.cmd命令行下,輸入 openocd -f interface/stlink-v2.cfg -f target/stm32f4x.cfg。當出現?stm32f4x.cpu: hardware has 6 breakpoints, 4 watchpoints 說明調試服務已經打開。如下圖
?
開始調試
當打開調試服務以后,按F5鍵,就可以開始調試了。?當出現下圖以后,再按F5鍵,代碼就跑起來了。
?
運行效果展示?
?
?
至此,經過三天的配置學習,查閱了許多資料,關于Vsc配置ARM開發環境的工作已經全部完成了。
特別感謝Aakrin、SSulG兩老哥提供的幫助。
參考資料:
https://blog.csdn.net/qq_41544116/article/details/89525709
https://www.jianshu.com/p/32efe218e18f
https://www.jianshu.com/p/b9d9008b1921
https://www.jianshu.com/p/4d88dc2e1826
https://blog.csdn.net/zhengyangliu123/article/details/79090601
?
后期,將繼續介紹一些關于VSC開發STM32的小技巧。
本文用到的相關工具:
鏈接:https://pan.baidu.com/s/1IUOnAzGE8icNCRpXlXdd4Q?
提取碼:oeqb?
總結
以上是生活随笔為你收集整理的VSCode搭建ARM(STM32开发环境)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Linux minicom 软件退出方法
- 下一篇: (转)跟我一起写 Makefile(一)