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.

[参考译文] CC2652R:DMM 微调(BLE 外设+ TI15.4收集器)

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

https://e2e.ti.com/support/wireless-connectivity/other-wireless-group/other-wireless/f/other-wireless-technologies-forum/1398639/cc2652r-dmm-fine-tuning-ble-peripheral-ti15-4-collector

器件型号:CC2652R
Thread 中讨论的其他器件:CCStudioSysConfig

工具与软件:

大家好!
我正在查找微调 DMM 所需的信息。

BLE 外设和 TI15.4收集器堆栈。 我可以通过 syscfg 设置 DMM 策略、但是
我无法深入了解哪些帧在堆栈活动中被标记为正常、高或紧急的信息。
我知道我允许的射频命令 API 可以设置优先级-但在我的应用程序中它们不被使用。
Q1 :在哪里可以找到有关优先级(正常、高、紧急)如何配置的信息?

我得出的结论是、我需要记录堆栈活动过渡。 以查看我的配置(TI154收集器)中使用了哪些 TI15.4活动。
Q2 :有没有办法获得当前 TI15.4或 BLE 堆栈活动?

在一些文档中、我看到 DMM 忽略了 DMM 策略配置中的"应用的活动"。
问题3: 事实是、这仍然是如此 simplelink_cc13xx_cc26xx_sdk_7_41_00_17 (CCStudio 版本:12.7.1.00001)?

在 syscfg DMM 策略配置中、我想对许多"堆栈活动"应用策略、但当我从下拉菜单中选中两个框时
我在编译期间收到错误。

use of undeclared identifier 'DMMPOLICY_APPLIED_ACTIVITY_BLE_BROADCASTINGDMMPOLICY_APPLIED_ACTIVITY_BLE_OBSERVING'

此致
Andrzej

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

    尊敬的 Andrzej:

    以下是指向 DMM 用户指南 和 DMM SimpleLink Academy 的链接 、便于轻松访问。   

    1. 在全局优先级表 dmm_priority_ble_154collector.c 中配置了优先级、其中建立了每个优先级的权重。  由于当前活动、堆栈资源确定在任何给定的时刻应该使用哪个优先级。
    2. DMM 堆栈活动不会报告给应用程序、但您应该能够随时解释哪些活动可能基于应用程序行为。  另请参阅 DMM Runtime API。 
    3. 这可能是 SysConfig 中的错误、因为值应在生成的 ti_dmm_application_policy.c 中一起进行"或"运算、您可以尝试禁止在 SysConfig 中编译此文件、并改用工作区中的本地副本。

    此致、
    Ryan

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

    您好、Ryan
    感谢您的答复。 我检查您发送的文档、然后我找到了。

    AD.1:"为了使 DMM 能够利用 GPT、栈需要传达每个已调度活动的当前堆栈活动和优先级。 对于 TI 提供的软件、例如 BLE、TI-15.4和 Zigbee 堆栈、 这在内部进行处理 而用户不需要显式考虑这一点。"
    - 这正是我正在寻找的,即设置优先级的算法如何工作(正常/高/紧急)?

    AD.2:如您所说、在 API 参考中没有专门用于读出活动状态的函数。 我想知道是否有其他方法可以-例如读取优先级值或以匹配活动状态。 我觉得下面的功能可以帮助我、但遗憾的是、文档相当有限-

    DMMPolicy_getDefaultPriority -堆栈的默认优先级是什么?
    DMMPolicy_getGlobalPriority -堆栈的全局优先级是什么?

    DMMPolicy_setStackID -我想、这一个的文档应该会完全更新。 名称建议"set"、文档建议它为"get"、函数类型为 void。 不知道该期待什么。 如果它得到新名称"getCurrentActivity"并返回当前活动状态,那将会很好 ;-)

    此致
    Andrzej

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

    1.此信息仅限于内部源代码、在 SDK 版本中不可用。

    2、我理解文件令人困惑,由此给您带来的不便深表歉意。  DMMPolicy_setStackID 的意思是说"set"而不是"get"、很可能是复制/粘贴错误。  我可以向软件开发团队申请新的 API、但不知道它是否会受到广泛欢迎和实施。

    DMMPolicy_getGlobalPriority 是任何堆栈活动的全局优先级表中的当前优先级。  DMMPolicy_getDefaultPriority 是  DMM 打开 API 期间堆栈的默认优先级。  根据获得的值、可以推断一些信息。

    您能否提供有关最终目标的更多信息、以便我们确定是否可以使用可用的应用状态来实现您想要实现的目标?

    此致、
    Ryan

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

    您好、Ryan、
    我想我已经有了所有我想要的东西。
    感谢您为我提供答案。

    " 此信息仅限于内部源代码、在版本 SDK 中不可用。"
    "不向应用报告 DMM 堆栈活动"

    此致
    Andrzej