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.

[参考译文] CC2340R5:basic_ble 示例消耗33KB 的 RAM

Guru**** 1981085 points
Other Parts Discussed in Thread: SYSCONFIG
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/1260138/cc2340r5-basic_ble-example-consume-33kb-of-ram

器件型号:CC2340R5
主题中讨论的其他器件:SysConfig

您好!

我使用 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 数量。

    此致、

    亚历克斯

x 出现错误。请重试或与管理员联系。