CC2530添加CC2591功放后在ZigBee中的改动

首先需要修改:
(如果使用CC2530 + CC2590EM,则定义HAL_PA_LNA_CC2590如果使用CC2530 + CC2591EM,则定义HAL_PA_LNA注意,只能使用其中一个定义)
在  hal_board_cfg.h 内使能,去掉X
/* ------------------------------------------------------------------------------------------------
* CC2590/CC2591 support
*
* Define HAL_PA_LNA_CC2590 if CC2530+CC2590EM is used
* Define HAL_PA_LNA if CC2530+CC2591EM is used
* Note that only one of them can be defined
* ------------------------------------------------------------------------------------------------
*/
#define HAL_PA_LNA
#define xHAL_PA_LNA_CC2590


一般如果按照官方的电路设计的功放,那么只需要以上设置就可以。如果在官方的电路上有所改动,那么还需按照如下的,再结合自己的实际情况修改:

在TI Ztack 协议栈中,CC2530与CC2591接线方式如下图:

CC2591有三个脚与CC2530连接,如果硬件管脚连接的是其他的管脚则需要在协议栈上修改。值得注意的是PA_EN与EN只能连接在P1_0到P1_5,这是由CC2530决定的。HGM可以任意定义。
下面说下这三个管脚在协议栈中的修改方式。 
1. HGM的修改:如果定义了HAL_PA_LNA那么首先会在初始化的时候调用对应的
HAL_BOARD_INIT函数,在该函数中有Set PA/LNA HGM control 的引脚P0DIR |= BV(7),那么修改该处的管脚定义即可。然后在mac_radio_defs.h中
 #define HAL_PA_LNA_RX_HGM()  st( P0_7 = 1; )    
#define HAL_PA_LNA_RX_LGM()  st( P0_7 = 0; )修改此处即可。 
2. 修改PA_EN与EN,此处的修改比较隐藏。在mac_radio_defs.c中找到
macRadioTurnOnPower函数,在该函数中找到 /* P1_2 -> PAEN */ 
RFC_OBS_CTRL0 = RFC_OBS_CTRL_PA_PD_INV; OBSSEL2       = OBSSEL_OBS_CTRL0;  
/* P1_5 -> EN (LNA control) */
RFC_OBS_CTRL1 = RFC_OBS_CTRL_LNAMIX_PD_INV; 
OBSSEL5      = OBSSEL_OBS_CTRL1;

第一个就是设置PAEN的,如果是P1_3就设置OBSSEL3,用的P1口的哪个管脚就设置对应的OBSSEL寄存器即可。同理EN也是同样的设置。





猜你喜欢

转载自blog.csdn.net/qq_34572705/article/details/80019556
今日推荐