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.

[参考译文] CC1200:使用 K32L2B31VHT0A NXP MCU 进行测试时、射频模块未接收到数据

Guru**** 2535150 points
Other Parts Discussed in Thread: CC1200

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

https://e2e.ti.com/support/wireless-connectivity/sub-1-ghz-group/sub-1-ghz/f/sub-1-ghz-forum/1008577/cc1200-no-data-received-by-rf-module-when-tested-with-k32l2b31vht0a-nxp-mcu

器件型号:CC1200

您好!

我将上述 K32L2B31 NXP MCU 与 CC1200射频收发器一起用于其中一个项目。 我们使用的是射频模块的同步串行模式、当处于 RX 模式时、串行数据线路上没有数据接收、串行时钟线路也不提供任何时钟。

我已将射频模块的 GPIO3配置为串行时钟、将 GPIO 0配置为串行数据引脚。 我已经从发送器端和接收天线验证了射频信号是否正在成功发送、它是否正在被 RX 天线接收并被馈送至 CC1200。 但是、从调制信号中提取调制信号后、CC1200不会通过串行数据线将实际有效载荷数据发送到 NXP MCU。

能否有人指导可能出现的问题以及我可以在哪里进一步调试以解决此问题。

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

    -测试时、NXP TX 和 CC1200 RX 是什么?  

    -您不能同时介绍您在两侧使用的设置类型。 您需要相同的数据速率、偏差、频率、数据包格式等  

    请提供更多信息。  

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

    CC1200与 NXP MCU 一起作为 RX 端工作、TX 端具有 XE1203射频模块以及 HCS12 MCU。

    两端的数据速率、频率和数据包格式相同。

    为了验证配置、我尝试使用 CC1200射频模块在 MSP430评估板上接收数据、它能够接收数据。

    然后、我为连接在应用板上的 CC1200添加了与 NXP MCU 相同的配置。 理想情况下、如果配置相同、并且具有 CC1200的 MSP430评估板能够接收数据、那么即使具有 CC1200的 K32L2B31评估板也应该能够接收数据。 发送器发送的数据。

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

    CC1200 + MSP430在 RX 中工作、但 CC1200 + NXP 不工作?  

    您是否已验证两个 MCU 的 CC1200设置是否相同?  

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

    是的、我已经验证了两个 MCU 的设置详细信息是相同的。 具体而言、这些是通过 Smart RF 工具生成的。

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

    SPI 流量是相同的?

    由于您有一个工作配置、因此您需要将工作配置与不工作配置进行比较。 我怀疑某些代码在 NXP 上的行为可能与在 MSP 上的行为不同。 我之前看到过、如果您有快速 MCU、则在检查状态等时必须注意计时、调试端最简单的方法是在代码中的某些位置设置断点并检查发生了什么。  

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

    在 NXP 代码中、我将设置每个 CC1200寄存器、然后再读回这些寄存器、以确保使用 SPI 通信正确设置寄存器值。

    在运行时、我持续监视 Marc 状态寄存器(0x2F73)以确保 CC1200处于 RX 模式、并且可以看到它的值为0x6D、即 CC1200处于 RX 模式 WRT 低于 Marc 状态寄存器值的快照。

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

    感谢您迄今为止提供的输入。

    请告诉我是否还有其他调试选项可以尝试。

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

    将芯片设置为串行模式相当简单。 基本上设置所需的寄存器、校准、并将芯片设置为 RX。  

    您有频谱吗? 如果是、您是否曾尝试过 TX 中的设置芯片并发送 CW? 如果没有、则必须尝试透明模式、因为在此模式下、您应该会看到始终由于噪声而在引脚上切换。  

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

    借助频谱、我验证了从 GS820 + XE1203发送器设置发送的信号正由 CC1200 + K32L2B31接收器设置天线接收。 此外、天线接收到的信号正在输入到 CC1200。 但 CC1200不会处理信号并向 K32L2B31 MCU 提供实际有效载荷信息。 下面是我正在使用的 CC1200配置。 我已经使用 SmartRF Studio 生成了这个。

    const stRegSettings g_stPreferredSettings[]=

    {CC1200_IOCFG3、0x09}、
    {CC1200_IOCFG2、0x29}、
    {CC1200_IOCFG0、0x08}、
    {CC1200_SYNC3、0xF0}、
    {CC1200_SYNC2、0xCC}、
    {CC1200_SYNC1、0xF0}、
    {CC1200_SYNC0、0xCC}、
    {CC1200_SYNC_CFG1、0xA8}、
    {CC1200_SYNC_CFG0、0x13}、
    {CC1200_deviation_M、0x68}、
    {CC1200_MODCFG_DEV_E、0x04}、
    {CC1200_DCFILT_CFG、0x26}、
    {CC1200_PREAMING_CFG1、0x00}、
    {CC1200_PREAMING_CFG0、0x8A}、
    {CC1200_IQIC、0x00}、
    {CC1200_CHAN_BW、0x82}、
    {CC1200_MDMCFG1、0x06}、
    {CC1200_MDMCFG0、0x05}、
    {CC1200_symbol_Rate2、0x7F}、
    {CC1200_symbol_rate1、0x75}、
    {CC1200_symbol_RATE0、0x10}、
    {CC1200_AGC_REF、0x45}、
    {CC1200_AGC_CS_THR、0x01}、
    {CC1200_AGC_CFG1、0x16}、
    {CC1200_AGC_CFG0、0x84}、
    {CC1200_FIFO_CFG、0x00}、
    {CC1200_FS_CFG、0x12}、
    {CC1200_PKT_CFG2、0x01}、
    {CC1200_PKT_CFG1、0x00}、
    {CC1200_PKT_CFG0、0x20}、
    {CC1200_PA_CFG0、0x55}、
    {CC1200_PKT_LEN、0xFF}、
    {CC1200_IF_Mix_CFG、0x18}、
    {CC1200_TOC_CFG、0x03}、
    {CC1200_MDMCFG2、0x00}、
    {CC1200_FREQ2、0x5B}、
    {CC1200_FREQ1、0x99}、
    {CC1200_FREQ0、0x98}、
    {CC1200_IF_ADC1、0xEE}、
    {CC1200_IF_ADC0、0x10}、
    {CC1200_FS_DIG1、0x04}、
    {CC1200_FS_DIG0、0x55}、
    {CC1200_FS_CAL1、0x40}、
    {CC1200_FS_CAL0、0x0E}、
    {CC1200_FS_DIVTWO、0x03}、
    {CC1200_FS_DSM0、0x33}、
    {CC1200_FS_DVC0、0x17}、
    {CC1200_FS_PFD、0x00}、
    {CC1200_FS_PRE、0x6E}、
    {CC1200_FS_REG_DIV_CML、0x1C}、
    {CC1200_FS_SPARE、0xAC}、
    {CC1200_FS_VCO0、0xB5}、
    {CC1200_IFAMP、0x0D}、
    {CC1200_XOSC5、0x0E}、
    {CC1200_XOSC1、0x03}、
    {CC1200_PARTMUMBER、0x20}、
    {CC1200_serial_status、0x08}

    };

    请您验证一次、并告诉我是否有任何问题。

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

    您是否测试了透明模式?  

    您是否已验证您没有频率偏移问题?  

    如果您将  CC1200 + MSP430和 CC1200 + NXP 电路板设置为发送 CW (音调)、频率是否等于10kHz 以内?