微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > TI Zigbee设计交流 > 关于在ZStack中驱动RFX2401C,急求TI员工或大神解答,在线等。

关于在ZStack中驱动RFX2401C,急求TI员工或大神解答,在线等。

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

      要在Zstack中驱动RFX2401C,网上找资料说需要修改两个地方,一、定义#define HAL_PA_LNA这个宏,二、在macRadioTurnOnPower函数中把修改以下代码

/* P1_1 */
RFC_OBS_CTRL0 = RFC_OBS_CTRL_PA_PD_INV;
OBSSEL1 = OBSSEL1_OBS_CTRL0;

/* P1_4 */
RFC_OBS_CTRL1 = RFC_OBS_CTRL_LNAMIX_PD_INV;
OBSSEL4 = OBSSEL4_OBS_CTRL4;

修改成

/* P1_5 -> PAEN */

RFC_OBS_CTRL0 = RFC_OBS_CTRL_PA_PD_INV;

OBSSEL5 = OBSSEL_OBS_CTRL0; //P1_5 TXEN

P1SEL &= ~0X10;

P1DIR |= 0X10;

P1_4 = 1; //P1_4 RXEN andy pa其中P1_5接TXEN,P1_4接RXEN,这样修改后,协议栈自己就会完成对RFX2401C的驱动。

但是我的问题是这样的,我们硬件工程师把TXEN接到P0_0,RXEN接到P0_1上了,而OBSSEL5寄存器只有0~5,也就是只能控制P1_0到P1_5,我现在没办法配置OBSSEL5寄存器了,请问,在不改动硬件的前提下是否有解决方法?在线等,求TI员工或者各位大神帮帮忙。

TXEN只能配置为P1_0到P1_5,RXEN可以任意接。不过如果你们的设备只是点对点单向通信,不组网,单发单收,可以持续使能TXEN

请问如果调用协议栈组网的话,TXEN没接到P1_0到P1_5就不行,或者是否有解决办法?

你可以试试自己写个协议出来

自己写协议水平不够啊

给你一个建议,P1_0到P1_5任意一个闲置引脚,配置成TX状态同步模式,然后设置上升沿中断,上升沿中断时反转为下降沿中断,并且TXEN口拉高,下降沿中断时再把TXEN拉低。

@jingyong,

还是改硬件比较方便了。

谢谢,已经决定改硬件

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

网站地图

Top