# 调试XiUOS的技巧:使用JLink调试KD233开发板

# 调试环境

操作系统: ubuntu18.04 https://ubuntu.com/download/desktop (opens new window)

调试工具:JLink(实物如图)

img

调试开发板:KD233(实物如图)

img

# 调试步骤

# 步骤一

1.下载JLink驱动(Ubuntu下载DEB包) 下载地址:SEGGER - The Embedded Experts - Downloads - J-Link / J-Trace (opens new window),推荐下载地址 http://xuos.io/downloads/JLink_Linux_V720_x86_64.deb (opens new window)

img

2.安装JLink驱动

$ dpkg -i JLink_Linux_V632i_x86_64.deb

V后面为版本号,以下载的为准,安装完成后将JLink连接到计算机,运行JLinkExe检查其驱动是否已经正确安装,如果是,将看到以下信息:

$ JLinkExe
SEGGER J-Link Commander V7. 0a (Compiled Apr 16 2021 15:36:25)
DLL version V7.00a, compiled Apr 16 2021 15:36:09

Connecting to J-Link via USB...O.K.
Firmware: J-Link OB-K22-SiFive compiled Mar  3 2021 14:13:05
Hardware version: V1.00
S/N: 979015641
VTref=3.300V


Type "connect" to establish a target connection, '?' for help
J-Link>

# 步骤二

1.安装openocd(下载Ubuntu版本64位) 下载地址:Releases · kendryte/openocd-kendryte (github.com) (opens new window),推荐下载地址为:http://xuos.io/downloads/kendryte-openocd-0.2.3-ubuntu64.tar.gz (opens new window)

img

2.安装openocd

$ sudo apt install libusb-dev libftdi-dev libhidapi-dev
$ sudo mv kendryte-openocd-0.2.3-ubuntu64.tar.gz /opt
$ cd /opt
$ sudo tar -zxvf kendryte-openocd-0.2.3-ubuntu64.tar.gz

3.修改openocd的配置文件

$ sudo vim /opt/kendryte-openocd/tcl/openocd.cfg

img
序列号从JLink的背面标签可以查看,也可以在JLink连接计算机后敲击JLinkExe命令看到。

4.打开openocd,执行以下命令开始调试

$ cd /opt/kendryte-openocd
$ ./bin/openocd -f ./tcl/openocd.cfg

注意:这一步如果报出Error,重新插拔JLink解决

# 步骤三

1.步骤二打开openopcd后,继续运行gdb:

$ riscv-none-embed-gdb (workspace)/build/XiUOS_kd233.elf --eval-command="target remote 127.0.0.1:3333"

其中,(workspace)为实际操作的XiUOS项目的绝对路径,XiUOS_kd233.elf是编译生成的文件。

127.0.0.1表示本地IP地址,也可以指定远程地址。

3333是openocd监听的端口号。成功连接openocd后,就可以使用load、break、continue等gdb命令来调试了。

Last Updated: 12/1/2021, 1:52:27 PM