硬汉嵌入式论坛

 找回密码
 立即注册
查看: 1016|回复: 7
收起左侧

[RTOS Trace] H7-TOOL的uCOS-II Trace操作说明,从2.22版本固件正式支持(已发布,2023-07-15)

[复制链接]

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106660
QQ
发表于 2023-6-29 00:36:11 | 显示全部楼层 |阅读模式
从TOOL的2.22版本固件开始正式支持,这几天将发布2.22版本固件。uCOS-II的Trace不同于前面的已经发布的uCOS-III,RTX5和ThreadX Trace。

得写个操作说明,因为有个几个变量如果大家的工程检索不到,需要手动填写,还有FreeRTOS,这两个的玩法情况是一样的。

【RTOS Trace操作说明】
https://www.armbbs.cn/forum.php?mod=viewthread&tid=114824

【uCOS-II工程注意事项】
1、推荐使用2.92及其以上版本,含最新的2.93.x
2、创建任务请使用函数OSTaskCreateExt,函数OSTaskCreate创建的任务信息不全。
3、使能uCOS-II的调试信息和统计任务宏定义,如果大家的移植没问题都可以正常展示:
     使能OS_DEBUG_EN
     使能OS_TASK_STAT_EN
     使能OS_EVENT_NAME_EN
     使能OS_TASK_CREATE_EXT_EN
     使能OS_EVENT_EN, 并设置OS_MAX_EVENTS > 0u
     使能OSFlagEn,并设置OS_MAX_FLAGS > 0u

【uCOS-II操作注意事项】
默认uCOS-II的任务控制块结构体成员地址是按照固定方式设置的,但此结构体里面宏定义非常多,导致成员的地址不是固定的,所以需要大家根据需要手动修改。

手动修改也比较简单。点击此按钮

1.png

打开uCOS-II.lua文件,修改这几个变量:

下载 (8).png

为了方便大家修改,执行了一个C函数,大家使用自己的工程运行一次就可以打印出来:
[C] 纯文本查看 复制代码
void TaskTcbPrintf(void)
{
        printf("\"OSTCBStkPtr_off\",    %d,\r\n", (int)&((((struct os_tcb*)0)->OSTCBStkPtr)));
        printf("\"OSTCBStkBottom_off\", %d,\r\n", (int)&((((struct os_tcb*)0)->OSTCBStkBottom)));        
        printf("\"OSTCBStkSize_off\",   %d,\r\n", (int)&((((struct os_tcb*)0)->OSTCBStkSize)));
        printf("\"OSTCBNext_off\",      %d,\r\n", (int)&((((struct os_tcb*)0)->OSTCBNext)));
        printf("\"OSTCBPrev_off\",      %d,\r\n", (int)&((((struct os_tcb*)0)->OSTCBPrev)));
        printf("\"OSTCBDly_off\",       %d,\r\n", (int)&((((struct os_tcb*)0)->OSTCBDly)));
        printf("\"OSTCBStat_off\",      %d,\r\n", (int)&((((struct os_tcb*)0)->OSTCBStat)));
        printf("\"OSTCBStatPend_off\",  %d,\r\n", (int)&((((struct os_tcb*)0)->OSTCBStatPend)));
        printf("\"OSTCBPrio_off\",      %d,\r\n", (int)&((((struct os_tcb*)0)->OSTCBPrio)));
        printf("\"OSTCBCtxSwCtr_off\",  %d,\r\n", (int)&((((struct os_tcb*)0)->OSTCBCtxSwCtr)));        
        printf("\"OSTCBTaskName_off\",  %d,\r\n", (int)&((((struct os_tcb*)0)->OSTCBTaskName)));                
}


打印出来的数据:

下载 (10).png

覆盖原有的即可,覆盖后记得保存文件,另外这个文件是GBK编码格式的

下载 (9).png

下面是解析的动态效果图:

12.gif
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106660
QQ
 楼主| 发表于 2023-6-30 00:51:46 | 显示全部楼层
已经发布。
回复

使用道具 举报

8

主题

25

回帖

49

积分

初级会员

积分
49
发表于 2023-7-4 09:11:15 | 显示全部楼层
2.22到底发布了没有?没找到
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106660
QQ
 楼主| 发表于 2023-7-4 09:16:56 | 显示全部楼层
panda1985 发表于 2023-7-4 09:11
2.22到底发布了没有?没找到

还有发布,优先把新作功能的操作说明先整理好发布了。

不出意外本周发布,届时专门发消息
回复

使用道具 举报

8

主题

155

回帖

179

积分

初级会员

H7 TOOL 大法好!

积分
179
发表于 2023-7-4 12:45:59 | 显示全部楼层
eric2013 发表于 2023-7-4 09:16
还有发布,优先把新作功能的操作说明先整理好发布了。

不出意外本周发布,届时专门发消息

回复

使用道具 举报

8

主题

155

回帖

179

积分

初级会员

H7 TOOL 大法好!

积分
179
发表于 2023-7-4 12:47:46 | 显示全部楼层
eric2013 发表于 2023-7-4 09:16
还有发布,优先把新作功能的操作说明先整理好发布了。

不出意外本周发布,届时专门发消息

老师,希望能以FreeRTOS为例子,演示操作过程, 只因我太笨了
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106660
QQ
 楼主| 发表于 2023-7-4 15:29:06 | 显示全部楼层
312456990 发表于 2023-7-4 12:47
老师,希望能以FreeRTOS为例子,演示操作过程, 只因我太笨了

FreeRTOS也会单独开操作说明贴
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106660
QQ
 楼主| 发表于 2023-7-15 00:45:49 | 显示全部楼层
创建任务请使用函数OSTaskCreateExt,函数OSTaskCreate创建的任务信息不全。

另外2.22版本固件微更:




回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-4-28 06:18 , Processed in 0.186804 second(s), 29 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表