【STM32H7】第6章 RL-USB调试组件使用方法(重要)
论坛原始地址(持续更新):http://www.armbbs.cn/forum.php?mod=viewthread&tid=99710
第6章 RL-USB调试组件使用方法(重要)
本章节为大家讲解RL-USB的调试方法,RL-USB的调试组件和Event Recoder都可以实时监控运行状态。设置比较简单。
6.1 初学者重要提示
6.2 RL-USB任务执行情况
6.3 RL-USB调试组件
6.4 RL-USB使用Event Recorder实时展示执行细节
6.5 RL-USB使用Event Statistics实时展示任务执行时间
6.6 RL-USB使用System Analyzer实时展示任务切换
6.7 实验例程说明
6.8 总结
6.1 初学者重要提示
- 本章节使用的例子是由前面移植章节配套的例子简单修改而来。另外,对于本章节配套的例子,大家仅需要知道如何使能调试功能即可,具体代码实现的功能会在后面章节逐渐讲解。
- 如果不熟悉Event Recorder的使用,务必看下V7用户手册的第8章。http://www.armbbs.cn/forum.php?mod=viewthread&tid=86980 。
6.2 RL-USB任务执行情况
MDK进入调试状态后,选择周期更新:
然后打开调试组件,注意和RTX4的调试组件位置不同:
然后点击MDK的全速运行,
至此,就可以动态实时查看RTX5的运行状态:
6.3 RL-USB调试组件
RL-USB和RTX5调试组件的使用方法一样,打开调试组件:
效果如下:
6.4 RL-USB使用Event Recorder实时展现执行细节
下面分步说明RTX5的Event Recorder调试方法。关于JLINK,STLINK,CMSIS-DAP使用Event Recorder的注意事项在V7开发板用户手册的8章节有详细说明:
http://www.armbbs.cn/forum.php?mod=viewthread&tid=86980 。
6.4.1 第1步,设置使用Event Recorder模式的IO输出
使能bsp.h文件里面的宏定义,0表示禁止Event Recorder,1表示使能。
这个宏定义控制的是bsp.c文件里面的Event Recorder的初始化。
#if Enable_EventRecorder == 1 /* 初始化EventRecorder并开启 */ EventRecorderInitialize(EventRecordAll, 1U); EventRecorderStart(); #endif
设置完毕后,配置STDOUT使用Event Recorder(EVR)。
6.4.2 第2步,使用RL-USB 的调试版本
选择RL-USB的调试版本:
6.4.3 第3步,调试信息配置
本章配套例子是采样下面的配置方法,大家移植时,可以先用下面的配置方式,调试通后再修改不同配置参数看效果:
6.4.4 第4步,实际效果
进入MDK调试状态,全速运行,然后打开Event Recorder组件:
效果如下:
6.5 RL-USB使用Event Statistics实时展示任务执行时间
进入MDK调试状态,全速运行,然后打开Event Statistics组件:
效果如下:
使用这个功能注意两点:
- 这个信息的展示,MDK5一直是时好时坏,如果大家调试的时候没有展示这部分信息可以尝试下载程序后,板子重新上电,下载器重新插拔,然后再使用MDK5调试。如果还是无法正常展示,就多试几次(注,进入调试状态后,可以狂按几次RST按钮,有时候也会有消息)。
- 为了保证测试时间是正确的,这个地方的主频一定要和芯片的主频一致,使用JLINK,STLINK,CMSIS-DAP等都是一样的。
- 这个Enable选项勾不勾都没有关系,推荐大家不勾,防止无法正常进入调试模式。
- Corte主频配置需要大家先勾上Enable,设置完毕后,再取消对勾。
6.6 RL-USB使用System Analyzer实时展示任务切换
进入MDK调试状态,全速运行,然后打开System Analyzer组件:
效果如下:
6.7 实验例程说明
本章节仅仅是教会大家调试方法,具体实验内容还不做讲解,仅需学会调试功能的开启方法即可。
本章节配套例子:V7-4003_RL-USB Debug Mode。
6.8 总结
本章节为大家讲解这么多,建议实际操作演练下,实践出真知。