xuos-web/docs/doc/appdev/debug/Qzone-stm32f407-st-discover...

5.5 KiB
Raw Blame History

调试XiUOS的技巧使用Qzone调试stm32f407-st-discovery开发板

调试XiUOS的技巧使用JLink调试STM32F407-discovery开发板

调试环境

操作系统ubuntu 18.04,windows 10

调试工具JLink已集成于开发板

调试开发板STM32F407-discovery实物如图

Ozone简介

Ozone是SEGGER公司开发的用于配合J-Link使用的调试工具可以在运行期间查看内存变量、调用栈及其他信息支持指令断点、内存断点、单步调试、内存监控等多种调试方式。使用Ozone调试stm32f407-st-discovery开发板须先使用SEGGER公司的工具ST-Link Reflash Utility将其板载ST-Link芯片刷成J-Link固件该工具后续也可将板载ST-Link固件恢复为ST-Link。下述Ozone与ST-Link Reflash Utility均可以在SEGGER官网下载到。

调试步骤

步骤一 (Windows环境下)

切换板载STLink芯片固件至JLink固件: 下载安装stlink驱动及烧录软件STM32_ST-LINK_Utility_v3.9.0。链接:http://xuos.io/downloads/STM32_ST-LINK_Utility_v3.9.0.exe

将开发板连接至计算机


开发板默认配置为stlink在设备管理器中可以看到连接的stlink设备

下载SEGGER官方工具下载地址[SEGGER - The Embedded Experts - Downloads - J-Link / J-Trace。](https://www.segger.com/downloads/jlink/#STLink_Reflash)链接:`https://www.segger.com/downloads/jlink/#STLink_Reflash`

将下载得到的zip压缩包解压运行STLinkReflash.exe。接受相关协议后进入以下界面

四个选项分别为:

[0].退出工具;
[1].将固件切换至JLink
[2].升级JLink固件
[3].将固件切换至STLink。

此处须选择1成功后得到以下输出 Selection>1

Preparing for FW update (can take up to 10 seconds)...O.K.
Identifying ST-LINK variant...O.K.: ST-LINK/V2-1
Performing firmware update...O.K.

此时在设备管理器中可以看到连接了jlink设备

步骤二Ubuntu环境下

下载JLink驱动Ubuntu下载DEB包

下载地址:SEGGER - The Embedded Experts - Downloads - J-Link / J-Trace


安装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>

步骤三Ubuntu环境下

下载OzoneUbuntu下载DEB包下载地址SEGGER - The Embedded Experts - Downloads - J-Link / J-Trace


安装Ozone:
dpkg -i Ozone_Linux_V322e_x86_64.deb

安装完成后使用运行“Ozone”命令启动Ozone图形界面按照下图设置调试项目期间需要选择XiUOS elf文件位置


选中设备:

选择XiaoShanOS_stm32f407-st-discovery.elf - 注意是elf文件


项目建立完成后点击左上角Download and reset program即可将elf下载至开发板并开始调试。此时左上角各按钮即可实现程序暂停、程序重启、单步跳过或单步陷入。注意Ozone下载完固件后会默认在main函数处暂停。