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

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

3天内不再提示

在i.MX RT的FreeRTOS MCUXpresso工程中添加runtime

恩智浦MCU加油站 来源:恩智浦MCU加油站 作者:恩智浦MCU加油站 2023-06-09 09:30 次阅读

文档说明

在调试 i.MX RT FreeRTOSMCUXpresso SDK工程的时候, 很多网友需要添加查看每个task的runtime功能。

该功能可以在MCUXpressoIDE的TASK List(FreeRTOS)中调出来: Windows->show view->other->MCUXpresso IDEFreeRTOS->Task List(FreeRTOS),如下图:

6bc1a174-05ea-11ee-962d-dac502259ad0.png

但是在运行i.MX RTSDK工程的时候, 会发现Runtime栏目是一个问号, 如下:

6bcf231c-05ea-11ee-962d-dac502259ad0.png

那么如何配置出具体的Runtime呢?

实际上, 我们有个国外的专家写过一篇基于Kinetis K64的FreeRTOSruntime添加案例。

i.MX RT的SDK FreeRTOS中添加runtime的方法和KINETIS类似, 同样需要添加一个硬件timer去做runtime的记录。K64使用的是FTM, i.MX RT没有FTM的模块,可以换其他的timer, 本文使用PIT硬件定时器去添加到i.MX RTfreetos代码中,实现 MCUXpressoSDK工程的runtime功能。

软硬件准备如下:

MIMXRT1064-EVK

SDK_2.7.0_EVK-MIMXRT1064

MCUXpresso IDE

具体步骤

1. 导入 SDK 工程

本文以SDK FreeRTOShello 工程为基础: SDK_2.7.0_EVK-MIMXRT1064oardsevkmimxrt1064 tos_examplesfreertos_hello 2. 添加PIT 硬件配置

配置的硬件定时器时间需要至少是 RTOS tick 时间 10 倍,从 FreeRTOSConfig.h 中可以看到 RTOS tick 时间:

#define configTICK_RATE_HZ ((TickType_t)200)

所以,需要配置 PIT 的定时时间为 200*10=2Khz

6bdde14a-05ea-11ee-962d-dac502259ad0.png

配置好之后, 点击 update code,更新 PIT 外设驱动到工程的相关代码中。拷贝 SDK 中的 pit.c, pit.h到导入 MCUXpresso 工程的 driver folder中

SDKpit 驱动路径是:

SDK_2.7.0_EVK-MIMXRT1064devicesMIMXRT1064drivers

6c035934-05ea-11ee-962d-dac502259ad0.png

3. 修改代码

3.1freertos_hello.c

添加头文件

6c0e1518-05ea-11ee-962d-dac502259ad0.png

添加 PIT 中断服务函数

6c1f90e0-05ea-11ee-962d-dac502259ad0.png

添加 runtime 相关代码

6c3517da-05ea-11ee-962d-dac502259ad0.png

Main函数添加外设调用

6c44188e-05ea-11ee-962d-dac502259ad0.png

Hello_task任务函数把挂起改为 vTaskDelay.

6c4c2768-05ea-11ee-962d-dac502259ad0.png

3.2 FreeRTOSConfig.h
Run time宏定义打开

6c5ac3ea-05ea-11ee-962d-dac502259ad0.png

添加 runtime 的宏定义相关代码

6c69921c-05ea-11ee-962d-dac502259ad0.png

到目前为止,所有代码已经修改完毕。

测试结果

下面进行烧录到 MIMXRT1064-EVK 测试:

6c86db24-05ea-11ee-962d-dac502259ad0.png

上图中Task List 中runtime,可以看到 hello_task, IDLE 的 runtime 百分比情况, 已经实现 runtime观察功能。

审核编辑:汤梓红

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

    关注

    14

    文章

    5715

    浏览量

    100783
  • FreeRTOS
    +关注

    关注

    12

    文章

    473

    浏览量

    61351
  • SDK
    SDK
    +关注

    关注

    3

    文章

    966

    浏览量

    44719
  • runtime
    +关注

    关注

    0

    文章

    17

    浏览量

    2142
  • mcuxpresso
    +关注

    关注

    1

    文章

    37

    浏览量

    4039

原文标题:【经验分享】在i.MX RT的FreeRTOS MCUXpresso工程中添加runtime

文章出处:【微信号:NXP_SMART_HARDWARE,微信公众号:恩智浦MCU加油站】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    i.Mx RT平台内存建议

    哪些超总线存储器被推荐用于NXP的I.MX RT平台。CyPress的超闪存/HyrRAM MCP设备与NXP的I.MX RT系列兼容吗?应用笔记和用户体验将不胜感激。 以上来自于百
    发表于 09-05 14:33

    【大联大品佳 NXP i.MX RT1050试用体验】芯林至尊,宝刀RT1050,初识i.MX RT系列跨界处理器 (之一)

    的图看看RT1050的内核架构图i.MX RT1050EVK开发板下面介绍下软件图形化配置工具:MCUXpresso Config Tools百度云链接https://pan.baid
    发表于 08-19 11:44

    i.MX RT系列介绍

    i.MX RT 系列—应用处理器与MCU 的融合
    发表于 02-04 06:03

    i.MX RT处理器系列

    大量的RAM和FLASH内存,因此这似乎非常合适。到目前为止,RT1064是RT系列的高端处理器。让我感兴趣的是它有4MB的片上FLASH存储器(其他的型号都是无闪存的)。i.MX
    发表于 07-22 07:53

    i.MX RT1050平台的相关资料推荐

    的首款跨界处理器。该处理器具备应用处理器的高性能与高度集成的优势,更具有微控制器的易用性和实时功能。NXP Semiconductors(恩智浦半导体)公司根据用户成本需求, i.MX RT1050 处理器的价格上做出调整,性
    发表于 11-29 07:19

    i.MX RT1020到i.MX RT1010的迁移手册

    i.MX RT1020到i.MX RT1010的迁移指南
    发表于 12-12 06:25

    使用i.MX RT的FlexRAM的教程

    使用i.MX RT的FlexRAM
    发表于 12-12 07:36

    开发基于i.MX RT的UVC设备

    基于i.MX RT开发一个简单的UVC设备
    发表于 12-12 06:03

    i.MX RT1060到i.MX RT1064的迁移手册

    i.MX RT1060到i.MX RT1064的迁移指南
    发表于 12-12 07:21

    i.MX RT1064开发板快速入门指南

    i.MX RT1064开发板快速入门指南(MCUXpresso
    发表于 12-12 08:26

    I.MX RT1166 Flashdriver问题如何解决?

    我正在尝试为 I.MX RT1166 编写自定义闪存驱动程序应用程序。我一直使用 iMXRT117x_FlexSPI_SFDP 项目,该项目可以
    发表于 03-31 07:18

    如何使用sdphost的ROM引导加载程序中区分i.MX RT1062和i.MX RT 1064?

    有什么方法可以通过读取特定寄存器来确定微控制器类型,而不是系列或 UID?我想在使用 sdphost 的 ROM 引导加载程序中区分 i.MX RT1062 和 i.MX RT 106
    发表于 04-27 08:37

    是否可以使用MCUxpresso IDE为i.MX RT1170的M4和M7内核开发软件?

    是否可以使用 MCUxpresso IDE 为 i.MX RT1170 的 M4 和 M7 内核开发软件?
    发表于 05-29 07:07

    i.MX RT开发笔记-08 | i.MX RT1062嵌套中断向量控制器NVIC(按键中断检测)

    RT开发笔记-03 | i.MX RT1062地址空间映射i.MX RT开发笔记-04 | i.MX
    发表于 12-01 13:51 2次下载
    <b class='flag-5'>i.MX</b> <b class='flag-5'>RT</b>开发笔记-08 | <b class='flag-5'>i.MX</b> <b class='flag-5'>RT</b>1062嵌套中断向量控制器NVIC(按键中断检测)

    i.MX RT的FlexRAM配置问题

    i.MX RT的FlexRAM配置问题
    的头像 发表于 10-24 15:46 289次阅读
    <b class='flag-5'>i.MX</b> <b class='flag-5'>RT</b>的FlexRAM配置问题