器件型号: CC1352P
我有一个使用 RF_runCmd 的有效解决方案、用于执行 TX 链-> RX 链-> DONE。 在链迭代之间、我更新时序和 TX 内容并重复该链。 我的帧末尾有一些停机时间、而 RX 的 EndTime 也有一个“软软“因素。
在下面的迹线中、CH1/黄色为 PA/TX、CH2/蓝色 为 LNA/RX。 我在帧的末尾失去了大约 600 us。 该迹线显示了链的末端 RX、后跟下一个帧 TX、该帧大约需要 80 μ s。
我的“软糖系数“如下(–200)
rf_ctx.RF_cmdPropRx->endTrigger.triggerType = TRIG_REL_FIRSTSTART;rf_ctx.RF_cmdPropRx->endTime = RF_convertUsToRatTicks(PACKET_INTERVAL_US(radio_cfg) *(radio_cfg.numMasters+radio_cfg.numNotMasterSlots)-200);最近、我尝试环回链 (((TX -> RX)->(TX -> RX)->...)、现在我的回调没有触发。 我出于好奇使用了一个 Temboo 代理,遇到了这个问题,但没有得到引用的文档来源。
RF 驱动程序不会为使用 RF_postCmd () 的循环链中的命令生成 RF_EventCmdDone 回调。 这是 TI 射频驱动器处理无限循环的基本限制。
根据我查看过的 TI 文档和示例、 回调通知不支持真无限循环链 。 射频驱动程序仅在以下情况下生成事件:
- 链终止 (RF_EventLastCmdDone)
- 命令在非循环链中完成
- 使用 RF_runCmd ()(分块,同步)
基本问题: 当 RX.pNextOp 指向 TX 时、射频驱动程序将此视为从不完成的单个“超级命令“、因此不会触发完成事件。
第一、这是真的吗?
否则,什么是最有效的方式挤压出一个框架?
这是我最简单的连锁店。 我还有其他设备可以监听、更改频率、然后通话或监听、更改频率、通话、监听、更改频率。 我想对所有 3 个进行迭代。 死区时间会导致帧中稍后发生一些数据丢失。

