【问题标题】:FreeRTOS stack size after TaskCreateTaskCreate 后的 FreeRTOS 堆栈大小
【发布时间】:2020-02-20 11:00:00
【问题描述】:

我正在开发一个跟踪模块,该模块必须监控 FreeRTOS 任务堆以检测堆栈溢出。我想知道是否有可能在创建后获得任务堆栈大小。我可以通过 API 访问这些信息还是存储在某些内部结构中?

【问题讨论】:

标签: task microcontroller multitasking freertos


【解决方案1】:

任务堆栈大小不存储,但可以从任务控制块的pxStack and pxEndOfStack 成员中计算出来。我想检测堆栈溢出的最简单方法是使用内置的堆栈溢出检查。enter link description here

【讨论】:

  • 感谢您的回答。不幸的是,类型 tskTaskControlBlock 包含有关堆栈开始和结束的所有信息是私有类型,这意味着无法在此文件之外访问它。我目前正在从事一个不允许修改 FreeRTOS 代码的项目,因此我正在寻找一种使用外部 API(可通过头文件访问)获取信息的方法
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2019-09-23
  • 1970-01-01
  • 1970-01-01
  • 2013-05-02
  • 1970-01-01
  • 2023-04-10
  • 2021-03-26
相关资源
最近更新 更多