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.

CC1310 China Band(swra527) 470-510MHz 通信距离短,丢包严重

Other Parts Discussed in Thread: CC1310

参考设计是

CC1310 Chinese AMR Skyworks PA Reference Design

电路图完全照抄参考设计,PCB自己重新画。

速率设置是100kbps,该速率配置在无功放的其他cc1310模块中测试过距离,功率设置为12.5dBm,通信范围可达60m以上,几乎不丢包,不论数据包大小(10-120字节)。

频率设置在开机后通过以下命令设置为480MHz。

EasyLink_setFrequency(480000000);
发射功率根据手册,设置为0x0041,功放输出理论应该在16dBm左右。

现在的问题在于,

1. 加了功放后的一个cc1310发射,不加功放的一cc1310接收,近距离(20cm距离),发送小于40字节的包丢包率约0~5%。更大的数据包就丢失了,接受端完全收不到。距离10m左右,丢包率可达80%。

2. 加了功放后的一个cc1310接收,不加功放的一cc1310发射。近距离(20cm距离)接收不丢包。距离离30m左右,丢包率可达50%以上。

3. 两块加了功放的cc1310分别作接受端、发送端,近距离(20cm距离)通信丢包更严重。(大数据包完全丢,小数据包丢包率也能达到50%)

请问各位有什么想法吗?

RF发送设置如下,此外根据参考设计手册,DIO1 和 DIO 30都设置为高电平。

// CMD_PROP_RADIO_DIV_SETUP
rfc_CMD_PROP_RADIO_DIV_SETUP_t RF_cmdPropRadioDivSetup =
{
    .commandNo = 0x3807,
    .status = 0x0000,
    .pNextOp = 0, // INSERT APPLICABLE POINTER: (uint8_t*)&xxx
    .startTime = 0x00000000,
    .startTrigger.triggerType = 0x0,
    .startTrigger.bEnaCmd = 0x0,
    .startTrigger.triggerNo = 0x0,
    .startTrigger.pastTrig = 0x0,
    .condition.rule = 0x1,
    .condition.nSkip = 0x0,
    .modulation.modType = 0x1,
    .modulation.deviation = 0xB4,
    .symbolRate.preScale = 0xF,
    .symbolRate.rateWord = 0x10000,
    .symbolRate.decimMode = 0x0,
    .rxBw = 0x27,
    .preamConf.nPreamBytes = 0x1,
    .preamConf.preamMode = 0x0,
    .formatConf.nSwBits = 0x20,
    .formatConf.bBitReversal = 0x0,
    .formatConf.bMsbFirst = 0x1,
    .formatConf.fecMode = 0x0,
    .formatConf.whitenMode = 0x0,
    .config.frontEndMode = 0x1,
    .config.biasMode = 0x1,
    .config.analogCfgMode = 0x0,
    .config.bNoFsPowerUp = 0x0,
    .txPower = 0x0041,//0xA73F,
    .pRegOverride = pOverrides,
    .centerFreq = 0x01B1,
    .intFreq = 0x8000,
    .loDivider = 0x0A
};

RF接收设置基本和发送一样,除了以下的frontEndMode,此外根据参考设计手册,DIO1 设置为低电平, DIO 30设置为高电平。

.config.frontEndMode = 0x2,