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.

[参考译文] CC430F5137:对于低波特率、在固件中使用 RF Studio 寄存器设置失败

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/757994/cc430f5137-using-rf-studio-register-settings-in-firmware-fails-for-low-baud-rates

器件型号:CC430F5137
主题中讨论的其他器件:CC1310

您好!

我使用 CC430执行远距离无线电通信。 我已使用射频 Studio 来计算远距离应用中要使用的最佳射频寄存器设置。

很明显、较低的波特率在范围方面表现最佳、并且由于我不需要高数据速率、这是我的应用的理想选择。

以下代码从 RF Studio 加载寄存器设置:

WriteSingleReg (IOCFG0、0x06);
WriteSingleReg (FIFOTHR、0x47);
WriteSingleReg (PKTCTRL0、 0x05);
WriteSingleReg (FSCTRL1、0x06);
WriteSingleReg (FREQ2、0x21);
WriteSingleReg (FREQ1、0x62);
WriteSingleReg (FREQ0、0x76);
WriteSingleReg (MDMCFG4、 0xf5);
WriteSingleReg (MDMCFG3、0x83);
WriteSingleReg (MDMCFG2、0x13);
WriteSingleReg (DEVIATN、0x15);
WriteSingleReg (MCSM0、0x10);
WriteSingleReg (FOCCFG、 0x16);
WriteSingleReg (WOREVT1、0x87);
WriteSingleReg (WOREVT0、0x6B);
WriteSingleReg (WORCTRL、0xFB);
WriteSingleReg (FSCAL3、0xE9);
WriteSingleReg (FSCAL2、 0x2A);
WriteSingleReg (FSCAL1、0x00);
WriteSingleReg (FSCAL0、0x1F);
WriteSingleReg (TEST2、0x81);
WriteSingleReg (TEST1、0x35);
WriteSingleReg (TEST0、 0x09);
WriteSingleReg (LQI、0x6A);
WriteSingleReg (RSSI、0x80);
WriteSingleReg (VCO_VC_DAC、0x94);
WriteSingleReg (RF1AIFCTL1、0x74);
WriteSingleReg (RF1AIFERR、 0x01);
WriteSingleReg (RF1AIFERRV、0x02);
WriteSingleReg (RF1AINSTRW、0xC000);
WriteSingleReg (RF1AINSTR1W、0xC000);
WriteSingleReg (RF1AINSTR2W、0xC000);
WriteSingleReg (RF1ADINW、 0xC000);
WriteSingleReg (RF1ASTTAT0W、0x8000);
WriteSingleReg (RF1AST1W、0x8000);
WriteSingleReg (RF1AST2W、0x8000);
WriteSingleReg (RF1AIN、0x04);

虽然4.8kBaud 和更高波特率的工作效果非常好、但较低的1.2kBaud / 0.6kBaud 速率不起作用(在 FW 中实现时)。 "不起作用"是指固件似乎发送数据包正常、但接收器无法接收到数据包。 我直接在 RF Studio 上运行接收器、当然、要确保设置匹配。

现在我的问题是:除了射频寄存器设置之外、在使用低波特率时、我还需要特别注意 FW 中的其他内容吗? 我觉得在 MSP 方面有一些事情要做(可能是系统时钟频率、目前为12MHz)。

目前 CPU 的配置方式如下:

_BIS_SR (SCG0); //禁用 FLL 控制环路
UCSCTL0 = 0x0000; //设置可能的最低 DCOx、MODx
UCSCTL1 = DCORSEL_5; //选择合适的范围
UCSCTL2 = FLLD_1 + 0x16E;//设置 DCO 乘法
器_BIC_SR (SCG0); //启用 FLL 控制环路 

谢谢、

Henry  

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

    我没有任何硬件来重新创建您的问题。
    将您的问题发布到此主题 e2e.ti.com/.../上
    希望您能更快地得到答案。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    对于1.2kbps、您是否直接使用 SmartRF Studio 中的设置?

    我不知道需要其他设置。 您还可以检查 TX 侧和 RX 侧之间是否存在频率偏移吗?

    注意:与 CC1310或类似器件相比、您对 CC430进行研究的原因有什么?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    我直接从 RF Studio 导出设置。 在导出之前、我在完全相同的硬件上测试了这些确切设置、并且在 RF Studio 中它可以正常工作。 我想、在使用射频 Studio 的情况下、频率偏移也会产生不良影响、对吧?
    还有其他想法吗?

    最棒的
    Henry

    关于 CC1310:我们将考虑迟早更改。 CC1310与 CC430通信是否兼容(当然使用相同的射频设置)? 因为我们的现场客户配备了 CC430、并且可能会有额外的装置、这些装置也应该与"旧的"CC430一起使用。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    在给定相同的数据速率、偏差、调制和数据包格式的情况下、CC1310将能够与 CC430通信。

    您写了:"我是说固件似乎发送了数据包"。 这是否意味着、如果您单步执行代码、一切似乎都按预期工作?

    低数据速率的一个特点是、发送数据包需要很长时间。 您可能会遇到时序问题吗?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、
    我将降低代码的复杂性、以排除出现时序问题的可能性。 实际上、这可能是一个潜在的问题... 我将在能够测试时立即更新。
    最棒的
    Henry