zha1.2.2.a协议栈 cc2530+cc2592模块 程序问题
cc2530+cc2592模块 PA控制引脚分别为P1-2(LNA_EN) ,P1_3(PA_EN) ,P0_0(HGM)
我
1.宏定义了HAL_PA_LNA_CC2592
2.MAC_INTERNAL_API void macRadioTurnOnPower(void){
。。
else if(paLnaChip == PA_LNA_CC2592)
{
/* P1_3 -> PAEN */
RFC_OBS_CTRL0 = RFC_OBS_CTRL_PA_PD_INV;
OBSSEL3 = OBSSEL_OBS_CTRL0;
/* P1_2 -> EN (LNA control) */
RFC_OBS_CTRL1 = RFC_OBS_CTRL_LNAMIX_PD_INV;
OBSSEL2 = OBSSEL_OBS_CTRL1;
}
。。
}
3.uint8 ZMacInit( void )
{
。。
uint8 value = 21;
。。
MAC_MlmeSetReq(MAC_PHY_TRANSMIT_POWER_SIGNED,&value);
}
这样配置CC2592是否正确?
我遇到的现象时:协调器与路由器 距离30m左右 cc2592+cc2530 就出现了经常广播route request的问题,而10m以内则正常数据通讯
请问这是为什么?
我该如何修改,我使用的是zha1.2.2.a协议栈
您有没有参考过 http://www.ti.com/lit/an/swra465a/swra465a.pdf ?
修改代码
1.宏定义HAL_PA_LNA_CC2592
2.
else if(paLnaChip == PA_LNA_CC2592)
{
/* P1_3 -> PAEN */
RFC_OBS_CTRL0 = RFC_OBS_CTRL_PA_PD_INV;
OBSSEL3 = OBSSEL_OBS_CTRL0;
/* P1_2 -> EN (LNA control) */
RFC_OBS_CTRL1 = RFC_OBS_CTRL_LNAMIX_PD_INV;
OBSSEL2 = OBSSEL_OBS_CTRL1;
/* P0_0 HGM*/
P0DIR |= 0x01;
P0 |= 0x01;
}
3. ZMacSetTransmitPower(TX_PWR_PLUS_19);
我通过debug 调试
AGCCTRL1=0x15
FSCAL1=0x00
RFC_OBS_CTRL0=0x68
RFC_OBS_CTRL1=0x6A
OBSSEL2=0xFC
OBSSEL3=0xFB
P0DIR=0x01
跟文档上的资料相同, 我是按照该文档中 8.Controlling the CC2592
和http://processors.wiki.ti.com/index.php/Enabling_the_Support_of_CC259x_PA/LNA_with_Z-Stack-Home-Automation-1.2.1修改的