diff --git a/.vscode/launch.json b/.vscode/launch.json index 1fef058..482e0ac 100644 --- a/.vscode/launch.json +++ b/.vscode/launch.json @@ -1,8 +1,8 @@ { "version": "0.2.0", "configurations": [ -// 使用dap-link(如无线调试器时的参考配置) - { + // 使用dap-link(如无线调试器时的参考配置) + { "name": "Debug-dap", "cwd": "${workspaceRoot}", "executable": "${workspaceRoot}\\build\\basic_framework.elf", // 要下载到调试器的文件 @@ -13,14 +13,14 @@ // 该项目的根目录已经提供了C型开发板使用的外设svd文件 "servertype": "openocd", //使用的GDB Server "configFiles": [ - ".\\openocd.cfg", // 配置文件已经在根目录提供,若要修改以此类推 + ".\\openocd.cfg", // 配置文件已经在根目录提供,若要修改以此类推,openocd的路径下的share/scripts中有各种写好的配置文件 ], // path to your gcc-arm-none-eabi/arm-none-eabi-gdb.exe,如果在cortex-debug的设置中写入了全局路径,这里不需要再写 // "gdbPath": "D:\\gcc-arm-none-eabi\\bin\\arm-none-eabi-gdb.exe", //"preLaunchTask": "build task",//先运行Build任务,取消注释即可使用 }, -// 使用j-link时的参考配置 - { + // 使用j-link时的参考配置 + { "name": "Debug-jlink", "cwd": "${workspaceFolder}", "executable": "${workspaceRoot}\\build\\basic_framework.elf", diff --git a/VSCode+Ozone使用方法.md b/VSCode+Ozone使用方法.md index bc7f88b..41b15dc 100644 --- a/VSCode+Ozone使用方法.md +++ b/VSCode+Ozone使用方法.md @@ -151,7 +151,7 @@ ITM是instrument trace macrocell指令追踪宏单元的缩写,它用于提供 ## 环境配置 -- ***所有需要编辑的配置文件都已经在basic_framework的仓库中提供,如果不会写,照猫画虎。*** +> ***所有需要编辑的配置文件都已经在basic_framework的仓库中提供,如果不会写,照猫画虎。*** - 安装STM32CubeMX,并安装F4支持包和DSP库支持包 @@ -173,7 +173,13 @@ ITM是instrument trace macrocell指令追踪宏单元的缩写,它用于提供 ![image-20221112172254809](assets\image-20221112172254809.png) -- 安装MinGW,等待界面如下: + + + > MinGW、Arm GNU toolchain和OpenOCD也可以通过**MSYS2**使用pacman包管理器(和apt/yum类似)直接安装,这种方法一步到位,**==这是更推荐使用的方式==**,请参看[附录5](##附录5:利用MSYS2安装依赖环境)。 + > + > **当然,你也可以直接按照下面的方法安装这两个工具。**不过,强烈推荐使用附录5中的方法。下面的方法将在发布完整版更新的时候被删除。 + +- 安装MinGW,等待界面如下:(will be deprecated soon,请注意这种方法将会在主分支发布正式版的时候删除) ![image-20221112172051589](assets\image-20221112172051589.png) @@ -191,7 +197,7 @@ ITM是instrument trace macrocell指令追踪宏单元的缩写,它用于提供 打开命令行(win+R,cmd,回车),输入`gcc -v`,如果没有报错,并输出了一堆路径和参数说明安装成功。 -- 配置gcc-arm-none-eabi环境变量,**把压缩包解压以后放在某个地方**,然后同上,将工具链的bin添加到PATH: +- 配置gcc-arm-none-eabi环境变量,**把压缩包解压以后放在某个地方**,然后同上,将工具链的bin添加到PATH:(will be deprecated soon,请注意这种方法将会在主分支发布正式版的时候删除) ![image-20221112172858593](assets\image-20221112172858593.png) @@ -203,9 +209,13 @@ ITM是instrument trace macrocell指令追踪宏单元的缩写,它用于提供 > 添加到环境变量PATH的意思是,当一些程序需要某些依赖或者要打开某些程序时,系统会自动前往PATH下寻找对应项。**一般需要重启使环境变量生效。** -- **将OpenOCD解压到一个文件夹里**,稍后需要在VSCode的插件中设置这个路径。 +- **将OpenOCD解压到一个文件夹里**,稍后需要在VSCode的插件中设置这个路径。(will be deprecated soon,请注意这种方法将会在主分支发布正式版的时候删除) -- CubeMX生成代码的时候工具链选择makefile + + +- **CubeMX生成代码**: + + 在project manager标签页工具链选择makefile ![image-20221112173534670](assets\image-20221112173534670.png) @@ -214,9 +224,9 @@ ITM是instrument trace macrocell指令追踪宏单元的缩写,它用于提供 ![image-20221112174211802](assets\image-20221112174211802.png) Makefile就是我们要使用的构建规则文件。 - + > **如果你使用basic_framework,不需要重新生成代码。** - + ## VSCode编译和调试配置 @@ -341,7 +351,7 @@ Makefile的大部分内容在CubeMX初始化的时候就会帮你生成。如果 > 在VSCode中调试不能像Keil一样查看变量动态变化,但是支持以外的所有操作,如查看外设和反汇编代码,设置断点触发方式等。 > -> 用于调试的配置参考这篇博客:[Cortex-debug 调试器使用介绍](https://blog.csdn.net/qq_40833810/article/details/106713462),这里包含了一些背景知识的介绍。你也可以直接查看下面的教程。 +> **用于调试的配置参考这篇博客**:[Cortex-debug 调试器使用介绍](https://blog.csdn.net/qq_40833810/article/details/106713462),这里包含了一些背景知识的介绍。你也可以直接查看下面的教程。 你需要配置**arm gnu工具链的路径**(工具链包括编译器、链接器和调试器等),**OpenOCD的路径**(使得GDB调试器可以找到OpenOCD并调用它,从而连接硬件调试器如j-link等),**JlinkGDBServer**的路径,以及该工作区(文件夹)的**launch.json文件**(用于启动vscode的调试任务)。 @@ -353,13 +363,15 @@ VSCode `ctrl+,`进入设置,通过`搜索`找到cortex-debug插件的设置。 **注意**,windows下路径需要使用两个反斜杠`\\`代表下一级文件夹。 +> 如果你使用附录5中的方法安装,前两个的路径都在Msys2/mingw64/bin下。 + ***其他配置需要的文件已经全部在basic_framework中提供***,包括`openocd.cfg STM32F407.svd .vscode/launch.json`。 ![image-20221115215531879](assets/image-20221115215531879.png)