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.

CC1101 ASK模式不能接收,有没有大神帮我分析分析

用2-FSK模式可以正常收发,下面是我2-fsk的配置

//基频:432.6M FREQ2 FREQ1 FREQ0
//前导字节为2个 MDMCFG1
//better sensitivity MDMCFG2
//Data rate:110 kBaud MDMCFG4 MDMCFG3
//RX filter BW: 325 KHZ MDMCFG4 MDMCFG3
//Deviation: 47.6KHZ
//Modulation format: 2-FSK
//Channel number: 0x0f

const RF_SETTINGS rfSettings = //channel number变了
{
0x00, //FSCTRL2;
0x08, // FSCTRL1 Frequency synthesizer control.
0x00, // FSCTRL0 Frequency synthesizer control.
0x10, // FREQ2 Frequency control word, high byte.
0xA3, // FREQ1 Frequency control word, middle byte.
0x72, // FREQ0 Frequency control word, low byte.
0x5C, // MDMCFG4 Modem configuration.
0x15, // MDMCFG3 Modem configuration.
0x03, // MDMCFG2 Modem configuration.
0x02, // MDMCFG1 Modem configuration.
0xF8, // MDMCFG0 Modem configuration.

0x0f, // CHANNR Channel number.
0x47, // DEVIATN Modem deviation setting (when FSK modulation is enabled).
0xB6, // FREND1 Front end RX configuration.
0x10, // FREND0 Front end RX configuration.
0x18, // MCSM0 Main Radio Control State Machine configuration.
0x1D, // FOCCFG Frequency Offset Compensation Configuration.
0x1C, // BSCFG Bit synchronization Configuration.
0xC7, // AGCCTRL2 AGC control.
0x00, // AGCCTRL1 AGC control.
0xB2, // AGCCTRL0 AGC control.

0xEA, // FSCAL3 Frequency synthesizer calibration.
0x2A, // FSCAL2 Frequency synthesizer calibration.
0x00, // FSCAL1 Frequency synthesizer calibration.
0x11, // FSCAL0 Frequency synthesizer calibration.
0x59, // FSTEST Frequency synthesizer calibration.
0x81, // TEST2 Various test settings.
0x35, // TEST1 Various test settings.
0x09, // TEST0 Various test settings.
0x2E, // IOCFG2 GDO2 output pin configuration.
0x06, // IOCFG0 GDO0 output pin configuration. Refer to SmartRF?Studio User Manual for detailed pseudo register explanation.

0x04, // PKTCTRL1 Packet automation control.
0x45, // PKTCTRL0 Packet automation control.
0x00, // ADDR Device address.
0xFF // PKTLEN Packet length.
};

改成ask模式后,就不能接收了,试过很多速率,带宽等的不同配置,都不能接收成功,也阅读过N022的说明文档,对 MDMCFG2和 FREND1是做过相应修改的,通过调试后发现,当调用 halSpiStrobe(CCxxx0_SRX);//进入接收状态,

void halSpiStrobe(INT8U strobe)
{
CSN = 0;
while (MISO);//为低电平说明晶振开始工作
SpiTxRxByte(strobe); //写入命令
CSN = 1;
}

就卡在了while (MISO);//为低电平说明晶振开始工作

不能在往下执行了,下面我列一下我的一张ask的配置

const RF_SETTINGS rfSettings = //channel number变了
{
0x00, //FSCTRL2;
0x02, // FSCTRL1 Frequency synthesizer control.频率合成器控制 中频??? 04还是09 0D 怎么算???
0x00, // FSCTRL0 Frequency synthesizer control. 1

0x10, // FREQ2 Frequency control word, high byte. 1 决定基频 可以根据说明文档计算得到
0xA5, // FREQ1 Frequency control word, middle byte.
0x6A, // FREQ0 Frequency control word, low byte.???

0xf5, // MDMCFG4 Modem configuration. 调制器配置 由接收滤波器带宽和波特率共同决定
0x83, // MDMCFG3 Modem configuration.????? 调节波特率
0x33, // MDMCFG2 Modem configuration. 模式选择,是否使用曼切斯特编码,传输同步字节设置 33还是3b
0x02, // MDMCFG1 Modem configuration. 高四位决定前导码的最小位数 低四位 指数的频道间隔
0xF8, // MDMCFG0 Modem configuration. 决定通道间隔的频率,一般为200HZ

0x0A, // CHANNR Channel number. 1 通道数选择

0x15, // DEVIATN .调制器偏差设置 低位设置无效??
0X47, //FIFOTHR

0x56, // FREND1 Front end RX configuration. 前端RX配置 B6???56?? 两者选择和带宽有关
0x11, // FREND0 Front end TX configuration. 和功率寄存器有关 10 11

0x18, // MCSM0 Main Radio Control State Machine configuration. 1主要的无限状态机控制配置 默认

0x14, // FOCCFG Frequency Offset Compensation Configuration.频率偏移补偿配置 1C??14
0x6C, // BSCFG Bit synchronization Configuration. 位同步配置,和时钟有关 1C ??6c

0x04, // AGCCTRL2 AGC control. 04 ????03
0x00, // AGCCTRL1 AGC control. 00 ?????40
0x92, // AGCCTRL0 AGC control. ????
// 0xFB, // WORCTRL新增的自己

0xEA, // FSCAL3 Frequency synthesizer calibration. 频率合成器校准???? EA E9
0x2A, // FSCAL2 Frequency synthesizer calibration.
0x00, // FSCAL1 Frequency synthesizer calibration. 1
0x11, // FSCAL0 Frequency synthesizer calibration. 11 1F 22222222222

0x59, // FSTEST Frequency synthesizer calibration. 频率合成器校准控制 默认

0x81, // TEST2 Various test settings. 各种测试设置 ok 81 88 222222222
0x35, // TEST1 Various test settings. 35 31 22222222222
0x09, // TEST0 Various test settings. 1

0x2E, // IOCFG2 GDO2 output pin configuration. 高阻抗 29???
0x06, // IOCFG0 GDO0 output pin configuration. 工作在异步串行模式 ??????

0x04, // PKTCTRL1 Packet automation control. 包的自动化控制 CRC校验用 1
0x45, // PKTCTRL0 Packet automation control. 05???
0x00, // ADDR Device address. 设备地址 1
0xFF, // PKTLEN Packet length. 数据包长度
};

网上的很多关于ask配置的例子,我也试过,都不能接收,求大师们帮我看看是什么原因,自己实在分析不出来了

  • 你的这些配置可以现在smartRF studio 上面验证码?

    可否实现两个device的对传?

    BR. AZ

  • 亲爱的TI技术支持,您们好:

        我司在使用贵司的cc1101时出现以下问题,请在有空的时候帮忙解决下,谢谢;

       CC1101发射端(FSK调制方式)使用FIFO发送数据,频率偏移19khz,速率1.2kpbs,接收端(FSK调制方式),频率偏移380.85khz,RX filter BW为812.5khz,接收端速率设置为1.2kbps时(和发射端一样),异步直通模式下,GDO0端口输出的高低电平数据能够看到有效数据波形(比如能清晰的看到引导、同步头等等),当接收端速率设置为其他速率时,GDO0输出的波形就会不正确了,宽度都和1.2kbps下的电平宽度不一样,请问接收端有效数据与速率有关是什么原因造成的,我看官网的手册都说只与RX filter BW有关,请问有哪种情况会造成这种错误

        接收端配置如下:

    {CC1101_FSCTRL0, 0x00},
    {CC1101_FSCTRL1, 0x08},
    {CC1101_FSCTRL0, 0x00},
    {CC1101_FREQ2, 0x10},//433.92
    {CC1101_FREQ1, 0xB0},
    {CC1101_FREQ0, 0x71},
    //{CC1101_FREQ0, 0x3f},
    {CC1101_MDMCFG4, 0x0C},//1.2kbps 0xE9
    //{CC1101_MDMCFG3, 0x83},//0x43
    //{CC1101_MDMCFG4, 0x05},//1.2kbps 0xE9
    //{CC1101_MDMCFG3, 0x83},//0x43
    //{CC1101_MDMCFG4, 0x0B},// 0x05速率:100Kb,接收滤波带宽:812.5KHZ 0xEA
    //{CC1101_MDMCFG3, 0xF8},//0x83
    //{CC1101_MDMCFG4, 0x2B},// 0x05速率:100Kb,接收滤波带宽:541KHZ 0xEA
    //{CC1101_MDMCFG3, 0xF8},//0x83
    {CC1101_MDMCFG2, 0x03}, 
    {CC1101_MDMCFG1, 0x22},
    {CC1101_MDMCFG0, 0xF8},
    {CC1101_CHANNR, 0x00},
    //{CC1101_DEVIATN, 0x34},//0x34
    {CC1101_DEVIATN, 0x77},//0x34
    {CC1101_FREND1, 0x56},
    {CC1101_FREND0, 0x10},
    {CC1101_MCSM0, 0x18},
    {CC1101_FOCCFG, 0x16},
    {CC1101_BSCFG, 0x6C},
    {CC1101_AGCCTRL2, 0x43},
    {CC1101_AGCCTRL1, 0x40},
    {CC1101_AGCCTRL0, 0x91},
    {CC1101_FSCAL3, 0xE9},
    //{CC1101_FSCAL3, 0xEA},
    {CC1101_FSCAL2, 0x2A},
    {CC1101_FSCAL1, 0x00},
    {CC1101_FSCAL0, 0x1f},
    {CC1101_FSTEST, 0x59},
    {CC1101_TEST2, 0x81},
    {CC1101_TEST1, 0x35},
    {CC1101_TEST0, 0x09},
    {CC1101_IOCFG2, 0x0D},
    {CC1101_IOCFG0, 0x0D},
    {CC1101_PKTCTRL1, 0x04},
    {CC1101_PKTCTRL0, 0x32},//使能串行异步模式
    {CC1101_ADDR, 0x00},
    {CC1101_FREND0, 0x11},
    {CC1101_PKTLEN, 0x0B},

  • 你成功了吗?我现在发现的问题是在没有信号时,GD02脚也会输出很多干扰波形,这个静噪怎么处理?