使用VSCode的Cortex Debug调试任意固件

版权声明:转载需注明来自于 vllogic.com

前言:除了常见调试外,这个方法还适用于多个软件通过单个Vllink同时访问SOC上的多个JTAG设备

标准配置方法 可跳过

  1. 安装VSCode

  2. VSCode中安装Cortex-Debug插件,安装完成后关闭VSCode

  3. 安装gcc-arm-none-eabi-10.3-2021.10

  4. 下载并解包OpenOCD

  5. 在系统PATH中增加:

    • {GCC的绝对路径}\gcc-arm-none-eabi_10-2021-10\bin

    • {OpenOCD的绝对路径}\openocd\bin

  6. 进入需要调试的工程目录,执行构建,生成.out.axf可调试文件

  7. 新建vscode_cortex_debug文件夹

  8. 进入vscode_cortex_debug文件夹,新建.vscode文件夹

  9. 新建vscode_cortex_debug.code-workspace文本,填入以下内容

    {
        "folders": [{"path": "."}],
        "settings": {"cortex-debug.variableUseNaturalFormat":false}
    }
    
  10. 进入.vscode文件夹,新建launch.json文本,此处提供几个模板,合理修改后保存

    • 模板一:雅特力 AT32F405

    {
        "version": "0.2.0",
        "configurations": [
            {
                "name": "Cortex Debug",
                "cwd": "${workspaceFolder}",
                "executable": "../objects/flash_write_read.axf",
                "request": "launch",
                "type": "cortex-debug",
                "runToEntryPoint": "main",
                //"gdbPath": "../vscode_cortex_debug.tools/arm-none-eabi-gdb.exe",
                "servertype": "openocd",
                //"serverpath": "../vscode_cortex_debug.tools/openocd/bin/openocd.exe",
                "device": "AT32F405",
                "configFiles": [
                    "interface/cmsis-dap.cfg",
                    "target/at32f405xx.cfg"
                ]
            }
        ]
    }
    
    • 模板二:爱科微 AIC8800M

    {
        "version": "0.2.0",
        "configurations": [
            {
                "name": "Cortex Debug",
                "cwd": "${workspaceFolder}",
                "executable": "../project/Exe/project.out",
                "request": "launch",
                "type": "cortex-debug",
                "runToEntryPoint": "main",
                //"gdbPath": "../vscode_cortex_debug.tools/arm-none-eabi-gdb.exe",
                "servertype": "openocd",
                //"serverpath": "../vscode_cortex_debug.tools/openocd/bin/openocd.exe",
                "device": "AIC8800M",
                "configFiles": [
                    "interface/cmsis-dap.cfg",
                    "target/aic8800.cfg"
                ]
            }
        ]
    }
    
  11. 双击vscode_cortex_debug.code-workspace打开工程,按F5即启动调试

解包即用版本

  1. 安装VSCode

  2. VSCode中安装Cortex-Debug插件,安装完成后关闭VSCode

  3. 进入需要调试的工程目录,执行构建,生成.out.axf可调试文件

  4. 下载整合包,此包集成AT32F405AIC8800MH7P20调试工程以及必要的GDB、OpenOCD二进制文件

  5. 解压整合包,根据目标芯片打开对应的调试工程,如:vscode_cortex_debug.H7P20/vscode_cortex_debug.code-workspace

  6. launch.json中的"executable"路径修改为可调试文件的相对路径,如是其他芯片,还需要修改"device"项及 "configFiles"

  7. F5即启动调试