HPM5300系列--第二篇 Visual Studio Code开发环境以及多种调试器调试模式

注意:该版本用的HPM-SDK是1.4之前的版本​​​​​​​

一、目的

        在博文《HPM5300系列--第一篇 命令行开发调试环境搭建》、《HPM6750系列--第四篇 搭建Visual Studio Code开发调试环境》中我们介绍了命令行方式开发环境,也介绍了HPM6750evkmini开发板如何使用Visual Studio Code进行开发调试(其中调试方式使用openocd + ft2232的组合方式)。

        本篇我们主要介绍HPM5300evk开发板在vscode如何开发调试,其中关于编译环境的构建请参考 《HPM6750系列--第四篇 搭建Visual Studio Code开发调试环境》(必须要看)。

        

二、介绍

        必须查看 《HPM6750系列--第四篇 搭建Visual Studio Code开发调试环境》章节创建工程目录并拷贝示例工程之前的内容。

        1.打开工程
cd ~/workspace/work/hpm/hpm5300evk/hello_world
code .

        由于HPM5300evk开发板有FT2232芯片,故可以使用openocd进行调试;另外板载有JTAG接口,可以配合Jlink调试器进行调试。

        

        2.配置调试器启动文件

        使用openocd + ft2232模式

        

        如果使用HPM-SDK 1.4的版本,需要将configFiles中的"soc/hpm5361.cfg"修改为"soc/hpm5300.cfg" 

         


 

        使用openocd + jlink模式(板子上的跳线帽需要都取消掉)

        需要安装jlink驱动

https://www.segger.com/downloads/jlink/icon-default.png?t=N7T8https://www.segger.com/downloads/jlink/

        如果使用HPM-SDK 1.4的版本,需要将configFiles中的"soc/hpm5361.cfg"修改为"soc/hpm5300.cfg" 


 

         

        使用jlink调试器模式(板子上的跳线帽需要都取消掉)

 

        完整的launch.json文件内容(hpm-sdk 1.4之前的版本)

{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "HPM Debug OpenOCD FT2232",
            "cwd": "${workspaceRoot}",
            "executable": "${command:cmake.launchTargetPath}",
            "request": "launch",
            "type": "cortex-debug",
            "servertype": "openocd",
            "gdbPath" : "${env:GNURISCV_TOOLCHAIN_PATH}/bin/riscv32-unknown-elf-gdb",
            "searchDir": ["${env:OPENOCD_SCRIPTS}"],
            "device": "HPM5361",
            "configFiles": [
                "probes/ft2232.cfg",
                "soc/hpm5361.cfg",
                "boards/hpm5300evk.cfg"
            ],
            "interface": "jtag",
            //"svdFile":"${env:HPM_SDK_BASE}/soc/HPM5361/HPM5361_svd.xml",
            "runToEntryPoint": "main",
            // Work around for stopping at main on restart
            "postRestartCommands": [
                "break main",
                "continue"
            ]
        },
        {
            "name": "HPM Debug OpenOCD JLINK",
            "cwd": "${workspaceRoot}",
            "executable": "${command:cmake.launchTargetPath}",
            "request": "launch",
            "type": "cortex-debug",
            "servertype": "openocd",
            "gdbPath" : "${env:GNURISCV_TOOLCHAIN_PATH}/bin/riscv32-unknown-elf-gdb",
            "searchDir": ["${env:OPENOCD_SCRIPTS}","${env:HPM_OPENOCD_PATH}/tcl"],
            "device": "HPM5361",
            "configFiles": [
                "probes/jlink.cfg",
                "soc/hpm5361.cfg",
                "boards/hpm5300evk.cfg"
            ],
            "interface": "jtag",
            "svdFile":"${env:HPM_SDK_BASE}/soc/HPM5361/HPM5361_svd.xml",
            "runToEntryPoint": "main",
            // Work around for stopping at main on restart
            "postRestartCommands": [
                "break main",
                "continue"
            ]
        },
        {
            "name": "HPM Debug Jlink",
            "cwd": "${workspaceRoot}",
            "executable": "${command:cmake.launchTargetPath}",
            "request": "launch",
            "type": "cortex-debug",
            "servertype": "jlink",
            "gdbPath" : "${env:GNURISCV_TOOLCHAIN_PATH}/bin/riscv32-unknown-elf-gdb",
            "device": "HPM5361xCBx",
            "interface": "jtag",
            "svdFile":"${env:HPM_SDK_BASE}/soc/HPM5361/HPM5361_svd.xml",
            "runToEntryPoint": "main",
            // Work around for stopping at main on restart
            "postRestartCommands": [
                "break main",
                "continue"
            ]
        }
    ]
}

        hpm-sdk 1.4版本修改后的launch.json

{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "HPM Debug OpenOCD FT2232",
            "cwd": "${workspaceRoot}",
            "executable": "${command:cmake.launchTargetPath}",
            "request": "launch",
            "type": "cortex-debug",
            "servertype": "openocd",
            "gdbPath" : "${env:GNURISCV_TOOLCHAIN_PATH}/bin/riscv32-unknown-elf-gdb",
            "searchDir": ["${env:OPENOCD_SCRIPTS}"],
            "device": "HPM5361",
            "configFiles": [
                "probes/ft2232.cfg",
                "soc/hpm5300.cfg",
                "boards/hpm5300evk.cfg"
            ],
            "interface": "jtag",
            "svdFile":"${env:HPM_SDK_BASE}/soc/HPM5361/HPM5361_svd.xml",
            "runToEntryPoint": "main",
            // Work around for stopping at main on restart
            "postRestartCommands": [
                "break main",
                "continue"
            ]
        },
        {
            "name": "HPM Debug OpenOCD JLINK",
            "cwd": "${workspaceRoot}",
            "executable": "${command:cmake.launchTargetPath}",
            "request": "launch",
            "type": "cortex-debug",
            "servertype": "openocd",
            "gdbPath" : "${env:GNURISCV_TOOLCHAIN_PATH}/bin/riscv32-unknown-elf-gdb",
            "searchDir": ["${env:OPENOCD_SCRIPTS}","${env:HPM_OPENOCD_PATH}/tcl"],
            "device": "HPM5361",
            "configFiles": [
                "probes/jlink.cfg",
                "soc/hpm5300.cfg",
                "boards/hpm5300evk.cfg"
            ],
            "interface": "jtag",
            "svdFile":"${env:HPM_SDK_BASE}/soc/HPM5361/HPM5361_svd.xml",
            "runToEntryPoint": "main",
            // Work around for stopping at main on restart
            "postRestartCommands": [
                "break main",
                "continue"
            ]
        },
        {
            "name": "HPM Debug Jlink",
            "cwd": "${workspaceRoot}",
            "executable": "${command:cmake.launchTargetPath}",
            "request": "launch",
            "type": "cortex-debug",
            "servertype": "jlink",
            "gdbPath" : "${env:GNURISCV_TOOLCHAIN_PATH}/bin/riscv32-unknown-elf-gdb",
            "device": "HPM5361xCBx",
            "interface": "jtag",
            "svdFile":"${env:HPM_SDK_BASE}/soc/HPM5361/HPM5361_svd.xml",
            "runToEntryPoint": "main",
            // Work around for stopping at main on restart
            "postRestartCommands": [
                "break main",
                "continue"
            ]
        }
    ]
}

        有了以上的配置后,三种方式都可以根据需要自行选择。

        如果你觉得有用,麻烦关注一下公众号哈。 

         

        

  • 42
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 要打开 sn-auth-list-crypt-image(1).hpm 文件,您需要使用兼容该文件格式的软件。 hpm 格式通常与 HP 的加密软件有关,所以您需要在您的计算机上安装该软件并使用其来打开该文件。 如果您没有安装相应的软件,可能需要从 HP 的网站上下载并安装。 ### 回答2: 若要打开sn-auth-list-crypt-image(1).hpm文件,我们需要了解hpm文件的格式和内容类型。通常,.hpm文件是移动设备或硬件系统中用于固件或软件升级的文件格式。在尝试打开文件之前,我们可以按照以下步骤进行操作: 1. 首先,确保您计算机上有一个能够打开.hpm文件的程序。常见的程序包括厂商提供的升级软件或固件管理器。如果没有合适的程序,请尝试搜索厂商网站以获取相关软件程序或工具。 2. 如果找到了适合的软件,将其下载并安装到您的计算机上。确保软件与您的操作系统兼容。 3. 打开所安装的软件,并查找类似“打开”或“导入”等选项。选择此选项后,您将看到一个文件浏览器窗口。 4. 在文件浏览器窗口中,浏览到存储了sn-auth-list-crypt-image(1).hpm文件的位置。选中该文件,然后点击“打开”或类似按钮。 5. 程序将开始解析.hpm文件,并显示相关信息,如文件版本、固件或软件升级的内容和说明等。 请注意,具体操作步骤可能因软件或系统而异。如果上述步骤无效,或者无法找到适合的软件来打开.hpm文件,可以尝试联系相关厂商或开发人员寻求帮助或获取更多信息。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值