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.

关于CC1120的FS_CAL2寄存器配置的问题

Other Parts Discussed in Thread: CC1120

我们从swrc253e 例程中的cc112x_easy_link例子中的源码文件: cc112x_easy_link_rx.c和cc112x_easy_link_tx.c 中获知,在CC1120进行收发操作前都需要执行manualCalibration()这个函数的操作。

而manualCalibration()这个函数实际上就是读取了FS_VCO2、FS_VCO4和FS_CHP这几个寄存器的值。从这个函数的操作可以看出,先后分别对FS_CAL2这个寄存器执行了两次的写入操作,写入的值分别为high VCDAC (original VCDAC_START + VCDAC_START_OFFSET) 和 original VCDAC_START。

根据SmartRF得到CC1120的VCDAC_START值为0x20.

源码中关于VCDAC_START_OFFSET的宏定义为

#define VCDAC_START_OFFSET  2

在两次写入FS_CAL2后都读取了FS_VCO2、FS_VCO4和FS_CHP三个寄存器的值,最后比较,选取FS_VCO2中更大的值去写回寄存器中。

关于这个FS_CAL2寄存器的说明,我们在SWRU295E 《CC112X/CC1175 Low-Power High Performance Sub-1 GHz RF Transceivers/Transmitter User’s Guide》文档中的第95页中,并没有找到更详细的说明。

现有如下问题:

1. swrc253e 例程中manualCalibration()的操作原理是什么?是否有更多说明?

2.  VCDAC_START_OFFSET的值是否固定取2不变?这个值在SmartRF看不到,在各种不同频率、不同符号率和不同Deviation的配置中是否都一样?

3. SWRU295E 《CC112X/CC1175 Low-Power High Performance Sub-1 GHz RF Transceivers/Transmitter User’s Guide》文档中的第70页,10.3 Frequency Hopping and Multi-Channel Systems中使用第2种方法来获取校准值,是否也需要先写入high VCDAC_START后读取三个值,然后写入original VCDAC_START再读取三个值,然后比较,选取FS_VCO2中更大的那一组值然后保存起来?

希望能得到贵司技术人员的解答,非常感谢!