CC2530实现协议栈网络通信实验(组播)
- 格式:pdf
- 大小:460.34 KB
- 文档页数:4
【⽆线通信篇Zstack协议栈】CC2530ZigbeeZstack协议栈组⽹项⽬及详细讲解篇物联⽹⽆线通信技术,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℃了都)实现功能汇总:l 总共有三个端点,⼀个协调器和两个终端节点l 终端节点1连接DHT11温湿度传感器,定时上传给协调器l 终端节点2连接LED,可以通过协调器按键控制,定时上报LED开关状态l 协调器连接12864 OLED 屏幕,实时显⽰温湿度和LED状态l 协调器可以通过按键控制终端2的LED开关,控制后将会显⽰控制结果(⼀) 环境汇总芯⽚:CC2530F256Zstack协议栈:ZStack-CC2530-2.5.1a编程环境:IAR(⼆) 引脚分配协调器:128*64 OLED 0.96⼨屏幕供电:3.3V通信协议:IIC引脚:SDA P0_6SCL P0_7按键:IO:P0_1下降沿触发中断终端1:DHT11:通信⽅式:单总线协议供电:3.3VIO:P0_6终端2:LEDIO:P1_0说明:⾼电平点亮,低电平熄灭⼆、基础认识(⼀) CC2530单⽚机CC2530最⼤的特点就是⼀个拥有⽆线收发器(RF)的单⽚机,既能实现单⽚机功能,也能实现⽆线传输。
无线通信技术综合训练实验指导书 ICC2530 基础第二章 CC2530 开发平台2.1 硬件平台1. CC2530 模块 CC2530 模块基于 TI CC2530 主芯片,可以实现串口(UART)转 Zigbee 无线数据透明传输,模块 可以分别设置为 Router 和 Coordiantor。
上电自动组网, 网络内模块如掉电, 网络具备自我修复功能。
模块重要参数: 输入电压:DC3.3V; 串口速率:38400bps(默认),可设置 9600bps、19200bps、38400bps、57600bps、115200bps; 无线频率:2.4GHz; 无线协议:Zigbee2007; 传输距离:可视距离 400 米; 接收/发射电流:发射时,34mA(最大);接收时,25mA(最大); 主芯片:TI CC2530F256,256K Flash。
CC2530 模块如图 2-1 所示。
(a)实物图 图 2-1 CC2530 模块图(b)引脚图CC2530 模块引脚功能如表 2-1 所示。
表 2-1 CC2530 模块引脚功能表 J1 1 3 5 7 9 11 Debug_D P1.7 P1.5 P1.3 LED_2 NC 2 4 6 8 10 12 Debug_C P2.0 P1.6 P1.4 P1.2 NC 1 3 5 7 9 11 Reset_N SW1 TX RTS P0.7 GND J2 2 4 6 8 10 12 P0.0 RX CTS P0.6 LED_1 3.3V In 第 15 页第二章 CC2530 开发平台2. 主从节点开发板 (1)主节点结构 主节点作为网络中的协调器,具有建立和管理网络的功能。
在本套实验设备当中配置的主节点 结构图如图 2-2 所示。
LCD 显示屏JP3图 2-2 主节点功能模块图ZigBee 模块:CC2530F256 系列的 CC2530 模块; JP1:DEBUG 程序下载接口; JP3:电源接口 5V 电源; JP5:串口输出; 复位键:对主节点进行复位; S1\S2:按键 1、按键 2; S3:电源开关; LCD 显示屏:显示从节点发来的数据; U4:光照度传感器; U5:温湿度传感器; LED1/LED2:LED 显示,作为信号灯显示物联网部分信息。
基于CC2530的Zigbee无线传感网络的设计与实现二、硬件设计1. CC2530芯片CC2530是德州仪器(TI)公司推出的一款具有Zigbee通信功能的片上系统(SoC)芯片,集成了802.15.4无线通信功能以及8051微控制器。
CC2530具有低功耗、快速响应、可靠性高等特点,适合用于构建Zigbee传感网络。
2. 传感器节点传感器节点是Zigbee网络中的重要组成部分,它可以通过各种传感器采集环境信息,并通过无线网络发送到协调器节点。
传感器节点通常包括温度传感器、湿度传感器、光敏传感器等,以满足不同的监测需求。
3. 协调器节点协调器节点是Zigbee网络中的核心节点,负责网络管理、数据协调、安全认证等功能。
在本设计中,我们选择CC2530作为协调器节点的芯片,通过其内置的Zigbee功能实现网络连接和数据传输。
4. 网络拓扑在设计Zigbee无线传感网络时,需要考虑网络拓扑结构,一般可以选择星型、网状或者混合型拓扑结构。
根据实际应用需求,可以灵活选择合适的网络拓扑结构。
三、软件开发1. Zigbee协议栈在基于CC2530的Zigbee无线传感网络中,需要使用Zigbee协议栈来实现Zigbee协议的各层功能,包括PHY层、MAC层、网络层和应用层等。
TI 公司提供了针对CC2530芯片的Z-Stack协议栈,可以帮助开发者快速实现Zigbee通信功能。
2. 网络配置在软件开发过程中,需要对Zigbee网络进行配置,包括节点连接、网络路由、数据传输等方面。
通过Z-Stack协议栈提供的API接口,可以方便地进行网络配置和管理。
3. 数据处理在传感节点和协调器节点之间,需要进行数据的采集、传输和处理。
通过Z-Stack提供的数据传输接口和协议栈功能,可以实现传感数据的采集和传输,以及协调器节点的数据处理和分发。
3. 安全认证在Zigbee网络中,安全认证是至关重要的一环。
通过Z-Stack协议栈提供的安全认证接口,可以实现节点之间的安全通信,保障网络数据的安全性。
ZIGBEECC2530初步测试报告ZIGBEE CC2530 初步测试报告一、当前常用无线通信方式及协议二、ZIGBEE 网络组成ZIGBEE 网络由协调器(Coordlnator)(网络中只能有唯一一个协调器),若干路由器(Router),若干终端设备(End Device)组成。
协调器、路由器可以有多个子节点(路由器和终端设备),路由器也可以有多个父节点(终端设备和路由器),而终端设备只能一个父节点(协调器或路由器)。
协调器首先选择一个信道和网络标识(PAN ID),然后开始这个网络.因为协调器是整个网络的开始,他具有网络的最高权限,是整个网络的维护者,还可以保持间接寻址用的表格绑定,同时还可以设计安全中心和执行其他动作,保持网络其他设备的通信。
路由器是一种支持关联的设备,能够实现其他节点的消息转发功能。
Zigbee的树形网络可以有多个zigbee路由器设备,zigbee的星型网络不支持zigbee的路由器设备。
终端设备是具体执行的数据采集传输的设备,他不能转发其他节点的消息。
ZIGBEE 网络拓扑结构主要分为星型结构、树型结构、网状结构。
如下图所示:星型结构树型结构网状结构网状网络拓扑结构的网络具有强大的功能,网络可以通过“多级跳”的方式来通信;该拓扑结构还可以组成极为复杂的网络;网络还具备自组织、自愈功能;星型和族树型网络适合点多多点、距离相对较近的应用。
网络拓扑结构需要在组网是确定。
三、ZIGBEE 功耗ZIGBEE模块CC2530 不含PA功能。
四、功耗计算假设采用两节AA电池为终端设备供电,电池有效容量为2000mAh。
通信过程中不丢失数据。
设备一天睡眠功耗:SLEEP_P=0.001mA*1000ms*60*60*24=86400mAms例1:设备每天动作10次,每一秒联网一次,设备一天联网次数:60*60*24/1-10=86390 次设备一天耗电:TOTAL_P=SLEEP_P + SWITCH_P * 86390 + TX_P*10 + RX_P*10= 86400 + 100.5775*86390 + 120.4175*10 + 245.669*10=8778951mAms=2.439mAh电池可用:2000/2.439=820 天=2.24年例2:设备每10秒动作联网一次,设备一天动作联网次数:60*60*24/10=8640 次设备一天耗电:TOTAL_P=SLEEP_P + TX_P*10 + RX_P*10= 86400 + 120.4175*8640 + 245.669*8640=3249387mAms=0.903mAh电池可用:2000/0.903=2214.8 天=6.06年。
cc2530的接口实验的实验原理下载温馨提示:该文档是我店铺精心编制而成,希望大家下载以后,能够帮助大家解决实际的问题。
本文下载后可定制随意修改,请根据实际需要进行相应的调整和使用,谢谢!并且,本店铺为大家提供各种各样类型的实用资料,如教育随笔、日记赏析、句子摘抄、古诗大全、经典美文、话题作文、工作总结、词语解析、文案摘录、其他资料等等,如想了解不同资料格式和写法,敬请关注!Downloaded tips: This document is carefully compiled by the editor. I hope that after you download them, they can help you solve practical problems. The documents can be customized and modified after downloading, please adjust and use it according to actual needs, thank you!In addition, our shop provides you with various types of practical materials, such as educational essays, diary appreciation, sentence excerpts, ancient poems, classic articles, topic composition, work summary, word parsing, copy excerpts, other materials and so on, want to know different data formats and writing methods, please pay attention!CC2530是一款常用于物联网设备的芯片,其接口实验是物联网领域中的重要实践之一。
文件名: 协议栈网络管理ZigBee 协议栈网络管理这章内容主要是对新加入的设备节点的设备管。
我们都知道每个CC2530 芯片出厂时候都有一个全球唯一的32 位MAC 地址。
当时当设备连入网络中的时候,每个设备都能获得由协调器分配的16 位短地址,协调器默认地址(0x0000)。
很多时候网络就是通过短地址进行管理。
注意:1.先安装好PL2302 USB转串口驱动,转备好USB线,连接计算机与接收模块。
2.需要两个或者两个以上模块,分别用于协调器、路由器、终端。
●实验目的:学习如何使用TI提供的协议栈,进行网络管理。
●实验步骤:1.打开工程文件:协议栈的无线数据传输\Projects\zstack\Samples\SampleApp\CC2530DB\ SampleApp,分别选择EndDeviceEB-Pro, RouterEB-Pro,CoordintorEB-Pro,分别下载到三个模块中,如下图所示。
2.连接计算机与协调器模块,可以看到协调器接收到数据。
实验结果:将修改后的程序分别以协调器、路由器、终端的方式下载到3个或以上设备,协调器连接到PC机。
上电后每个设备往协调器发送自身编号,协调器通过串口显示出来。
具体实验:要实现协调器收集数据的功能,可以使用点播方式传输数据,点播地址为协调器地址(0x0000),避免了路由器和终端之间的互传,减少网络数据拥塞。
在samplApp.c中修改发送数据函数为:void SampleApp_SendPointToPointMessage( void ){uint8 device;//设备类型变量if ( SampleApp_NwkState == DEV_ROUTER )device=0x01; //编号1表示路由器else if (SampleApp_NwkState == DEV_END_DEVICE)device=0x02;//编号2表示终端elsedevice=0x03;//编号3表示出错if ( AF_DataRequest( &Point_To_Point_DstAddr, //发送设备类型编号&SampleApp_epDesc,SAMPLEAPP_POINT_TO_POINT_CLUSTERID,1,&device,&SampleApp_TransID,AF_DISCV_ROUTE,AF_DEFAULT_RADIUS ) == afStatus_SUCCESS ){}}修改完成后系统设备自动检测自己烧写的类型,然后发送对应的编号。
cc2530工作原理(一)CC2530工作原理简介CC2530是一款常见的无线通信芯片,广泛应用于物联网领域。
它采用TI公司的Zigbee技术,具有低功耗、长距离传输、自组网等特点。
本文将从浅入深解释CC2530的工作原理。
Zigbee无线通信技术Zigbee是一种低功耗、短距离、低速率的无线通信技术。
它基于IEEE 标准,并在其上添加了网络协议和应用层协议。
Zigbee网络采用网状拓扑结构,由一个协调器和多个终端设备组成。
CC2530芯片作为终端设备连接到Zigbee网络中。
CC2530芯片结构CC2530芯片包括处理器、收发器、外设等组件。
•处理器:CC2530采用8051内核的8位微控制器,用于控制全芯片的各个模块。
•收发器:CC2530集成了的射频收发电路,可以与其他设备进行无线通信。
•外设:CC2530还包含了GPIO、UART、I2C等外设接口,用于连接外部设备。
CC2530的工作原理步骤1.启动和初始化:CC2530芯片上电后,处理器将通过引脚配置、时钟设置等完成初始化。
2.Zigbee网络加入:CC2530通过射频收发电路与协调器进行通信,发送加入网络的请求。
3.网络配置:协调器接收到CC2530的请求后,根据网络配置规则为CC2530分配网络地址,并将其加入到Zigbee网络中。
4.数据收发:CC2530可以通过射频收发电路与其他设备进行数据收发。
它采用插槽访问方式,即在协调器规定的时间插槽内完成数据传输。
5.自组网:CC2530可以自动组网,根据网络拓扑结构自动选择路由路径,实现数据的可靠传输。
6.低功耗管理:CC2530具有低功耗特性,可以根据需要切换不同的功耗模式,延长电池寿命。
总结CC2530是一款基于Zigbee无线通信技术的芯片,通过与协调器的通信,实现与其他设备之间的无线数据收发。
它采用自组网和低功耗管理技术,为物联网应用提供了一种可靠的通信解决方案。
以上就是CC2530的工作原理的简要介绍,希望对读者有所帮助。
文件名:协议栈的串口实验注意:1.先安装好PL2302 USB转串口驱动,转备好USB线,连接计算机与接收模块。
2.设置波特率为115200,不要勾选HEX显示,选择正确的串口号3.只需要一个模块。
●实验目的:学习如何使用TI提供的协议栈,进行串口实验●实验步骤:1.打开工程文件:\Projects\zstack\Samples\SampleApp\CC2530DB\SampleApp,选择,选择CoordinatorEB-Pro, 更改option的设置,加入预编译条件,ZIGBEEPROZTOOL_P1xMT_TASKxMT_SYS_FUNCxMT_ZDO_FUNC如下图所示:2.全速运行,可以看到串口助手收到信息。
3.如果想显示Z-stack MT层定义的数据,可以更改预编译条件为:ZIGBEEPROZTOOL_P1MT_TASKMT_SYS_FUNCMT_ZDO_FUNC如下图所示:具体实验:1.串口初始化函数void MT_UartInit (){halUARTCfg_t uartConfig;/* Initialize APP ID */App_TaskID = 0;/* UART Configuration */uartConfig.configured = TRUE;uartConfig.baudRate = MT_UART_DEFAULT_BAUDRATE; uartConfig.flowControl = MT_UART_DEFAULT_OVERFLOW; uartConfig.flowControlThreshold = MT_UART_DEFAULT_THRESHOLD; uartConfig.rx.maxBufSize = MT_UART_DEFAULT_MAX_RX_BUFF; uartConfig.tx.maxBufSize = MT_UART_DEFAULT_MAX_TX_BUFF; uartConfig.idleTimeout = MT_UART_DEFAULT_IDLE_TIMEOUT; uartConfig.intEnable = TRUE;#if defined (ZTOOL_P1) || defined (ZTOOL_P2)uartConfig.callBackFunc = MT_UartProcessZToolData;#elif defined (ZAPP_P1) || defined (ZAPP_P2)uartConfig.callBackFunc = MT_UartProcessZAppData;#elseuartConfig.callBackFunc = NULL;#endif/* Start UART */#if defined (MT_UART_DEFAULT_PORT)HalUARTOpen (MT_UART_DEFAULT_PORT, &uartConfig);#else/* Silence IAR compiler warning */(void)uartConfig;#endif/* Initialize for ZApp */#if defined (ZAPP_P1) || defined (ZAPP_P2)/* Default max bytes that ZAPP can take */MT_UartMaxZAppBufLen = 1;MT_UartZAppRxStatus = MT_UART_ZAPP_RX_READY;#endif}其中uartConfig.baudRate = MT_UART_DEFAULT_BAUDRATE;是配置波特率uartConfig.flowControl = MT_UART_DEFAULT_OVERFLOW; 语句是配置流控的,预编译是根据预先定义的ZTOOL或者ZAPP选择不同的数据处理函数。