首页 > 编程语言 >RV-LINK:Eclipse 使用 RV-LINK 调试 RISC-V 程序

RV-LINK:Eclipse 使用 RV-LINK 调试 RISC-V 程序

时间:2022-11-20 21:03:39浏览次数:71  
标签:RV target Eclipse LINK 串口 调试


RV-LINK 项目主页:​​https://gitee.com/zoomdy/RV-LINK​​​ 最新的文档请访问:​​https://gitee.com/zoomdy/RV-LINK/wikis​​,这里的内容可能没有及时更新。

前期准备

按照​​《GDB 使用 RV-LINK 仿真器调试 RISC-V 程序》​​准备好 RV-LINK,GDB,安装好 USB 驱动。

Eclipse

假设使用 Eclipse CDT + GNU MCU Eclipse 插件(可以通过 Eclipse Marketplace 安装),如果是 Windows,那么还需要 ​​GNU MCU Eclipse Windows Build Tools​​。

创建调试配置

RV-LINK:Eclipse 使用 RV-LINK 调试 RISC-V 程序_d3

  • 新建 GDB Hardware Debugging 类调试配置,
  • Debugger 标签页的 GDB Command 填入 ​​riscv-none-embed-gdb -ex "set arch riscv:rv32"​​​,riscv-none-embed-gdb 所在的路径一定要加到 PATH 环境变量,否则找不到程序; ​​-ex "set arch riscv:rv32"​​​是必须设置的,否则报告错误​​bfd requires xlen 8, but target has xlen 4​
  • JTAG Device 选择 ​​Generic Serial​​,
  • GDB Connection String 填入 RV-LINK 串口号,Windows 填入 com3、com4 等,Linux 填入 /dev/ttyACM0、/dev/ttyACM1 等。

RV-LINK:Eclipse 使用 RV-LINK 调试 RISC-V 程序_串口_02

  • Startup 标签页的 Reset and Delay 和 Halt 选项勾上,这两个选项没勾,可能会导致 Flash 下载失败。
  • Set brekpoint at 选项勾上,输入框填入 ​​main​​,将在 main 函数停下来。
  • Resume 选项勾上。

以上是典型配置,可以按需求修改配置。

点击 Debug 按钮就可以开始调试了,下载程序时,进度停留在 94%,如下图所示:

RV-LINK:Eclipse 使用 RV-LINK 调试 RISC-V 程序_d3_03


其它 Eclipse 窗口可能处于卡顿状态,等程序下载完成后就会恢复正常,这确实不太友好。

注意:在进度停留在 94% ,即下载程序期间,不要去点击调试按钮。这段时间就静静地做个美男子(美女子)吧!不会很长,GD32VF103 的 Flash 下载速度约 4KB/s。

常见的错误

No such file or directory

RV-LINK:Eclipse 使用 RV-LINK 调试 RISC-V 程序_eclipse_04

Error message from debugger back end:
com3: No such file or directory.

可能的原因有:

  • 串口号错误,通过设备管理器查看正确的串口号,如果设备管理器没有看到串口,那么检查 RV-LINK 是否正确连接,USB 串口驱动是否正确安装。
  • 串口被占用,串口被其它程序占用,比如已经打开了一个调试进程,又打开同样的调试进程就会报这个错误。
  • 如果在虚拟机里跑,检查一下有没有将 USB 串口映射到虚拟机里。

the target is not connected

RV-LINK:Eclipse 使用 RV-LINK 调试 RISC-V 程序_串口_05

Error message from debugger back end:
Remote replied unexpectedly to 'vMustReplyEmpty':
RV-LINK ERROR: the target is not connected!
RV-LINK: Longan Nano, configed for GD32VF103 family.

可能的原因有:

  • 目标板没有上电,检查目标板的电源。
  • JTAG 连线有问题,检查 JTAG 连线,任何一根线有短路或断路,都无法连接上。

the target is not supported

Error message from debugger back end:
Remote replied unexpectedly to 'vMustReplyEmpty':
RV-LINK ERROR: the target is not supported, upgrade RV-LINK firmware!
RV-LINK: Longan Nano, configed for GD32VF103 family.

可能的原因有:

  • 所连接的目标 MCU 不被当前的 RV-LINK 支持,例如当前 RV-LINK 配置成支持 GD32VF103,而实际连接的是 K210,就会报告这个错误。需要更换 RV-LINK 固件,如果目标 MCU 还没有被 RV-LINK 支持,那么需要在 RV-LINK 中添加对该 MCU 的支持。


标签:RV,target,Eclipse,LINK,串口,调试
From: https://blog.51cto.com/zoomdy/5872031

相关文章