微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > 射频无线通信设计 > CC1101配置空闲信道评估CCA,导致发送死掉

CC1101配置空闲信道评估CCA,导致发送死掉

时间:10-02 整理:3721RD 点击:

CC1101配置空闲信道评估CCA,导致发送死掉


CCA初始化代码

void CC1101_CCAConfig(void)

{

    CC1101_WriteReg(CC1101_IOCFG2,0x0E);//GDO2引脚输出载波感应电平,如果RSSI级别在门限之上为高电平

    CC1101_WriteReg(CC1101_MCSM1,0x3F);//接受信号强度低于门限值且当前未接收报文则信道空闲,让TX和RX结束后,芯片都保持在RX状态。        

    CC1101_WriteReg(CC1101_AGCCTRL1,0x40);//低噪声放大器增益先减小,载波监听相对阈值禁用,载波监听绝对阈值由MAGN_TARGET设置

    CC1101_WriteReg(CC1101_AGCCTRL2,0x07);//42dB      

}

这部分是发送代码

void Send_Date(void)

{

    CC1101_SetRxMode();

    nop();nop();nop();nop();nop();nop();

    nop();nop();nop();nop();nop();nop();   

    if(CC1101_GDO2_Status) //信道繁忙

    {

        CC1101_WriteCmd(CC1101_SFRX);       //清洗接收缓冲区

        LED_Toggle();

        return;

    }

    CC1101_SendPacket(&dat[0],strlen((char *)&dat[0]));//执行发送

}

开启CCA后,发送就会死在检测GDO0这里( IOCFG0D配置为0x06).

CCA这块代码测试过;屏蔽掉发送可以LED灯闪烁


Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top