最近在学习zigbee协议栈,自己的zigbee模块使用basicRF例程点对点通信距离远大于使用sampleAPP例程的通信距离,不知道是什么原因,求大神帮忙!!!
dewei wang:
还有就是 我在网上找了一些增加通信的距离的方法,对代码做了一些修改,距离确实有所提高,但是不明显,下面把修改步骤贴出来大家看对不对(sampleAPP):
MAC层下mac_radio_defs.h文件:
//#define MAC_RADIO_RECEIVER_SATURATION_DBM 10 /* dBm */#define MAC_RADIO_RECEIVER_SATURATION_DBM -4 /* -4 dBm */
打开#define HAL_MAC_USE_REGISTER_POWER_VALUES宏,在文件末尾,并在ZMain.c的main函数添加:
ZMacInit();uint8 value = 0xF5;MAC_MlmeSetReq(MAC_PHY_TRANSMIT_POWER, &value);zmain_ext_addr();
mac_spec.h文件:
//#define MAC_SPEC_ED_MIN_DBM_ABOVE_RECEIVER_SENSITIVITY 10#define MAC_SPEC_ED_MIN_DBM_ABOVE_RECEIVER_SENSITIVITY -8
//#define MAC_SPEC_MIN_RECEIVER_SENSITIVITY -85#define MAC_SPEC_MIN_RECEIVER_SENSITIVITY -95
修改后,距离有所改善,但是还是比较近只有10米左右。不知道如何解决CC2530的通信距离问题,在网上开别人的模块都有几千米的,实在是差距太大,希望路过的大神知道下如何提升距离。
VV:
回复 dewei wang:
对于通信距离的增加,根本还是还是得从硬件上去改进,你的高频电路设计,天线的阻抗匹配,理论和实践经验。
一般需要你们100%copyTI的参考设计。
软件能够发挥的余地不是特别大。