微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > TI Zigbee设计交流 > ZSTACK协议栈中CC2530+2591如何设置开启PA呢?

ZSTACK协议栈中CC2530+2591如何设置开启PA呢?

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

RT,协议栈类型ZStack-CC2530-2.3.0-1.4.0,2591引脚完全参照的是TI官方文档,只是在硬件层中,底板的两个LED灯分别定义了P1_1和P1_4,我参照TI官方的说明,修改了协议栈,但是2591似乎还是没有工作,请问这种情况下应该如何修改使PA工作呢?

您需要在  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 xHAL_PA_LNA
#define xHAL_PA_LNA_CC2590

我已经去掉了x的

您是否参考了 http://www.ti.com/lit/an/swra308a/swra308a.pdf 给出的设置?

我用的开发板是在网上购买的,原理图显示连线和TI官方相同的

请问下表

CC2530

REGISTER

ADDRESS

AGCCTRL1

0x61B2

0x15

FSCAL1

0x61AE

0x00

RFC_OBS_CTRL0

0x61EB

0x68

RFC_OBS_CTRL1

0x61EC

0x6A

TXPOWER

0x6190

详见表4.6

OBSSEL1

0x6244

0xFB

OBSSEL4

0x6247

0xFC

P0DIR

0xFD

0x80

所述寄存器都需要修改吗?

1. HA_PA_LNA 和HAL_PA_LNA_CC2590只enable一个,你的情况应定义如下

#define HAL_PA_LNA

#define xHAL_PA_LNA_CC2590

2.  你的1.1和1.4 都是用于PA的, 这种情况 因disable LED.

是的!我就是这么想的,但是我不知道该怎么disable那两个LED,是在hal_boarf_cfg.h中直接删除LED的定义吗?

换成别的脚,或移除LED的define,然后编译,解决报错。

我没有2.5.1a,用的HA的版本,实际初始化LED就两个的地方,如下,debug一下,避免这些地方的调用

HAL_BOARD_INIT()

HalDriverInit() -> HalLedInit()

我删除了所有的LED的定义,可是LED还在闪....

或者您可以修改

/* Set to TRUE enable LED usage, FALSE disable it */
#ifndef HAL_LED
#define HAL_LED TRUE
#endif
#if (!defined BLINK_LEDS) && (HAL_LED == TRUE)
#define BLINK_LEDS
#endif

那就找到为什么LED会闪,你是用的没有任何修改的协议栈做的测试吗?还是网上哪下载的?

我用了很多方法,把LDE所有的都给注释掉了,哪怕把灯给禁用了,PA还是不能工作。可是我用点对点实验PA就能用....

1. 你可以去下最新的协议栈,然后只修改那个PA开启的定义

2. 你可以尝试用smartstudio直接控制,smartstudio是可以选择控制PA的。先看看硬件是否有问题。

我测试了下,硬件是正常的,用2591比不用2591大大约20dbm,现在用的是zstack2.5,烧SimpleApp是可以通信的,不过SimpleApp可以添加路由功能吗?我之前的代码是用SensorDemo改的,但是SensorDemo似乎不能在2.5版本下运行,请问有适用于zstack2.5的SensorDemo吗?

成功了,是原来的协议栈的问题,用了2.5对应的sensordemo可以使用了,谢谢TI诸位工程师的解答!

您好,请问后来您是怎么关掉LED灯,现在也卡在这了,望不吝赐教,万分感谢啊

 我的问题已经解决,的确用TI的协议栈就可以开启PA,之前的问题是系统开启之后32MHz和32KHz的时钟没有同步,导致出错。现在通讯距离有很大提升,具体有待测量

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

网站地图

Top