88 lines
2.9 KiB
Markdown
88 lines
2.9 KiB
Markdown
# 调试XiUOS的技巧:使用JLink调试KD233开发板
|
||
|
||
# 调试环境
|
||
|
||
**操作系统:** ubuntu18.04 [ https://ubuntu.com/download/desktop](https://ubuntu.com/download/desktop)
|
||
|
||
调试工具:JLink(实物如图)
|
||
|
||

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

|
||
|
||
# 调试步骤
|
||
|
||
## 步骤一
|
||
1.下载JLink驱动(Ubuntu下载DEB包)
|
||
下载地址:[SEGGER - The Embedded Experts - Downloads - J-Link / J-Trace](https://www.segger.com/downloads/jlink),[推荐下载地址 http://101.36.126.201:8011/JLink_Linux_V720_x86_64.deb](http://101.36.126.201:8011/JLink_Linux_V720_x86_64.deb)
|
||
|
||

|
||
|
||
|
||
2.安装JLink驱动
|
||
```bash
|
||
$ dpkg -i JLink_Linux_V632i_x86_64.deb
|
||
```
|
||
V后面为版本号,以下载的为准,安装完成后将JLink连接到计算机,运行JLinkExe检查其驱动是否已经正确安装,如果是,将看到以下信息:
|
||
```bash
|
||
$ 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)](https://github.com/kendryte/openocd-kendryte/releases),推荐下载地址为:[http://101.36.126.201:8011/kendryte-openocd-0.2.3-ubuntu64.tar.gz](http://101.36.126.201:8011/kendryte-openocd-0.2.3-ubuntu64.tar.gz)
|
||
|
||

|
||
|
||
|
||
2.安装openocd
|
||
```bash
|
||
$ 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的配置文件
|
||
```bash
|
||
$ sudo vim /opt/kendryte-openocd/tcl/openocd.cfg
|
||
```
|
||
|
||

|
||
</br>
|
||
序列号从JLink的背面标签可以查看,也可以在JLink连接计算机后敲击JLinkExe命令看到。
|
||
|
||
4.打开openocd,执行以下命令开始调试
|
||
```bash
|
||
$ cd /opt/kendryte-openocd
|
||
$ ./bin/openocd -f ./tcl/openocd.cfg
|
||
```
|
||
注意:这一步如果报出Error,重新插拔JLink解决
|
||
|
||
## 步骤三
|
||
|
||
1.步骤二打开openopcd后,继续运行gdb:
|
||
```bash
|
||
$ 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命令来调试了。
|