zoukankan      html  css  js  c++  java
  • 【无线通信篇 | Zstack协议栈】CC2530 Zigbee Zstack协议栈组网项目及详细讲解篇

    演示视频:https://www.bilibili.com/video/BV1Ew411o7Fp

    物联网无线通信技术,ZigBee无线传感网络

    CC2530最大的特点就是一个拥有无线收发器(RF)的单片机,既能实现单片机功能,也能实现无线传输

    Zstack协议栈是ZigBee协议栈里的翘楚,是ZigBee组网的首选协议栈

    项目实现功能:

    l  总共有三个端点,一个协调器和两个终端节点

    l  终端节点1连接DHT11温湿度传感器,定时上传给协调器

    l  终端节点2连接LED,可以通过协调器按键控制,定时上报LED开关状态

    l  协调器连接12864 OLED 屏幕,实时显示温湿度和LED状态

    l  协调器可以通过按键控制终端2的LED开关,控制后将会显示控制结果

    扩展功能(当前未实现,可进一步开发实现):

    l  连接协调器串口,将终端节点采集的数据通过串口发送,PC写上位机实现数据展示

    l  连接WIFI或者4G模块,WIFI模块如ESP8266,实现数据局域网无线传输或者上传到OneNET、机智云、阿里云、自己开发云服务器等,实现WEB或手机APP显示和控制。

    一、项目测试

     

    (可想而知,广州的天气有多热,39℃了都)

     

    演示视频:https://www.bilibili.com/video/BV1Ew411o7Fp

    实现功能汇总:

    l  总共有三个端点,一个协调器和两个终端节点

    l  终端节点1连接DHT11温湿度传感器,定时上传给协调器

    l  终端节点2连接LED,可以通过协调器按键控制,定时上报LED开关状态

    l  协调器连接12864 OLED 屏幕,实时显示温湿度和LED状态

    l  协调器可以通过按键控制终端2的LED开关,控制后将会显示控制结果

    (一)  环境汇总

    芯片:CC2530F256

    Zstack协议栈:ZStack-CC2530-2.5.1a

    编程环境:IAR

    (二)   引脚分配

    协调器:

    128*64 OLED 0.96寸屏幕

    供电:3.3V

    通信协议:IIC

    引脚:

    SDA P0_6

    SCL P0_7

    按键:

    IO:P0_1

    下降沿触发中断

    终端1:

    DHT11

    通信方式:单总线协议

    供电:3.3V

    IO:P0_6

    终端2:

    LED

    IO:P1_0

    说明:高电平点亮,低电平熄灭

    二、 基础认识

    (一)  CC2530单片机

    CC2530最大的特点就是一个拥有无线收发器(RF)的单片机,既能实现单片机功能,也能实现无线传输。

    CC2530 结合了领先的RF 收发器的优良性能,业界标准的增强型8051 CPU,系统内可编程闪存,8-KB RAM 和许多其它强大的功能。CC2530 有四种不同的闪存版本:CC2530F32/64/128/256,分别具有32/64/128/256KB 的闪存。CC2530 具有不同的运行模式,使得它尤其适应超低功耗要求的系统。运行模式之间的转换时间短进一步确保了低能源消耗。

    CC2530F256 结合了德州仪器的业界领先的黄金单元ZigBee 协议栈(Z-Stack),提供了一个强大和完整的ZigBee 解决方案。

    CC2530开发板

    方便二次开发,可编程烧录

    (1)开发板

     

    (2)网蜂开发板

    Zigbee串口透传模块

    这是一个特殊功能的模块,其烧写的固件是配置串口做数据透传用的,主要是方便方便简单使用,不可再编程

    (二)  ZigBee Zstack协议栈

    Zstack协议栈是ZigBee协议栈里的翘楚,是ZigBee组网的首选协议栈

    ZigBee其特点是近距离、低复杂度、自组织、低功耗、低数据速率、低成本。ZigBee的技术特性决定它将是无线传感器网络的最好选择,广泛用于物联网,自动控制和监视等诸多领域。

    德州仪器公司(TI)编写的ZigBee协议栈源码,起名为zstack。也就是说zstack协议栈是众多ZigBee协议栈中的一种,是由TI公司编写并发布的。Zstack协议栈为开发者提供了ZigBee协议栈的实现的API接口,极其方便了使用。

    网络拓扑结构

     ( 1 )星形拓扑结构

    一个协调器多个终端节点,终端节点直接与协调器相连

     

    ( 2 ) 树形拓扑结构

    一个协调器多个路由器,终端节点与路由器相连,都是一对一连接的

     

    ( 3 ) 网状拓扑结构

    一个协调器多个路由器,终端节点与路由器相连,路由器可以互相连接

     

    协议栈目录分析

     

    l  APP:应用层目录,这是用户创建各种不同工程的区域,在这个目录中包含了应用层的内容和这个项目的主要内容,在协议栈里面一般是以操作系统的任务实现的。

    l  HAL:硬件层目录,包含有与硬件相关的配置和驱动及操作函数。

    l  MAC:MAC层目录,包含了MAC层的参数配置文件及其MAC的LIB库的函数接口文件。

    l  MT:监控调试层,主要用于调试目的的,即实现通过串口调试各层,与各层进行直接交互。

    l  NWK:网络层目录,涵网络层配置参数文件及网络层库的函数接口文件,APS层库的函数接口。

    l  OSAL:协议栈的操作系统。

    l  Profile:AF层目录,包含AF层处理函数文件。

    l  Security:安全层目录,安全层处理函数接口文件,比如加密函数等。

    l  Services:地址处理函数目录,包括着地址模式的定义及地址处理函数。

    l  Tools:工程配置目录,包括空间划分和Zstack相关的配置信息。

    l  ZDO:ZDO目录。

    三、 编程

    IAR 旧版和新版

     

    (本工程开发使用的是旧版,新版也可用)

    项目地址

     

    打开项目

     

    修改协调器或终端

    CoordinatorEB 为协调器

    EndDeviceEB 为终端

     

    终端节点选择

     

    编译及下载

    如果数据交互冲突,可以更改这里,以创建不同的ZigBee网络

    四、扩展功能(可进一步开发实现)

    l  连接协调器串口,将终端节点采集的数据通过串口发送,PC写上位机实现数据展示

    l  连接WIFI或者4G模块,WIFI模块如ESP8266,实现数据局域网无线传输或者上传到OneNET、机智云、阿里云、自己开发云服务器,实现WEB或手机控制

    五、 个人导航

    【B站 | 东小东bili】 https://space.bilibili.com/162091292

    【博客园 | 东小东 】https://www.cnblogs.com/dongxiaodong/

    【CSDN | 东小东博客】https://blog.csdn.net/dongxiaodongvip

    【微信 | 东小东】dongxiaodongwx

  • 相关阅读:
    Asp.Net Web API 2第八课——Web API 2中的属性路由
    Asp.Net Web API 2第七课——Web API异常处理
    Asp.Net Web API 2第六课——Web API路由和动作选择
    Asp.Net Web API 2第五课——Web API路由
    开始学习python
    BMI 小程序 购物车
    深浅copy 文件操作
    字典 dict 集合set
    基本数据类型 (str,int,bool,tuple,)
    python 运算符
  • 原文地址:https://www.cnblogs.com/dongxiaodong/p/14916574.html
Copyright © 2011-2022 走看看