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:在接收数据包时监控无线电状态

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

https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/1430061/cc2340r5-monitoring-radio-status-when-receiving-a-packet

器件型号:CC2340R5

工具与软件:

我正在接收一个"通用"数据包,并希望能够监控无线电本身的状态-前导码检测,同步字检测等...

我记得在使用 cc13xx/cc26xx 器件时、我打算配置一些 GPIO 以反映实际被解调的信号

这还可以帮助我解决接收器所在位置(以某种方式?)的问题 实际上没有接收到所有传入的数据包....  我是否可以看到我的对讲机"开始"接收数据包、但可能在某个时候放弃了???

对于如何在这一级别跟踪无线电的任何一般性建议都将非常感谢..

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

    您好、

    您是否指的是 调试射频输出?  CC23XX RCL 与 CC13XX/CC26XX rflib 有很大差异、因此涉及到运行时、它们很难相互比较。

    此致、
    Ryan

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

    虽然这是有用的,我实际上是在寻找一些反映数据包数据本身的东西..  我已经为我的 Saleae 逻辑分析仪编写了各种插件、这些插件可以在调制/解调之前/之后呈现 TX/RX 位流...  这不仅为我提供了有关 TX/RX 何时启动的时序、还提供了数据的图片...

    我知道有许多与 CC23xx RCL...相关联的{PBE、MCE、RFE}GPIO  除了 RFEGPO{0,1}?之外、是否有其他有关引脚的文档??

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

    请允许我留出一些时间、询问无线电研发团队以获取进一步的意见。

    此致、
    Ryan

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

    无线电研发部门提供了一些有用的反馈:

    对于可能出现的问题、我们的见解有限、但可以使用几个技巧来查看数据包会发生什么情况。 客户可以订阅一些 LRF 事件、然后在回叫中控制一些 IO。 以下事件非常有用:

    • lrfEvents.systim2:这甚至会在找到 SYNC 时发生
    • lrfEvent。 rxNok:如果数据包出现 CRC 错误、则会发生此事件
    • lrfEvent。 rxBufFull:如果接收到数据包、但该数据包未装入可用的 RX 缓冲区、则会发生该事件。 在这种情况下、命令也将结束、命令状态将为 RCL_SCIRO Status_Error_Rx。

    请注意、为了看到这些事件、除了在回调函数中检查事件外、还必须在命令的 lrfCallbackMask 中启用这些事件。

    如果使用通用 RX 命令、找到 SYNC 的任何情况都应导致接收到数据包、CRC 错误或缓冲区满、除非长度字段大于命令中给出的最大长度。  如果事实证明在某些数据包中找不到同步、则很难找到根本原因。 在本例中、我将寻找一般的射频问题、例如频率偏移、链路预算和干扰。 (如果数据包由于 CRC 错误而丢失、这同样适用)

    要启用 lrfCallbackMask、请参阅 RCL 命令 和 LRFCC23X0.h 文档。  以 rfEchoTx 为例、你要在 mainThread 中添加这样的行

    rclPacketTxCmdGenericTx.common.runtime.lrfCallbackMask.value = LRF_EventSystim2.value | LRF_EventRxNok.value | LRF_EventRxBufFull.value;

    后跟回调中的此类语句:

        if(lrfEvents.systim2)
        {
            // ADD DEBUG CODE HERE
        }
        if(lrfEvents.rxNok)
        {
            // ADD DEBUG CODE HERE
        }
        if(lrfEvents.rxBufFull)
        {
            // ADD DEBUG CODE HERE
        }

    此致、
    Ryan