vscode stm32调试环境搭建
一、安装vscode
https://blog.csdn.net/m0_62349010/article/details/122867131
二、安装扩展(extension)
- C/C++:又名 cpptools,提供Debug和Format功能
- Code Runner:右键即可编译运行单文件,很方便;但无法Debug
三:安装编译器
MinGW-w64推荐去官网下载:https://sourceforge.net/projects/mingw-w64/files/mingw-w64/
选最新版本中的x86_64-posix-seh
“安装”编译器:下下来的是一个7z的压缩包。如果不会解压可以百度“压缩包怎么解压”。解压完了放到一个不容易被删的地方,层叠的可以去掉一些。看好bin文件夹的完整路径,我图里的是C:\mingw64\bin,把它加到环境变量中的PATH里去。“安装”编译器:下下来的是一个7z的压缩包。如果不会解压可以百度“压缩包怎么解压”。解压完了放到一个不容易被删的地方,层叠的可以去掉一些。看好bin文件夹的完整路径,我图里的是C:\mingw64\bin,把它加到环境变量中的PATH里去。
参考网址 https://www.zhihu.com/question/30315894/answer/154979413
四:安装ARM-GCC 交叉编译器
安装解压完成后,可以找到一个bin文件夹,这个就是我们编译器安装目录.
到此GCC交叉编译器安装完毕
参考网址:https://blog.csdn.net/cqy1028/article/details/113984775
五:安装 Debug 调试工具 openocd 0.10.0
下载地址
找到sysprogs公司网站上(是卖一个叫做VisualGDB软件的 )提供的win系统编译版本,版本新,下载速度比较快:
https://sysprogs.com/getfile/1364/openocd-20201228.7z
参考网址:https://blog.csdn.net/cqy1028/article/details/113984775
六:添加环境变量:
配置Path 环境变量
以上三个工具是需要设置到Win系统得环境变量里面。
win10下也是写入Path,但是比较方便一些. 如下操作:
在 桌面"此电脑"图标, 右键 - >属性 -> 高级系统设置 -> 环境变量 -> Path ->编辑, 增加 3条我们的bin目录,分别是:
执行 make脚本的 mingw32 的bin目录
交叉编译器 GNU-ARM-… 下的 bin目录
调试器 openOCD 的 bin 目录
原文链接:https://blog.csdn.net/cqy1028/article/details/113984775
七:检查三个工具是否安装成功:
运行cmd , 或者在vscode界面下面的终端, 就可以直接输入指令查询这些工具的版本.
查询make版本make -v
查询交叉编译器版本arm-none-eabi-gcc -v
查询openOCD版本openocd -v
原文链接:https://blog.csdn.net/cqy1028/article/details/113984775
PS。最好运行一个c文件的gcc编译调试,测试gcc是否正常使用。
1 2 3 4 5 6 7 8 | #include <stdio.h> #include <AclAPI.h> int main(){ char name[100]; printf ( "What is your name?\n" ); scanf ( "%s" ,name); printf ( "Hello,%s,nice to meet you!\n" ,name); } |
原文链接: https://www.yixuebiancheng.com/article/93084.html
八:从stm32cubemx生成一个makefile类型的工程,用vscode打开(文件/打开文件夹)
九:编译这个工程
直接编译, 按 Crtl + ~, 调出命令行, 输入: make -j;
参考: https://blog.csdn.net/cqy1028/article/details/113984775
编译如果说找不到文件,可以设置c/c++扩展的include files路径。
参考:https://blog.csdn.net/weixin_45584297/article/details/122353638
十:下载bin文件到板上:
需要先把接口配置,和芯片配置文件从openocd安装目录/拷贝到工程目录下,
cmsis-dap.cfg 或 stlink-v2.cfg 位于 : 安装目录\share\openocd\scripts\interface
stm32f1x.cfg(我改名为了openocd_target)位于 : 安装目录\share\openocd\scripts\target
————————————————
原文链接:https://blog.csdn.net/cqy1028/article/details/113984775
命令行执行下载:
用CMSIS-DAP:
openocd -f cmsis-dap.cfg -f stm32f1x.cfg -c init -c halt -c "program my_gcc_test.bin 0x8000000" -c reset -c shutdown
用STLink v2:
openocd -f stlink-v2.cfg -f stm32f1x.cfg -c init -c halt -c "program my_gcc_test.bin 0x8000000" -c reset -c shutdown
————————————————
版权声明:本文为CSDN博主「秋阳 Cody」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/cqy1028/article/details/113984775
十一:调试
点击VScode左边插件图标,搜索cotrex-debug,点击install安装.
在 Debug 界面,点击 “add configuration”, 添加以下内容:
launch.json文件关键点是设置:
正确的elf文件, elf文件是带有调试信息的编译结果,可以告诉gdb那一句汇编对应哪个文件,类似MDK环境下的axf文件.
正确的openocd 的2个配置文件.
servertype,type类型填对. 这样才能启动openocd.
————————————————
版权声明:本文为CSDN博主「秋阳 Cody」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/cqy1028/article/details/113984775


6、修改makefile文件
有两个地方有修改,# C sources ,# C includes
就是在# C sources语句后面,将所有C文件路径列出,从工程所在路径开始即可;可以在vscode选中文件右键复制路径(注意斜杠分割,注意斜杠方向!注意斜杠方向!注意斜杠方向!注意不要多写空格!注意不要写漏,也不要写重复!不要写重复!不要写重复!否则可能会出现No rule to make target或变量重复定义错误)
# C includes 就是要把所有的包含有.h文件的路径列出,路径前面需要加一个-I
7、编译工程
此时在端口输入make回车应该可以编译了,如果还是报错,请检查工程文件本身问题(囧)
8、修改链接地址:
修改链接地址为0x8003000,可将STM32F107RCTx_FLASH.ld的
FLASH (rx) : ORIGIN = 0x8000000, LENGTH = 256K
语句改为
FLASH (rx) : ORIGIN = 0x8003000, LENGTH = 256K
即可。
如果你想了解更多,请拜读https://blog.csdn.net/qwe5959798/article/details/115627739?spm=1001.2014.3001.5502
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具