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:CC1200

Guru**** 2511415 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/1010888/cc1200-cc1200

器件型号:CC1200

我有一个板载 CC1200、我可以通过它进行发送和接收、但我有一些问题。  我将 GPIO3配置为 Pkt_SYNC_rxtx、 CC120X_IOCFG3、        0x06、但出于某种原因、该引脚始终读为高电平、从不会触发。  而是使用代码来检测数据包
cc120xSpiReadReg (CC120X_PQT_SYNC_ERR、&PreSyncLevel、1);
如果(((PreSyncLevel (0xF))<10)
HadPre=1;

检测是否检测到同步、然后延迟等待数据包的其余部分到达、然后读取 FIFO。  那么、如果我检测到同步、是否有另一个寄存器设置来使 GPIO3按定义工作?

我使用 RF Studio 来计算寄存器设置。

我的另一个问题是、在接近灵敏度水平的任何位置、它都不会接收到。  我必须将信号上拉至大约-31dBm 才能接收数据。  哪些寄存器设置会影响这一点?  感谢你的任何帮助。  这些是我的寄存器设置:

// RX 滤波器带宽= 14.880952 kHz
//地址配置=无地址检查。
//数据包长度=变量
//符号速率= 7.4ksps
//载波频率= 170MHz
//比特率= 7.4kbps
//数据包位长度= 0
//调制格式= 2-FSK
//数据包长度模式=变量
//设备地址= 0
//偏差= 3.681183kHz
// PA 斜升= true

静态常量寄存器 Setting_t preferredSettings[]=

{CC120X_IOCFG3、0x06}、//pkt_SYNC_RxTx、GPIO3
{CC120X_IOCFG2、0x01}、//RXFifo_THR_pktt -指示何时接收到数据包或数据包超过太多字节、GPIO2
{CC120X_IOCFG1、0x30}、// SO、GPIO1为高阻态
{CC120X_IOCFG0、0x02}、//txFifo_THR - TX FIFO 已填充超过阈值、GPIO0
{CC120X_SYNC3、0xD6}、
{CC120X_SYNC2、0xBA}、
{CC120X_SYNC1、0xD6}、
{CC120X_SYNC0、0x08}、//0xBA}、
{CC120X_SYNC_CFG1、0xAA}、//32位同步
{CC120X_SYNC_CFG0、0x03}、//禁用严格同步、同步不需要前导码
{CC120X_EXTERING_M、0xC1}、// fdev = 40e6*193/2^21
{CC120X_MODCFG_DEV_E、0x00}、//正常调制解调器模式、2FSK
{CC120X_DCFILT_CFG、0x5D}、
{CC120X_PREAMING_CFG1、0x28}、//8字节前导码、0xAA
{CC120X_PREAMING_CFG0、0x8A}、//启用前导码检测、11个符号直至有效
{CC120X_IQIC、0xCB}、
{CC120X_CHAN_BW、0x8E}、//0x87}、//60kHz //0x9C}、//ADC 抽取因子= 48、BB 解码因子= 28
{CC120X_MDMCFG1、0x40}、//始终搜索同步、FIFO 启用、无管理器(mdmCG2-0=-dev、1=+dev)
{CC120X_MDMCFG0、0x05}、//禁用透明、启用 Viterbi 检测
{CC120X_symbol_Rate2、0x68}、//7400 ksps
{CC120X_symbol_rate1、0x3F}、
{CC120X_symbol_RATE0、0x92}、
{CC120X_AGC_REF、0x2F}、//0x33}、//0x36}、//0x30}、
{CC120X_AGC_CS_THR、0xF7}、
{CC120X_AGC_GAIN_ADJUST、0x00}、
{CC120X_AGC_CFG3、0xA0}、//最小和最大增益设置为39dB
{CC120X_AGC_CFG2、0x31}、
{CC120X_AGC_CFG1、0x52}、/0x40}、
{CC120X_AGC_CFG0、0x4F}、//0x83}、
{CC120X_FIFO_CFG、0x00}、
{CC120X_DEV_ADDR、0x00}、
{CC120X_Settling_CFG、0x03}、//自动校准是手动使用 SCAL 选通
{CC120X_FS_CFG、0x1A}、//锁定检测器启用、136.7至160MHz 频段
//{CC120X_FS_CFG、0x1B}、//启用锁定检测器、136.7至160MHz 频段
{CC120X_WOR_CFG1、0x08}、//eWOR 正常模式
{CC120X_WOR_CFG0、0x20}、
{CC120X_WOR_EVENT0_MSB、0x03}、
{CC120X_WOR_EVENT0_LSB、0xA4}、
{CC120X_RXDCM_TIME、0x00}、
{CC120X_PKT_CFG2、0x00}、// FIFO 模式、正常模式
{CC120X_PKT_CFG1、0x01}、//0x03}、禁用//FEC、启用白化、 无地址检查、CRC、附加状态
{CC120X_PKT_CFG0、0x20}、//可变长度 pkt,无 UART
{CC120X_RFEND_CFG1、0x0F}、//正常 Rx pktt 后变为空闲、无 Rx 超时
{CC120X_RFEND_CFG0、0x00}、// TX 空闲后、RX 坏数据包保持在 Rx 中、无天线分集或 Rx 术语
{CC120X_PA_CFG1、0x3F}、//无功率斜升// 0x46}、
{CC120X_PA_CFG0、0x56}、
{CC120X_ASK_CFG、0x0F}、
{CC120X_PKT_LEN、0xFF}、//最大包长255、在这之后为扩展地址空间
{CC120X_IF_MIX _CFG、0x1C}、
{CC120X_FREQOFF_CFG、0x22}、//启用频率偏移校正
{CC120X_TOC_CFG、0x4B}、//0x0B}、
{CC120X_MARC_SPARE、0x00}、
{CC120X_ECG_CFG、0x00}、//将时钟除以64
{CC120X_MDMCFG2、0x0C}、
{CC120X_EXT_CTRL、0x01}、
{CC120X_RCCAL_Fine、0x00}、
{CC120X_RCCAL_ROLL、0x00}、
{CC120X_RCCAL_OFFSET、0x00}、
{CC120X_FREQOFF1、0x00}、
{CC120X_FREQOFF0、0x00}、
{CC120X_FREQ2、0x55}、//170
{CC120X_FREQ1、0x00}、
{CC120X_FREQ0、0x00}、
//{CC120X_FREQ2、0x52}、//137.485
//{CC120X_FREQ1、0xB5}、
//{CC120X_FREQ0、0x25}、
//{CC120X_IF_ADC2、0x02}、
//{CC120X_IF_ADC1、0xEE}、
//{CC120X_IF_ADC0、0x10}、
{CC120X_FS_DIG1、0x07}、
{CC120X_FS_DIG0、0xAF}、
{CC120X_FS_CAL3、0x00}、
{CC120X_FS_CAL2、0x20}、
{CC120X_FS_CAL1、0x40}、
{CC120X_FS_CAL0、0x0E}、
{CC120X_FS_CHP、0x28}、
{CC120X_FS_DIVTWO、0x03}、
{CC120X_FS_DSM1、0x00}、
{CC120X_FS_DSM0、0x33}、
{CC120X_FS_DVC1、0xFF}、
{CC120X_FS_DVC0、0x17}、
{CC120X_FS_LBI、0x00}、
{CC120X_FS_PFD、0x00}、
{CC120X_FS_PRE、0x6E}、
{CC120X_FS_REG_DIV_CML、0x1C}、
{CC120X_FS_SPARE、0xAC}、
{CC120X_FS_VCO4、0x14}、
{CC120X_FS_VCO3、0x00}、
{CC120X_FS_VCO2、0x00}、
{CC120X_FS_VCO1、0x00}、
{CC120X_FS_VCO0、0xB5}、

{CC120X_XOSC5、0x0E}、
{CC120X_XOSC4、0xA0}、
{CC120X_XOSC3、0x03}、
{CC120X_XOSC2、0x04}、
{CC120X_XOSC1、0x03}、


{CC120X_AGC_GAIN2、0xD1}、};//使用 AGC

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

    我建议您尝试查找导致问题的原因、然后尝试解决问题、而不是尝试为您的问题寻找解决方法。

    如果您在 FIFO 中接收数据包、但未在 GPIO3引脚上获取 pkt_SYNC_RxTx、则表示您的硬件存在一些问题、或者连接到 GPIO3的 MCU 引脚配置不正确。

    如果您不想解决问题、可以轮询 MARCSTATE 以确定对讲机何时返回空闲状态(接收到数据包)、然后读取 FIFO (如果其中有任何内容)、 或者、您可以查看 MODEM_STATUS1寄存器中的 SYNC_FOUND 位或通过 GPIO_STATUS 寄存器轮询 GPIO 引脚的状态。

    从您的设置中、我可以看到您没有使用我们的任何建议设置。 您应首先使用其中一个(使用 SmartRF Studio 中的代码导出、且不进行任何修改)。 这样、您就可以使用已知良好的设置测试您的硬件、并验证您是否获得了此设置的数据表编号灵敏度。

    如果您使用推荐的设置获得了不良性能、这表示您的硬件存在问题、您需要查看您的设计、了解它与我们的参考设计有何不同/为何不同。

    如果您要获得建议设置的数据表编号、但不使用您正在使用的设置、则射频组的人员可以查看您的设置、看看他们是否可以看到问题是什么。

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

    大家好、谢谢、我按照您的建议这么做了、现在它正在工作。  GPIO3仍然不起作用、但我将该函数放在 GPIO2上、它正在工作。