• 【无线通信篇 | 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

  • 相关阅读:
    openlayers方法总结
    AJAX 数据库实例
    AJAX 请求服务器
    得到XMLHttpRequest对象
    AJAX 简介
    AJAX 服务器端的脚本
    HTTP GET 最多发送100个字符
    AJAX XMLHttpRequest 对象
    Dictionary、ArrayList、Hashtable和数组 Array 的区别
    AJAX 请求实例
  • 原文地址:https://www.cnblogs.com/dongxiaodong/p/14916574.html
Copyright © 2020-2023  润新知