0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何在Eclipse ThreadX RTOS中集成SystemView

麦克泰技术 来源:麦克泰技术 2025-05-06 17:11 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

SEGGER实时软件分析工具SystemView已经在ThreadX v6.4.2上进行了测试。SystemView从v3.60c版本支持Eclipse ThreadX(Azure RTOS),用户可以基于Systemview记录ThreadX操作系统事件并执行分析。我们基于SEGGER Embedded Studio开发环境描述如何在Eclipse ThreadX RTOS中集成SystemView。

使用Embedded Studio

创建ThreadX项目

1 启动Embedded Studio

2(可选)通过Tools->Package Manager为使用的处理器安装CPU支持包

3 创建工程

通过File ->New Project…,创建项目,为设备选择项目模板。例如“A C/C++ executable For NXP LPC4300.”,并输入项目名称。

4 测试创建的项目

通过J-Link连接目标硬件,构建项目并启动调试会话,运行项目,在Terminal窗口中看到Hello World输出。

5 获取ThreadX代码

在文件资源管理器中使用File ->Open Studio Folder…->Project Flolder打开工程文件目录,创建一个新文件夹‘threadx’,并添加ThreadX源代码,ThreadX代码包可以访问https://github.com/SEGGERMicro/threadx/releases/tag/v6.4.2_rel-segger获取。

6 将ThreadX添加到Embedded Studio项目中

通过右键单击Project->New Folder.... 创建一个新的文件夹ThreadX,在“ThreadX”中创建一个新文件夹common,并设置其Dynamic Flolder Options选项,将Source folder设置为“$(ProjectDir)/threadx/common”,设置Filter specification为*.c;*.h。选中“Recurse into subdirectoires”。

在‘ThreadX’中创建一个新文件夹‘ports’,并设置其Dynamic Flolder Options选项,将源文件夹设置为目标平台的移植代码,例如“$(ProjectDir)/threadx/ports/cortex_m4/gnu”。设置Filter specification为*.s;*. s;*. c;*.h。将Exclude specification设置为“*example*”。选中“Recurse into subdirectoires”。

通过右键单击Project->Options添加包含路径。选择“Common”配置,编辑Code->Preproessor->用User Include Directories,添加“$(ProjectDir) / threadx /common/inc”,添加移植包含文件,如$(ProjectDir)/threadx/ports/cortex_m4/gnu/inc。

7(可选)添加第三方库,hal,驱动程序等到项目中

8 添加应用程序代码

编辑main.c,添加#include“tx_api.h”,并修改main()函数实现。

9 使用Embedded Studio构建、开发和调试项目。

将SystemView

添加到ThreadX项目中

SystemView检测代码需要添加到ThreadX源代码中。建议使用https://github.com/SEGGERMicro/threadx上准备好的ThreadX源代码,如果使用其他来源的ThreadX,需手动修改应用修改。

1 将SystemView和RTT源添加到项目中

在文件资源管理器中打开项目,创建新的文件夹‘SystemView’并添加SystemView源代码。访问https://www.segger.com/downloads/systemview可以下载最新的SystemView代码。

创建一个新文件夹‘RTT’并添加SEGGER_RTT源代码。

将SystemView/SYSVIEW/*.c,SystemView/SYSVIEW/Sample/ThreadX/SEGGER_SYSVIEW_ThreadX.c,RTT/RTT/*.c,RTT/RTT/*.s及配置如SystemView/SYSVIEW/Sample/ThreadX/Cortex_M4/SEGGER_SYSVIEW_Config_ThreadX.c添加到项目。

添加include path,SystemView/Config,SystemView/SEGGER,SystemView/SYSVIEW,RTT/Config,RTT/RTT

2 根据目标系统调整SystemView和RTT配置

调整SEGGER_SYSVIEW_Config_ThreadX.c配置,设置SEGGER_SYSVIEW_Conf.h和SEGGER_RTT_Conf.h中的配置。

3 在SystemView中启用ThreadX跟踪

添加预处理器定义ENABLE_TRACE_API=1,在tx_api.h的末尾添加

#include“SEGGER_SYSVIEW_ThreadX.h”

在main()函数中调用SEGGER_SYSVIEW_Conf()。

完成以上操作,即可实现Systemview跟踪ThreadX系统行为了。

SystemView是一个用于嵌入式系统的实时记录和可视化工具。它揭示了应用程序的真实运行时行为,比调试器提供更多的系统洞察。麦克泰技术代理SEGGER全线产品,具有丰富的RTOS分析软件与调试工具使用方面的知识和经验,欢迎咨询。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 嵌入式
    +关注

    关注

    5186

    文章

    20149

    浏览量

    328851
  • threadx
    +关注

    关注

    0

    文章

    17

    浏览量

    14368
  • SystemView
    +关注

    关注

    5

    文章

    54

    浏览量

    25266
  • J-Link
    +关注

    关注

    0

    文章

    89

    浏览量

    23254

原文标题:如何在ThreadX应用中集成SystemView

文章出处:【微信号:麦克泰技术,微信公众号:麦克泰技术】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    Azure RTOS ThreadX的抢占任务应用实现与调试

    Azure RTOS ThreadX 是 Microsoft 提供的高级工业级实时操作系统 (RTOS)。它是专门为深度嵌入式实时 IoT 应用程序设计的。Azure RTOS
    发表于 07-12 11:17 2948次阅读

    何在裸机系统中集成SystemView

    SystemView是嵌入式系统可视化分析工具,提供了对应用程序的完整洞察,包括时间轴、CPU负载、运行时间信息、上下文运行时信息等可视化窗口,能够帮助开发者获得对应用运行时行为的深入理解。除μC
    的头像 发表于 12-29 11:07 3574次阅读
    如<b class='flag-5'>何在</b>裸机系统<b class='flag-5'>中集成</b><b class='flag-5'>SystemView</b>

    何在STM32CubeMX中集成Flexible Safety RTOS

    使用STM32处理器的用户,可以通过STM32Cube工具生成基础工程,免费评估功能安全操作系统Flexible Safety RTOS二进制库了。
    的头像 发表于 01-17 11:31 2259次阅读
    如<b class='flag-5'>何在</b>STM32CubeMX<b class='flag-5'>中集成</b>Flexible Safety <b class='flag-5'>RTOS</b>

    ThreadX-RTOS嵌入式开发

    的。ThreadX还包含了NETX、GUIX、FILEX、USBX等丰富的组件,几乎包含了嵌入式开发中的所有场景,这些组件和ThreadX-RTOS能够完美的配合完成一条龙的开发。ThreadX的github地址:[Azure
    发表于 08-24 06:04

    何在项目中使用RTOS分析工具SystemView

    。因此RTOS应用的实时行为对于开发者而言并不是非常直观的,此时就可以用到SystemView这样的RTOS可视化分析工具来帮助分析应用的实际执行过程。SystemView是SEGGE
    发表于 07-05 14:00

    何在Windows上运行ThreadX

    能够编译它,但对于 Azure RTOS/ThreadX,我找不到任何关于如何将它集成eclipse 项目中的信息。有谁知道它是如何工作的?
    发表于 12-06 07:10

    Express Logic的ThreadX RTOS协助开发

    Express Logic的ThreadX RTOS协助开发飞行系统 实时操作系统(RTOS)供货商Express Logic宣布,Avidyne公司已采用其ThreadX
    发表于 11-30 08:50 1302次阅读

    Imagination 和 Express Logic 宣布扩展 ThreadX RTOS 对 MIPS CPU 的支持

    Express Logic 的 ThreadX RTOS 现已支持 MIPS 64 位 I6400 CPU 2017 年 3 月 14 日 ─ Imagination Technologies
    发表于 04-10 10:12 1983次阅读

    嵌入式RTOS ThreadX 用户指南手册ver.4.0c

    嵌入式RTOS ThreadX user guide 手册 ver.4.0c
    发表于 05-09 10:45 34次下载

    适用于Arduino 101的Azure RTOS ThreadX线程

    电子发烧友网站提供《适用于Arduino 101的Azure RTOS ThreadX线程.zip》资料免费下载
    发表于 10-18 09:46 0次下载
    适用于Arduino 101的Azure <b class='flag-5'>RTOS</b> <b class='flag-5'>ThreadX</b>线程

    使用MM32F3270基于Azure RTOS (ThreadX) 的移植

    使用MM32F3270基于Azure RTOS (ThreadX) 的移植
    的头像 发表于 10-27 10:15 1354次阅读
    使用MM32F3270基于Azure <b class='flag-5'>RTOS</b> (<b class='flag-5'>ThreadX</b>) 的移植

    何在OpenMV生态系统中集成STM32Cube.AI生成的代码

    电子发烧友网站提供《如何在OpenMV生态系统中集成STM32Cube.AI生成的代码.pdf》资料免费下载
    发表于 09-20 09:55 0次下载
    如<b class='flag-5'>何在</b>OpenMV生态系统<b class='flag-5'>中集成</b>STM32Cube.AI生成的代码

    微软开源Azure RTOS,并更名为Eclipse ThreadX

    Azure RTOS 是一个带有 ThreadX 实时操作系统(RTOS)的嵌入式开发套件。ThreadX 是一个普及性很高的小型 RTOS
    的头像 发表于 12-01 16:17 1359次阅读
    微软开源Azure <b class='flag-5'>RTOS</b>,并更名为<b class='flag-5'>Eclipse</b> <b class='flag-5'>ThreadX</b>

    何在eclipse配置jdk环境

    Eclipse中配置JDK环境非常重要,它是开发Java程序的基础。本文将详细介绍如何在Eclipse中配置JDK环境。 下载和安装JDK 首先,在Oracle官网上下载适用于您的操作系统的JDK
    的头像 发表于 12-06 11:49 2910次阅读

    SEGGER SystemView支持Eclipse ThreadX

    SEGGER的实时软件分析工具SystemView v3.60c版本现已支持Eclipse ThreadX(Azure RTOS),用户可以基于Sy
    的头像 发表于 04-09 10:43 821次阅读
    SEGGER <b class='flag-5'>SystemView</b>支持<b class='flag-5'>Eclipse</b> <b class='flag-5'>ThreadX</b>