微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > TI Zigbee设计交流 > 2530+2591 无协议栈 RF初始化问题

2530+2591 无协议栈 RF初始化问题

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

各位大牛:

        之前用的2530,我的应用没用用到协议栈,自己控制寄存器,设置RF不过滤帧,来写一个简单的控制协议。

        现在想加上PA,网上买的2530+2591,使用的时候距离还没有原来单纯2530远,这肯定是2591没有正确打开。

        TI发布的  Using CC2591 Front End with CC2530/1  里写到:

        然后看TI发布的  TIMAC and Z-Stack Modifications for using CC2591 RF Front End with CC2530  ,理解为:P0.7控制2591高增益或者低增益。

        P1.1和P1.4的控制,按表格中TX: EN = 0;   PA_EN = 1;         RX: EN = 1;   PA_EN = 0;  于是就在发射函数的开始和结束分别进行管脚控制。

        在Using CC2591 Front End with CC2530/1  里,还提到其他寄存器的新值:

于是在RF初始化中设置为:

EN = 1; PA_EN = 0;
P0DIR |= 0x80;
HAL_PA_LNA_RX_HGM();

FRMFILT0 = 0x0C;     // 静止接收过滤,即接收所有数据包
TXPOWER = 0xD5;    // 发射功率为19dBm

FREQCTRL = 0x0B;    // 选择通道11

CCACTRL0 = 0xF8;    // 推荐值smartRF软件生成
FSCAL1 = 0x00;
TXFILTCFG = 0x09;
AGCCTRL1 = 0x15;
AGCCTRL2 = 0xFE;
TXFILTCFG = 0x09;

RFIRQM0 |= (1<<6); // //使能RF数据包接收中断
IEN2 |= (1<<0); //使能RF中断

RFST = 0xED; //清除RF接收缓冲区 ISFLUSHRX
RFST = 0xE3; // RF接收使能 ISRXON

RFC_OBS_CTRL0 = 0x68;
RFC_OBS_CTRL1 = 0x6A;
OBSSEL1 = 0xFB;
OBSSEL4 = 0xFC;

但是结果仍然是距离不远,也就是2591不工作。

请问,还有哪里没有考虑到?

EN = 1; PA_EN = 0;搞错了?

应该是反过来才是TX Power增强

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

网站地图

Top