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.

[参考译文] CC1312PSIP:在传输时绕过 Mac 队列

Guru**** 2555630 points


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

https://e2e.ti.com/support/wireless-connectivity/sub-1-ghz-group/sub-1-ghz/f/sub-1-ghz-forum/1569522/cc1312psip-bypass-mac-queue-on-transmission

器件型号:CC1312PSIP


工具/软件:

您好、

我使用的是 simplelink_cc13xx_cc26xx_sdk_7_41_00_17 收集器/传感器示例。 我有一条对讲机消息、因为它是一个警报、因此需要无延迟地发送。 我想绕过 Mac 队列,因此可能由于 Mac 队列已满或一些其他延迟(如堆分配)导致传输失败。

是否有办法保证使用 TI 15.4 立即传输消息?

我想这个解决方案可能涉及 直接调用 RF_runCmd (),但 在 TI 15.4 的同时使用这些函数是安全的吗? Mac 如何在另一端接收它? 需要附加 TI 15.4 接头。 有什么需要注意的吗? 我应该采取哪些步骤来控制无线电、发射、然后将其恢复到之前的状态以使 TI15.4 继续运行?

感谢您的帮助、

Andy

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

    您好、Andrew、

    我认为不建议这样做、但我将咨询 TI15.4-Stack 专家、检查是否有安全的方法可以实现。 在此期间、您能否向我提供以下信息:

    1.您正在运行的 TI15.4-Stack 模式(信标,非信标,跳频,跳频低延迟广播)

    2. 是否要从传感器发送到收集器的消息? 还是相反的方向?

    3.您使用的频段区域是什么?

    此致、

    Daniel

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

    您好、

    感谢您的答复。

    我在非休眠传感器中运行非信标模式。 警报消息将广播而不是单播、以最大限度地增加其他侦听节点拾取警报的机会。 对讲机会受到很高的影响、因此我需要确保尽快传输警报信息。 对于 EU 和 NA 应用、系统将在 868MHz 和 915MHz 上运行。

    我不喜欢直接使用无线电符号的想法,所以我希望有一个很好的方法使用 Mac 绕过任何潜在的延迟在传输.

    非常感谢、

    Andy

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

    您好、Andrew、

    我已经与团队进行了检查、无法跳过 MAC 中排队的消息。 消息中没有优先级、队列先到先得。

    有两种权变措施:
    1.编辑 MAC、使每个数据包都包含一个优先级。 最高优先级放在队列的顶部。 这将违反先到先得的规则。

    2.清除队列中的所有数据包 (ApiMac_mcpsPurgeReq)使队列现在为空,发送报警消息。

    除非你一直在发送大量的消息,我的猜测是,定期传输也会工作,因为队列可能是空的。

    请记住、在任何情况下、由于载波侦听多址 (CSMA)、传输(即使队列为空)也可能会延迟。

    此致、

    Daniel

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

    您好、

    感谢您的帮助。  

    我想清除,但不想这样做,因为这是另一个步骤。 我对编辑 MAC 以添加优先级很感兴趣、但我认为我无法做到、因为它们是库文件。 如果我可以访问这些文件,那么我肯定可以创建一个强大的解决方案。 这是可能的吗?

    传输不会很多、因此您指出、消息排队的可能性很小、但在设备本身进入警报状态时、设备可能正在传输从另一台设备收到的警报或状态消息。 此时、CSMA 和队列将产生影响。

    我对 CSMA 做得不多、但希望我能以某种方式减少排队导致的延迟。 如果我无法编辑 MAC、可能另一个解决方案是将 MAC 队列减少到一个或两个、以尽量减少队列导致的延迟。

    请告诉我您的想法。

    谢谢、

    Andy

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

    您好、Andrew、

    我正在与团队核实第一点。

    关于 MAC 队列、请查看位于 sdk_path/source/ti/ti154stack/high_level/mac_cfg.c 中的 MAC_CFG_TX_DATA_MAX

    此致、

    Daniel

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

    您好、

    谢谢 Daniel、这对我们很有帮助。

    此致、

    Andy