参照网上论坛和一些相关的帖子很容易就找到设置了;小白在这里再详细的总结一下,把遇到的一些问题提出来。

首先在网上买了一对CC2530+RFX2401C的模块,发射功率和1.2公里吹嘘的话也不知道是不是真的,暂时当它是真的吧!手头上也没有什么工具可以测这些参数。

跑题了,还是先看看代码怎么修改吧。我们根据模块的硬件连接线找到RFX24001C的控制线先,根据这颗PA数据手册我们可以清楚地知道PA控制管脚是TXEN和RXEN

知道这两个脚,那我们就很容易在CC2530上面找出控制这两个的引脚,因为ZIGBEE的厂商不一定都是按照官方连接的管脚做的,这样子也为一些不清楚的同学、糊里糊涂测试的同学带回正轨。现在我手上这块模块CC2530使用的是P1.1--TXEN;P1.2--RXEN;然后根据RFX2401C的管脚控制定义进行程序修改

知道这两个之后我们来修改代码:

第一步:在hal_board_cfg.h中找到#define xHAL_PA_LNA,把它改成#define HAL_PA_LNA;这样是打开协议栈的PA使能。

第二步:在mac_radio_defs.c中找到MAC_INTERNAL_API void macRadioTurnOnPower(void)这个函数

/* P1_1 -> PAEN */
RFC_OBS_CTRL0 = RFC_OBS_CTRL_PA_PD_INV;
OBSSEL1       = OBSSEL_OBS_CTRL0;

/* P1_2 -> EN (LNA control) */
RFC_OBS_CTRL1 = RFC_OBS_CTRL_LNAMIX_PD_INV;
OBSSEL2       = OBSSEL_OBS_CTRL1;

把原来那部分屏蔽后,再复制粘贴修改成上述代码。到这里代码已经改完了,我们可以去测试了。

如果做到这里,你的测试完全成功,请不要高兴,因为作为一个研发人员还是需要更深刻的理解的。在这里我就有几个疑问,提出来让大神们指正指正……

1、协议栈中的PA和LNA代表的是什么意思?而RFX2401C中却命名为TXEN和RXEN,这样程序的修改虽然是交给协议栈处理,但协议栈并不知道PA芯片是CC2591还是RFX2401C?这里面的PA控制过程还需要验证。有帖子讲PA是发射电路用的信号放大,LNA是接收信号放大。

2、我们知道有OBSSEL0-OBSSEL4的五个这样控制,分别对应P1.0到P1.4的管脚,OBSSEL_OBS_CTRL0和OBSSEL_OBS_CTRL1给它们赋的值代表的是置0或置1吗?

3、这只是打开PA的使能而已,一些同学测得结果往往不理想,为什么呢?或许你并没有把发射功率设置到最大4.5Dbm。

不知道大神们有没有遇到过更神奇的一些事情,可以一起分享一下!

关于ZIGBEE的CC2530+RFX2401C协议栈的修改相关推荐

  1. ZigBee——在CC2530的ZStack中添加定时任务

    在使用CC2530芯片进行ZigBee协议的开发时,我们往往使用TI公司提供的带有ZigBee协议栈的ZStack工程,接下来以其中的SampleApp为例,向其中添加自己需要的定时任务并设置周期和处 ...

  2. ZigBee无线传感器的网络协议栈

    小结: Z-Stack协议栈 = OSAL操作系统 + CC2530硬件模块 + AF无线网络应用 协议定义的是一系列的通信标准,通信双方需要共同按照这一标准进行正常的数据收发;协议栈是协议的具体实现 ...

  3. Zigbee网络架构+ZigBee的体系结构+理解zigbee节点的实现的案例+“51单片机” 和 “zigbee” 、 “cc2530芯片” 之间的关系+芯片cc2530

    ZigBee技术具有强大的组网能力,可以形成星型.树型和网状网,可以根据实际项目需要来选择合适的网络结构: 以下拓扑结构的节点,均是指支持zigbee协议的并以其通信技术手段,实现节点处所需要功能的产 ...

  4. zigbee zcl规范及其协议栈实现3 读取服务器端属性值

    zigbee zcl规范及其协议栈实现2   中有介绍 对通用命令的处理,按照那个思路和信息流程添加读取服务器端属性值的功能 客户端samplesw想要知道与自己的12号端点SAMPLESW_ENDP ...

  5. Zigbee网关 CC2530驱动1602显示屏

    根据文章zigbee网关 CC2530网关开发板之终端开发板可用的IO点击打开链接 目前开发板可用的IO为 P0_4,P0_5,P0_6,P0_7 -- 空 P1_0,P1_1,P1_2 -- 空 而 ...

  6. 【ember zigbee】序章:协议栈相关文档学习笔记

    原文地址:https://blog.csdn.net/tainjau/article/details/90648114 文章目录 写在前面 一.材料出处 二.文档解析 2.1.EZSP Protoco ...

  7. (转载)ZigBee zcl规范及其协议栈实现1

    zigbee zcl规范及其协议栈实现1 http://www.cnblogs.com/-song/archive/2013/03/16/3331818.html refer to ZigBee_Cl ...

  8. (转载)zigbee zcl规范及其协议栈实现2

    zigbee zcl规范及其协议栈实现2   中有介绍 对通用命令的处理,按照那个思路和信息流程添加读取服务器端属性值的功能 客户端samplesw想要知道与自己的12号端点SAMPLESW_ENDP ...

  9. CC2530 + RFX2401C Zigbee模块

    最近公司的一个项目需要使用zigbee,购买了网上的现成的模块,通信距离都很远,但是协议等都不公开,价格也很高,不方便使用,最后决定自己画板子,起初使用的是CC2530 + CC2596的组合,发现效 ...

最新文章

  1. pd.get_dummies
  2. 数据库常用对象概念讲解
  3. ssh_config sshd_config 详解
  4. [转载] 七龙珠第一部——第125话 神将登场
  5. 第4章 与缓冲区有关的函数
  6. java - 朴素贝叶斯
  7. Debug Assertion Failed!
  8. (五)Vue 面试真题演练
  9. 第十二届 2021年1月 蓝桥杯青少年组省赛C++组 第1题--第3题(scratch实现)
  10. Pyqt5转化.ui文件到.py文件
  11. 我也发个图 娱乐一下
  12. 小凡的Python之路——安装
  13. DCDC电源模块方案 大功率DCDC变换器
  14. 【Pyecharts50例】GEO航线图/lines
  15. 2013年上半年CSDN精华0分下载资源
  16. 关于 RESTFUL API 安全认证方式的一些总结
  17. 全国计算机等级考点申请,全国计算机等级考试(NCRE)考点申请书某高校(367)
  18. 3Dmax与BIM模型的区别
  19. squid代理服务器的应用
  20. centOS7 清理系统垃圾

热门文章

  1. gitlab mysql 配置_Gitlab安装配置及使用
  2. 计数器控制led灯的亮灭
  3. 飞塔防火墙命令行终端修改输出长度
  4. 安装完黑苹果之后该做的事情
  5. 【PowerDesigner】Mysql设计工具 16.5破解
  6. “互联网+”环境下高职毕业生求职风险应对策略
  7. RecyclerView之利用ItemDecoration实现万能分割线
  8. 新手做头条号短视频,这三大点要牢记,让你少走弯路,抓紧收藏
  9. less-用法:简介、变量、混合、嵌套、运算、转义、函数、映射、作用域、注释、导入、继承、条件判断
  10. python妹子图爬虫5千张高清大图突破防盗链福利5千张福利高清大图