TI中文支持网
TI专业的中文技术问题搜集分享网站

CC1101 数据接收重复问题

使用两块CC1101的板子做测试,A板上电首先进行发送,B板上电配置为接收,当B板接收到A发送的数据时进行简单的校验(A发给B的是已知的固定值的数据),校验通过后B板马上转换成发送,而A板发送完成立刻变成接收并且A板有超时退出机制。B板变成发送,每次发送21个字节数据(实际上设置为可变数据包长度模式),现在发现的问题是,A板接收的时候经常出现数据重叠,比如说发送 01 02 03 04 05 06 07  数据,接收到的可能就是 01 02 03 03 04 05 06 就是其中一个数据又重复了一次或者N次(实际上不应该重复)。A板和B板一直这样循环,出现数据重复的概率很大,两个板子间隔3米左右,5db的天线。

配置如下:

    {CC1101_IOCFG0,      0x06},         // 432MHz 76.767KBaud  3.52ms@30Byte   26
    {CC1101_FIFOTHR,     0x47},
//    {CC1101_PKTCTRL0,    0x05},
    {CC1101_PKTCTRL0,    0x45},
    {CC1101_FSCTRL1,     0x08},
    {CC1101_FREQ2,       0x10},         // 
    {CC1101_FREQ1,       0xa7},         //
    {CC1101_FREQ0,       0x62},         //
  
    {CC1101_MDMCFG4,     0x7B},
    {CC1101_MDMCFG3,     0x83},
    {CC1101_MDMCFG2,     0x13},
    {CC1101_DEVIATN,     0x42},
    {CC1101_MCSM0,       0x18},
    {CC1101_FOCCFG,      0x1D},
    {CC1101_BSCFG,       0x1C},
//    {CC1101_AGCCTRL2,    0xC7},
//    {CC1101_AGCCTRL1,    0x00},
//    {CC1101_AGCCTRL0,    0xB2},
    {CC1101_AGCCTRL2,    0x03},
    {CC1101_AGCCTRL1,    0x40},
    {CC1101_AGCCTRL0,    0x91},
    {CC1101_WORCTRL,     0xFB},
    {CC1101_FREND1,      0xB6},
//    {CC1101_FREND1,      0x56},   //
    {CC1101_FSCAL3,      0xEA},
    {CC1101_FSCAL2,      0x2A},
    {CC1101_FSCAL1,      0x00},
    {CC1101_FSCAL0,      0x1F},
    {CC1101_TEST2,       0x81},
    {CC1101_TEST1,       0x35},
    {CC1101_TEST0,       0x09}

   
Viki Shi:

看描述AB板是相同的配置,但是重复数据只出现在A板?

Butterfly:

用A板单独循环发21个字节数据给B,会有这个问题吗?
建议先测试单独A发送,B接收没有问题

user3971797:

回复 Butterfly:

问题已经解决了,谢谢!

赞(0)
未经允许不得转载:TI中文支持网 » CC1101 数据接收重复问题
分享到: 更多 (0)