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.

[参考译文] CC2745R10-Q1:SDK 8.30 环境中的 GapAdv_create 函数会在 SDK 9.10 环境中导致错误

Guru**** 2539500 points


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

https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/1525910/cc2745r10-q1-gapadv_create-function-in-sdk-8-30-environment-cause-errors-in-sdk-9-10-environment

器件型号:CC2745R10-Q1

工具/软件:

您好:

以下函数在 SDK 8.30 环境中具有成功的返回值、在 SDK 9.10 环境中返回错误。

调用函数: gapAdv_create()

返回代码:0x13(bleMemAllocError:没有足够的内存来分配广播集)

返回代码表示没有足够的内存、但堆内存中有足够的可用空间达到 34KB。

参数值​​与 SDK 8.30 环境中的参数值相同。

此外、参考手册 8.30 和 9.10 中的 GapAdv_create () 之间没有区别。

这里有两个问题。

GapAdv_create 函数的流程是否有任何变化?

返回 bleMemAllocError 的原因可能是什么?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    与相同  

    e2e.ti.com/.../cc2745r10-q1-gapadv_create-in-basic-ble-iar-version-fails-with-blememallocerror-in-simplelink_lowpower_f3_sdk_9_10_00_83

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好:

    您在哪里调用此函数? 它是来自您自己的任务还是 BLE 任务?

    此致、

    Nima Behmanesh

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好:

    我从我的任务中调用它。

    将“lib_opt"文件夹“文件夹添加到工程中修复了该文件夹、但我不明白为什么。

    你能告诉我为什么吗?

    此致、

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好:

    如果要从任务调用它,则需要使用  BLEAppUtil_invokeFunction 或 BLEAppUtil_invokeFunctionNoData 。 我不知道为什么添加  lib_opt  可以解决该问题、但我不会依赖该权变措施。  

    必须在 BLE 任务上下文中调用 BLE API、否则您将遇到未定义的行为。 通过使用  BLEAppUtil_Invoke* 函数、您正在 BLE 任务上下文中对该函数进行排队。

    此致、

    Nima Behmanesh

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    不知道为什么、但似乎它是库中实际函数的环绕层。 步骤 12 中提到了这个问题。 在 8.40 至 9.10 迁移指南中:

    dev.ti.com/.../CC23XX_SDK_8.40_to_9.10.html

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好:

    我明白了、这是合理的。 文件夹结构和一些名称在 8.40 和 9.10 之间发生了变化、似乎使用 lib_opt 文件夹来包含一些 ROM 函数。  

    此致、

    Nima Behmanesh