当前位置: 首页 > news >正文

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

一、目的

        在博文《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模式

        

         

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

         

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

 

 

        完整的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/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"]}]
}

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

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

         

 

        

http://www.lryc.cn/news/259882.html

相关文章:

  • LeetCode2697. Lexicographically Smallest Palindrome
  • Leetcode 40 组合总和 II
  • 智慧灯杆技术应用分析
  • 手动搭建koa+ts项目框架(ts项目实现开发阶段实时查看)
  • 在Nexus上配置Docker镜像仓库
  • 深入理解C语言的函数参数
  • 【C++】策略模式
  • 什么时候使用匿名类,匿名类解决了什么问题?为什么需要匿名类 ?
  • 怎么让gpt帮忙改文章 (1) 快码论文
  • Android源码下载流程
  • ArrayList与顺序表(带完整实例)
  • 智能冶钢厂环境监控与设备控制系统(边缘物联网网关)
  • 【Python】conda镜像配置,.condarc文件详解,channel镜像
  • 实战章节:在Linux上部署各类软件
  • 铭飞CMS list 接口 SQL注入漏洞复现
  • Linux指令初始
  • Nginx命令---启动nginx
  • 【UE5】监控摄像头效果(下)
  • binkw32.dll丢失怎么办?这5个方法都可以解决binkw32.dll丢失问题
  • C语言-每日刷题练习
  • Qt设置类似于qq登录页面(ikun)
  • Qt 如何使用VTK显示点云
  • Ganache结合内网穿透实现远程或不同局域网进行连接访问
  • Qt槽函数不响应不执行的一种原因:ui提升导致重名
  • vuepress路径问题,导致图片不显示
  • QT 重定向qdebug输出到自绘界面
  • 前端(一):HTML+CSS
  • 如何使用Matlab完成窗口与子窗口
  • Threejs之相机基础
  • 2024SIA上海国际轴承工业展览会 ▎参行业盛会 展轴研风采