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:手动校准不起作用?

Guru**** 2540720 points


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

https://e2e.ti.com/support/wireless-connectivity/sub-1-ghz-group/sub-1-ghz/f/sub-1-ghz-forum/603837/cc1200-manual-calibration-doesn-t-work

部件号:CC1200

大家好。 几天前,我提出了一个问题,因为我在将应用程序从RX模式切换到eWOR模式时遇到了问题。 我的问题是GPIO,在TER的帮助下解决了。 现在,我在寄存器2上遇到了一些问题,我显然解决了这些问题,但我想讨论一下为什么它一开始不起作用,为什么我的手动校准不起作用。

我将给出我正在使用的整个配置以及切换到eWOR时必须更改的寄存器,我将告诉哪两个寄存器有问题。

AGC_CS_THR	EC->0E
AGC_CFG1	51->40
AGC_CFG0	87->83
setting_CFG	0B->03
WOR_CFG0	21->20
WOR_EVENT0_MSB	00->93
WOR_EVENT0_LSB	00->5A
RFEND_CFG0->09 	

这些是我为eWOR工作而更改的寄存器。 我发现,如果我更改了注册表结算_CFG和RFEND_CFG0,我的应用程序将不工作。

1)在从空闲到RX或TX的过程中更改结算_CFG会关闭自动校准。 所以我想我必须使用SCAL进行校准,然后才能发送 SWOR。 我这样做了,但我的应用程序不起作用。 我不知道为什么。 我做错了吗?

2) RFEND_CFG0有2位上升。 有趣的是,当我单独打开这两个位中的任何一个时,我的应用程序仍然可以工作,但当两者都启动时,我的应用程序就不能工作。 现在我读了这些比特的作用,但我不理解它很好,所以可以提供一些帮助。 我认为应该注意的是,我只使用无限模式发送和接收数据包,并且在数据包末尾关闭了2个状态字节。  

以下是原始设置。

e2e.ti.com/.../configuration.c

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

    你(们)好

    如您所述,关闭校准(结算_CFG = 0x03)需要手动校准。
    因此,我认为同步方面一切都正常,但根据自动校准的开和关,会有不同的计时,这可能会影响您的应用。

    对于term_on_bad packet_EN,这应该是0,因为您使用无限的数据包长度,没有地址过滤和CRC。
    无线电气体不知道如何判断此配置中的数据包是否有问题,因此我不知道如果将此位设置为1,它将如何运行。
    将ANT_DIV_RX_TERM_CFG设置为000将关闭CS和PQT终止,并且在使用WOR时不是有效的设置。
    您需要记住,对讲机的设计不是将无限数据包长度模式和WOR结合起来。 WOR模式的整个想法是让MCU休眠,直到FIFO中有一个带有CRC的数据包。 使用无限数据包长度模式时,您需要在每次检测到同步时唤醒对讲机,以便MCU处理数据。 因此,SmartRF Studio中可能存在您无法使用的建议WOR设置。

    您需要考虑的另一件事是,当您使用4-GFSK时,前导码和同步字将使用2-GFSK发送(将对您的计时产生影响)。
    调试应用程序时,您应使用功率分析器显示接收器上的当前配置文件,因为这将为您提供计时信息和对讲机所处状态的指示(睡眠,空闲,稳定或RX)。 这样就更容易找出事情不能按预期工作的原因。

    Br Siri

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

    感谢您的回答。

    关于CS上的终止,我认为它是这样的,这就是我提到所有信息的原因。 但是,这确实有助于有人确认。

    在校准过程中,我关闭了自动校准,在呼叫SWOR之前,我发送了SCAL并等待对讲机进入空闲状态,然后发送了SWOR。 我的应用程序无法正常工作。 更让我困惑的是,当从空闲转到RX/TX时,当自动校准打开时,为什么我的应用程序会工作,而在当前示例中,我从不转至RX/TX,而是转至eWOR?

    希望您能理解。 如果有什么可以做的测试,请告诉我。