(一)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学习的更多相关文章

  1. zigbee学习:示例程序SampleApp中按键工作流程

    zigbee学习:示例程序SampleApp中按键工作流程 本文博客链接:http://blog.csdn.net/jdh99,作者:jdh,转载请注明. 环境: 主机:WIN7 开发环境:IAR8. ...

  2. zigbee学习:示例程序SampleApp中通讯流程

    zigbee学习:示例程序SampleApp中通讯流程 本文博客链接:http://blog.csdn.net/jdh99,作者:jdh,转载请注明. 参考链接: http://wjf88223.bl ...

  3. ZigBee学习五 无线温度检测

    ZigBee学习五 无线温度检测 1)修改公用头文件GenericApp.h typedef union h{ uint8 TEMP[4]; struct RFRXBUF { unsigned cha ...

  4. ZigBee学习四 无线+UART通信

    ZigBee学习四 无线+UART通信 1) 协调器编程 修改coordinator.c文件 byte GenericApp_TransID; // This is the unique messag ...

  5. ZigBee学习三 UART通信

    ZigBee学习三 UART通信 在使用串口时,只需掌握ZigBee协议栈提供的串口操作相关的三个函数即可. uint8 HalUARTOpen(uint8 port,halUARTCfg_t *co ...

  6. ZigBee学习二 LED点对点通信

    ZigBee学习二 LED点对点通信 终端上电后,自动连接协调器进行组网,成功后,开始发送LED字符数据.当协调器接收到数据后,终端和协调器的LED1都开始闪烁. 工程搭建和文件添加 步骤这里就省了. ...

  7. ZigBee学习一 任务处理函数_ProcessEvent

    ZigBee学习一 任务处理函数_ProcessEvent //任务处理函数UINT16 GenericApp_ProcessEvent( byte task_id, UINT16 events ){ ...

  8. zigbee学习之路(十五):基于协议栈的按键实验

    一.前言 经过上次的学习,相信大家已经初步学会使用zigbee协议进行发送和接受数据了.今天,我们要进行的实验是按键的实验,学会如何在协议栈里实现按键中断. 二.实验功能 在协议栈上实现按键中断,BU ...

  9. zigbee学习之路(十三):基于协议栈的Usart 实验

    一.前言 这次实验我们来学习基于zigbee的串口通信实验,揭开zigbee神秘的面纱,让大家可以用zigbee协议编制属于自己的程序,这次实验只是串口发送数据,并没有进行无线的数据传输,为的是使大家 ...

  10. zigbee学习之路(十二):zigbee协议原理介绍

    一.前言 从今天开始,我们要正式开始进行zigbee相关的通信实验了,我所使用的协议栈是ZStack 是TI ZStack-CC2530-2.3.0-1.4.0版本,大家也可以从TI的官网上直接下载T ...

随机推荐

  1. Oracle安装部署之linux(redhat/centos)快速安装oracle 11g rac

    安装oracle 11gR2 RAC 一.网络规划及安装虚拟主机 主机名 主机版本 Ip rac1.localdomain Redhat 6.5 RAC节点1 192.168.100.11 rac2. ...

  2. 在浏览器地址栏输入一个URL后回车,将会发生的事情?

    https://yq.aliyun.com/articles/20667

  3. m4a 转 wav

    https://blog.csdn.net/zjm750617105/article/details/80148473 sox 不行, ffmpeg 很麻烦, 考虑用 avconv 很简单: 安装: ...

  4. Java中的反射机制(一)

    基本概念 在Java运行时环境中,对于任意一个类,能否知道这个类有哪些属性和方法?对于任意一个对象,能否调用它的任意一个方法? 答案是肯定的. 这种动态获取类的信息以及动态调用对象的方法的功能来自于J ...

  5. LeetCode 第 342 题(Power of Four)

    LeetCode 第 342 题(Power of Four) Given an integer (signed 32 bits), write a function to check whether ...

  6. git使用简单指南

    参考: https://www.fengerzh.com/git-reset/?utm_source=tool.lu git建库小结 (一)远端:1.在git网站上建设一个远程仓库复制git远程仓库地 ...

  7. (转)Linux Oracle服务启动&停止脚本与开机自启动

    在CentOS 6.3下安装完Oracle 10g R2,重开机之后,你会发现Oracle没有自行启动,这是正常的,因为在Linux下安装Oracle的确不会自行启动,必须要自行设定相关参数,首先先介 ...

  8. 搭建本地离线yum仓库

    目录 前言 把rpm包下载到本地 配置本地yum仓库信息 生成repodata信息 检查以及使用 对本地仓库进行更新 参考资料 修改记录 环境:VMware-Workstation-12-Pro,Wi ...

  9. Linux实验楼学习之三

    查看用户 who am i or who mom likes who 命令其它常用参数 参数 说明 -a 打印能打印的全部 -d 打印死掉的进程 -m 同am i,mom likes -q 打印当前登 ...

  10. [LeetCode] 190. Reverse Bits_Easy tag: Bit Manipulation

    Reverse bits of a given 32 bits unsigned integer. Example: Input: 43261596 Output: 964176192 Explana ...