This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
您好!
我使用 IAR 9.32版和 FreeRTOS v202104.00编译了 basic_ble 示例。 该示例的 RAM 用量为芯片上的36 KB 中的33 KB。 这样我只剩下3KB 的 RAM、这对于我的应用来说是不够的。
我原本打算使用 basic_ble 示例作为工程的起点、但为了让其正常运行、我似乎需要减少 RAM 的使用量。
对于如何减少 based_ble 示例的 RAM 使用情况、或者也许使用一个不同的示例、你有什么建议吗?
谢谢
伊加尔
您好、Yigal、
我认为 based_ble 示例是一个很好的开始。
FreeRTOS 会阻止20KB 的堆空间。 因此、只要您在 FreeRTOS 中运行应用程序、就可以使用它。
如果您需要更多 RAM 用于非 RTOS 函数、 可以在 SysConfig 中使用来减小堆大小、如下所示。
此致、
亚历克斯
尊敬的 Alex:
您能帮助定义 simple_ble 按照设计工作所需的最小堆大小吗? 我搜索了文档、但未能找到确切的答案。
此致、
伊加尔
您好、Yigal、
目前、如果您使用 FreeRTOS 运行所有程序、我不建议您这么做。
器件将与预定义的堆一起正常运行、您可以为外设应用分配最多25KB 的堆。
系统将获取~8KB 并且每个连接将从可用堆中获取~0.8KB。
堆就是可用于在 FreeRTOS 中运行的应用程序的 RAM!!!!
此致、
亚历克斯
尊敬的 Alex:
似乎我对 FreeRTOS 缺乏了解。
您能提供一个简单的示例、说明如何定义将在堆中分配的16字节数组。
谢谢
伊加尔
您好、Yigal、
如果 您在 FreeRTOS 任务中生成该变量、则应分配该变量。
由于 FreeRTOS Academy 尚不适用于 CC2340、因此我要为您推荐 SimpleLink Academy for CC13xx CC26xx (TI.com)
此处的 RTOS 部分
和 《BLE5-Stack 用户指南》(TI.com) 、您可以在其中找到有关 FreeRTOS 的其他信息。
在这一追逐,取决于你如何使用它可能并不总是存储在堆中。 不过、如果你可以安全地减小堆大小、具体取决于所需的 RAM 数量。
此致、
亚历克斯