Zigbee学习
(一)Zigbee简介和开发环境快速建立(IAR)
1.我不是很清楚控制链条,对于Zigbee不是太清楚
答案:CC2530 芯片上集成了 8051 内核(增强型)
2.性能特点:低速率远距离,这造就了 Zigbee 低功耗信息传输的优势,网上经常谈到两节普通
的 5 号干电池可以使用6 个月到 2 年的时间,免去充电和更换电池的麻烦。
3. 节点所属类别:
①:协调器(Coodinator)②:路由器(Router)③:终端(End Device)
同一网络中至少需要一个协调器,也只能有 1 个协调器,负责
各个节点 16 位地址分配(自动分配)。理论上可以连上 65536 个节点
4.开发环境:IAR
还有个TI协议栈,(ZStack-CC2530-2.5.1a)后面再说什么用
5.仿真器:SRF04EB(驱动自动识别)
6.串口驱动
7.IAR工程文件的快速建立
(二)基础实验(CC2530)
1.基本端口设置

P1SEL (0:普通 IO 口 1:第二功能)
P1DIR (0:输入 1:输出 )
P1INP (0:上拉/下拉 1:三态 )
按照表格寄存器内容,我们对 LED1,也就是 P1_0 口进行配置,当 P1_0 输
出低电平时 LED1 被点亮。所以配置如下:
P1SEL &=~0x01; //作为普通 IO 口
P1DIR |= 0x01; //P1_0 定义为输出
P1INP &=~0X01; //打开上拉
由于 CC2530 寄存器初始化时默认是:
P1SEL =0x00;
P1DIR =0x00;
P1INP =0X00;
2.外部中断
3.
定时器T1(查询方式)
定时器T3(中断方式)
4.串口通信
UART0 对应的外部设备 IO 引脚关系为:
P0_2------RX
P0_3------TX
UART1 对应的外部设备 IO 引脚关系为:
P0_5------RX
P0_4------TX
5.AD控制
6.睡眠唤醒
7.看门狗
8.LCD12864液晶显示
(三)组网演练(zigbee)
什么是 ZigBee协议栈呢?它和 ZigBee 协议有什么关系呢?
通俗点来理解就是协议栈是协议和用户之间的一个接口,开发人员通过使用协议栈来使用这个协议的,进而实现无
线数据收发。
ZigBee无线网络协议层的架构图:

ZigBee的协议分为两部分
IEEE 802.15.4 定义了PHY(物理层)和 MAC(介质访问层)技术规范;
ZigBee联盟定义了 NWK(网络层)、APS(应用程序支持子层)、APL(应用层)技术规范。
ZigBee 协议栈就是将各个层定义的协议都集合在一起,以函数的形式实现,并
给用户提供 API(应用层),用户可以直接调用。
来个小总结:ZigBee 协议栈已经实现了 ZigBee 协议,用户可以使用协议
栈提供的 API 进行应用程序的开发,在开发过程中完全不必关心 ZigBee 协议的
具体实现细节,要关心的问题是:应用层的数据是使用哪些函数通过什么方式把
数据发送出去或者把数据接收过来的。所以最重要的是我们要学会使用 ZigBee
协议栈。
1、组网:调用协议栈的组网函数、加入网络函数,实现网络的建立与节点
的加入。
2、发送:发送节点调用协议栈的无线数据发送函数,实现无线数据发送。
3、接收:接收节点调用协议栈的无线数据接收函数,实现无线数据接收。
大家可以了解一下下面的关键字:
CCM - Counter with CBC-MAC (mode of operation)
HAL - Hardware Abstraction Layer (硬件抽象层)
PAN - Personal Area Network (个人局域网)
RF - Radio Frequency (射频)
RSSI - Received Signal Strength Indicator (接收信号强度指示)
.
.
.
(四)协议栈工作原理介绍
简图:

Zigbee学习的更多相关文章
- zigbee学习:示例程序SampleApp中按键工作流程
zigbee学习:示例程序SampleApp中按键工作流程 本文博客链接:http://blog.csdn.net/jdh99,作者:jdh,转载请注明. 环境: 主机:WIN7 开发环境:IAR8. ...
- zigbee学习:示例程序SampleApp中通讯流程
zigbee学习:示例程序SampleApp中通讯流程 本文博客链接:http://blog.csdn.net/jdh99,作者:jdh,转载请注明. 参考链接: http://wjf88223.bl ...
- ZigBee学习五 无线温度检测
ZigBee学习五 无线温度检测 1)修改公用头文件GenericApp.h typedef union h{ uint8 TEMP[4]; struct RFRXBUF { unsigned cha ...
- ZigBee学习四 无线+UART通信
ZigBee学习四 无线+UART通信 1) 协调器编程 修改coordinator.c文件 byte GenericApp_TransID; // This is the unique messag ...
- ZigBee学习三 UART通信
ZigBee学习三 UART通信 在使用串口时,只需掌握ZigBee协议栈提供的串口操作相关的三个函数即可. uint8 HalUARTOpen(uint8 port,halUARTCfg_t *co ...
- ZigBee学习二 LED点对点通信
ZigBee学习二 LED点对点通信 终端上电后,自动连接协调器进行组网,成功后,开始发送LED字符数据.当协调器接收到数据后,终端和协调器的LED1都开始闪烁. 工程搭建和文件添加 步骤这里就省了. ...
- ZigBee学习一 任务处理函数_ProcessEvent
ZigBee学习一 任务处理函数_ProcessEvent //任务处理函数UINT16 GenericApp_ProcessEvent( byte task_id, UINT16 events ){ ...
- zigbee学习之路(十五):基于协议栈的按键实验
一.前言 经过上次的学习,相信大家已经初步学会使用zigbee协议进行发送和接受数据了.今天,我们要进行的实验是按键的实验,学会如何在协议栈里实现按键中断. 二.实验功能 在协议栈上实现按键中断,BU ...
- zigbee学习之路(十三):基于协议栈的Usart 实验
一.前言 这次实验我们来学习基于zigbee的串口通信实验,揭开zigbee神秘的面纱,让大家可以用zigbee协议编制属于自己的程序,这次实验只是串口发送数据,并没有进行无线的数据传输,为的是使大家 ...
- zigbee学习之路(十二):zigbee协议原理介绍
一.前言 从今天开始,我们要正式开始进行zigbee相关的通信实验了,我所使用的协议栈是ZStack 是TI ZStack-CC2530-2.3.0-1.4.0版本,大家也可以从TI的官网上直接下载T ...
随机推荐
- POJ_2019_Cornfields
Cornfields Time Limit: 1000MS Memory Limit: 30000K Total Submissions: 7444 Accepted: 3609 Descri ...
- MySQL 同一实例不同库之间表同步(Otter 应用)
1 需求 在同一台服务器同一MySQL实例中的source库和target库都存在student表.如果source库中该表发生增删改操作时,也需要体现到target库的student表中: 2 解决 ...
- ConcurrentLinkedQueue
我们要实现一个线程安全的队列有两种实现方式,阻塞算法.非阻塞算法.使用阻塞算法的队列可以用一个锁(入队和出队用同一把锁) 或两个锁(入队和出队用不同的锁)等方式来实现,而非阻塞的实现方式则可以使用循环 ...
- 显示界面的流畅性FHHFPSIndicator
github地址https://github.com/jvjishou/FHHFPSIndicator 1.使用cocoapods pod 'FHHFPSIndicator' 使用方法: 然后在Ap ...
- Scala系统学习(一):Scala概述
Scala是可扩展语言的缩写,是一种混合功能编程语言. 它由Martin Odersky创建. Scala顺利整合面向对象和函数式语言的功能. Scala被编译后在Java虚拟机上运行. 许多现有公司 ...
- javascript unicode与GBK2312(中文)编码转换示例
一个javascript的unicode与GBK2312编码相互转换的方法. 代码: var GB2312UnicodeConverter = { ToUnicode: function (s ...
- Firefox及我使用的firefox扩展
什么数字安全浏览器,什么极速浏览器,现在都取代不了Firefox在我心中的位置.你想想,一款浏览器老是弹呀弹的,时不时问我换不换桌面,问我请不清理垃圾,真是的,这些关它浏览器鸟事. 喜欢Firefox ...
- js判断两个日期是否严格相差整年(合同日期常用)
1.var beginDate = new Date($("#InvoiceStartTime").val()); var endDate = new Date($("# ...
- 020-安装centos6.5后的生命历程
01.配置网络.修改了ifcfg-eth0文件内容. 1)ifcfg-eth0原来的内容如下: 2)ifcfg-eth0配置后的内容如下: 3)然后重启网络服务: 4)测试网络是否可通: 5)查看 ...
- XDU1024简单逆序对(贪心||分治)
题目描述 逆序对问题对于大家来说已经是非常熟悉的问题了,就是求i<j时,a[i] > a[j]的组数.现在请你求出一串数字中的逆序对的个数,需要注意的是,这些数字均在[0,9]之内. 输入 ...