CubeMX+VSCode+Ozone的STM32开发工作流(三)利用Ozone进行可视化调试和代码分析

本文介绍如何使用Ozone和J-Link进行嵌入式项目的调试,涵盖软件安装、项目配置、变量动态查看及日志打印等功能,并提供常见问题解决办法。

neozng1@hnu.edu.cn

本教程的示例代码是笔者参加RoboMaster机甲大师赛为机器人编写的控制器框架,你可以直接克隆仓库,阅读仓库下的Markdown文档获得更好的体验,记得点一个小⭐: basic_framework: basic_framework (gitee.com)
所有安装包也可以在此百度网盘链接下获得:
链接: https://pan.baidu.com/s/1sO_EI4cToyIAcScOQx-JSg?pwd=6666
提取码:6666
Ozone暂时只支持jlink。
22/11/16 重要更新:安装Ozone3.24 32-bit和J-Link7.22b目前可以支持J-link和 dap-link/cmsis-dap

软件安装

安装Ozone和J-link工具箱(驱动、gdb以及各种调试工具)。安装包都在网盘链接。

注意,如果希望支持daplink(包括正点原子无线调试器),请务必安装网盘对应的版本(Ozone3.24 32-bit和J-Link7.22b)。

经过测试发现只有32位的ozone3.24支持daplink。

应该先安装Ozone,再安装jlink。以下为步骤:

  1. 安装Ozone

这一步注意选择install a new instance(安装一个新的实例)。后续一路确认即可。

2. 安装jlink

### STM32CubeMXOzone调试器集成配置 #### 配置环境准备 为了使STM32CubeMX能够与Ozone调试器顺利工作,在项目初始化阶段需确保安装并正确设置了必要的软件组件。这包括但不限于安装最新版本的STM32CubeMX以及对应的嵌入式开发环境,比如VSCode加上相应的插件支持包[^1]。 #### 创建新工程 启动STM32CubeMX后创建一个新的工程项目时,选择目标微控制器型号,并通过图形界面完成外设功能的选择参数设定。在此过程中无需特别关注Ozone的具体设置选项,因为这些将在后续步骤中处理。 #### 设置调试接口 进入项目的“Project Manager”标签页下的“Settings”,找到“Debug”部分。这里可以选择不同的调试方式;对于希望连接到Ozone的情况来说,应该挑选JTAG/SWD作为物理层通信协议。同时确认所选设备已正确识别并且状态显示正常。 #### 安装驱动程序 如果尚未安装Segger J-Link驱动,则现在需要下载并按照官方指南完成这一操作。该驱动允许计算机上的IDE(如VSCode)经由USB端口同实际硬件建立联系,从而实现数据交换及控制指令传输等功能。 #### Ozone特定配置 打开Ozone应用程序,利用其内置向导来定义新的目标连接属性。输入正确的芯片类型其他必要信息之后保存设置文件(.cfg),以便稍后可以在编译链接期间指定给构建工具链使用。此外还需注意调整Ozone内部有关内存映射表、断点管理等方面的内容以适应具体应用场景需求[^2]。 #### 测试验证 最后一步是在编写好测试代码的基础上尝试运行一次完整的烧录流程。借助于之前所做的各项准备工作,此时应当可以无障碍地看到源码级调试窗口内呈现出预期的行为模式——即成功实现了STM32CubeMX生成框架基础上对Ozone调试的支持。 ```cpp // 示例C++代码片段展示如何在main函数入口处设置断点等待外部触发 int main(void){ HAL_Init(); // 初始化HAL库 __DEBUG_BREAK(); // 插入硬编码断点命令用于暂停执行流直至用户交互恢复 } ```
评论 4
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值