CC2530实现协议栈网络通信实验(组播)

合集下载

【无线通信篇Zstack协议栈】CC2530ZigbeeZstack协议栈组网项目及详细讲解篇

【无线通信篇Zstack协议栈】CC2530ZigbeeZstack协议栈组网项目及详细讲解篇

【⽆线通信篇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)的单⽚机,既能实现单⽚机功能,也能实现⽆线传输。

无线通信技术综合训练实验指导书I(CC2530基础)2

无线通信技术综合训练实验指导书I(CC2530基础)2

无线通信技术综合训练实验指导书 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无线传感网络的设计与实现

基于CC2530的Zigbee无线传感网络的设计与实现

基于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协议栈提供的安全认证接口,可以实现节点之间的安全通信,保障网络数据的安全性。

CC2530实现无线传感器网络(自组网与数据传输)

CC2530实现无线传感器网络(自组网与数据传输)
|| (SampleApp_NwkState == DEV_ROUTER) || (SampleApp_NwkState == DEV_END_DEVICE) ) {
易思开发工作室 ES Technology
// Start sending the periodic message in a regular interval. osal_start_timerEx( SampleApp_TaskID,
易思开发工作室 ES Technology
文件名:无线传感器网络(自组网与数据传输)
注意: 1. 先安装好 PL2302 USB 转串口驱动,转备好 USB 线,连接计算机与协调器模块
模块。 2. 需要两个或两个以上模块。
易思开发工作室 ES Technology
// Setup to send message again in normal period (+ a little jitter) osal_start_timerEx( SampleApp_TaskID, SAMPLEAPP_SEND_PERIODIC_MSG_EVT,
易思开发工作室 ES Technology
switch ( MSGpkt->hdr.event ) {
case CMD_SERIAL_MSG: SampleApp_SerialCMD((mtOSALSerialData_t *)MSGpkt); break;
// Received when a key is pressed case KEY_CHANGE:
SampleApp_HandleKeys( ((keyChange_t *)MSGpkt)->state, ((keyChange_t *)MSGpkt)->keys );

ZIGBEECC2530初步测试报告

ZIGBEECC2530初步测试报告

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的接口实验的实验原理

cc2530的接口实验的实验原理

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是一款常用于物联网设备的芯片,其接口实验是物联网领域中的重要实践之一。

CC2530实现协议栈网络管理

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实现协议栈网络通信实验(单播)
&SampleApp_epDesc, SAMPLEAPP_POINT_TO_POINT_CLUSTERID, 10, data, &SampleApp_TransID, AF_DISCV_ROUTE, AF_DEFAULT_RADIUS ) == afStatus_SUCCESS ) { } }
其中 Point_To_Point_DstAddr 我们之前已经定义,我们在 SampleApp.h 中加入 SAMPLEAPP_POINT_TO_POINT_CLUSTERID 的定义如下: #define SAMPLEAPP_POINT_TO_POINT_CLUSTERID 4 //传输编号
afAபைடு நூலகம்dr16Bit
= Addr16Bit,
afAddr64Bit
= Addr64Bit,
afAddrGroup
= AddrGroup,
afAddrBroadcast = AddrBroadcast
} afAddrMode_t;
当 addrMode= Addr16Bit 时,对应点播方式; 当 addrMode= AddrGroup 时, 对应组播方式; 当 addrMode= AddrBroadcast 时,对应广播方式;
} }
其中接收 ID 我们在原来基础上改成我们刚定义的 SAMPLEAPP_POINT_TO_POINT_CLUSTERID.
将修改后的程序分别以协调器、路由器、终端的方式下载到 3 个节点设备中, 连接串口。可以看到只有协调器在一个周期内收到信息。也就是说路由器和终端 均与地址为 0x00(协调器)的设备通信,不语其他设备通信。实现点对点传输。
case SAMPLEAPP_POINT_TO_POINT_CLUSTERID: HalUARTWrite(0,"Reveiver data: \n",14); //reveive data

cc2530工作原理(一)

cc2530工作原理(一)

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的工作原理的简要介绍,希望对读者有所帮助。

CC2530实现协议栈的串口实验

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选择不同的数据处理函数。

基于CC2530及ZigBee协议栈设计无线网络传感器节点

基于CC2530及ZigBee协议栈设计无线网络传感器节点

基于CC2530及ZigBee协议栈设计无线网络传感器节点基于CC2530及ZigBee协议栈设计无线网络传感器节点近年来,随着物联网技术的快速发展,无线传感器网络(WSN)应用正在不断增加。

无线传感器节点作为WSN的重要组成部分,可以实时监测环境中的各种参数,并将数据传输到数据中心进行处理和分析。

本文将介绍基于CC2530芯片和ZigBee协议栈设计的无线网络传感器节点。

一、CC2530芯片介绍CC2530芯片是德州仪器(Texas Instruments)公司推出的一款低功耗、高性能的无线SoC芯片。

它集成了8051微控制器核心和IEEE 802.15.4无线收发器,提供丰富的外设接口,并支持多种通信协议,如ZigBee、RF4CE、ZigBee RF4CE、SP100和6LoWPAN。

其低功耗特性使其成为设计低功耗无线传感器节点的理想选择。

二、ZigBee协议栈简介ZigBee是一种低功耗、短距离无线通信技术,主要用于自动化控制、智能家居和工业应用。

ZigBee协议栈分为应用层、网络层、MAC层和物理层。

应用层负责定义各种应用场景下的数据交换格式和协议,网络层负责网络拓扑管理和路由选择,MAC层负责对数据进行处理和封装,物理层负责无线信号的发送和接收。

三、无线网络传感器节点设计基于CC2530芯片和ZigBee协议栈,设计了一种低功耗的无线网络传感器节点。

该节点由CC2530芯片、传感器模块、电源管理模块和外设接口组成。

1. CC2530芯片:作为无线SoC芯片,CC2530芯片集成了8051微控制器核心和无线收发器。

8051微控制器核心负责控制节点的各种操作,如数据采集、数据处理和通信控制。

无线收发器负责与其他节点进行通信,通过ZigBee协议栈实现数据的传输和接收。

2. 传感器模块:传感器模块负责实时监测环境中的各种参数,如温度、湿度、光照等。

通过与CC2530芯片的接口进行数据传输,将采集到的数据传送给CC2530芯片进行处理和分析。

毕业设计(论文)-基于CC2530的无线组网技术的研究与实现

毕业设计(论文)-基于CC2530的无线组网技术的研究与实现

基于CC2530的无线组网技术的研究与实现摘要:无线传感器网络是集传感器、无线通信和网络三大技术于一体的信息获取与处理技术,主要用于实现不同环境下各种缓慢参数的检测。

最新的发展方向在于减小体积,简化布局以及在低能条件下尽可能延长生命周期。

而Zigbee技术拥有网络容量大,架构简单,低功耗,低速率等特点,十分适合用来组建无线传感器网络。

本文以CC2530芯片为核心模块,基于Z-STACK协议栈设计了一个可以完成自动组网的系统,通过编写协调器程序实现无线传感器网络的组建,同时路由器能自动完成其父节点功能。

同时,对开发软件核心Zigbee协议栈的组成和实现方法进行了介绍。

给出了协调器节点的硬件设计原理图和软件流程图以及相应的PCB图。

关键词:无线传感器网络;CC2530;Zigbee;无线组网Research & Implementation of Wireless Network T echnologyBased On CC2530Abstract: Wireless Sensor Networks (WSN) setting sensors with wireless communications and network is a kind of information acquisition and processing technology , mainly used to implement the detection of slow parameters under different circumstances. The newest development direction is to reduce the volume, to simplify the layout and to extend the life cycle in the low-energy conditions much as possible. However, Zigbee technology, with large network capacity, simple structure, low rate and power consumption , is especially suitable for the formation of the WSN.The paper presents a design of a system which can complete automatic network establishment with using CC2530 as the core module and base on Z-STACK Protocol Stack, through programs the coordinator to achieve the construction of the WSN, meanwhile, the router can automatically accomplish the parent node function. Simultaneously, the paper introduces the composition and method of the developing software core--Zigbee Protocol Stack. It also shows the coordinator node hardware design schematics and software flow chart and the corresponding PCB map.Key W ord:Wireless Sensor Networks; CC2530; Zigbee; wireless network establishment目录基于CC2530的无线组网技术的研究与实现 (1)1 绪论 (3)1.1 选题依据和意义 (3)1.2 无线传感器网络技术研究背景及意义 (4)1.3 无线传感器网络技术简介 (4)1.3.1 国内外发展和应用现状 (5)1.3.2 未来前景展望 (6)2 IEEE 802. 15. 4/Zigbee无线传感器网络通信标准 (7)2.1 IEEE 802.15.4通信标准 (7)2.1.1 物理层(PHY) (7)2.1.2媒体访问控制层(MAC)规范 (8)2.2 Zigbee技术概述 (12)2.2.1 网络层(NWK)规范 (12)2.2.2 应用层(APL)规范 (13)2.2.3 Zigbee协议栈中各层之间的关系 (14)2.2.4 Zigbee的网络配置 (14)2.2.5 Zigbee协议术语 (15)3 CC2530介绍 (17)3.1 CC2530的相关特性 (17)3.2 CC2530结构分析 (18)3.2.1 功能模块介绍 (19)3.2.2 引脚描述 (20)3.2.3 CPU介绍 (22)3.3 CC2530应用 (22)4 相关硬件设计 (22)4.1 主电路设计 (22)4.1.1 外围电路设计 (22)4.1.2 电源电路设计 (23)4.1.3 串口电路设计 (23)4.2 PCB的设计 (24)5 相关软件的设计 (25)5.1 Z-Stack体系架构 (25)5.1.1 Z-stack软件架构 (26)5.2 各个功能节点的设计 (28)5.2.1 协调器节点的设计 (28)5.2.2 路由器节点的设计 (29)5.3 操作流程原理 (29)5.3.1 怎样建立网络 (29)5.3.2 怎样加入网络 (30)5.3.3 怎样离开网络 (31)5.4 操作流程与代码 (32)5.4.1 启动过程 (32)5.4.2 协调器组建网络 (32)5.4.3 路由器加入网络 (32)5.4.4 协调器启动 (32)5.4.5 路由器启动并且自动完成父节点功能 (34)5.4.6 数据发送 (34)5.4.7 数据接收 (35)6 设计总结 (35)6.1 设计成品 (35)6.2 系统设计总结 (36)6.3 未来深入研究方向 (36)致谢 (37)参考文献 (37)1绪论1.1 选题依据和意义现今社会无线取代有线已经是信息通讯领域的一个主流趋势,用便捷快速的方式传递信息是信息工程的一个重要的研究目标。

基于CC2530的ZigBee无线传感器网络的设计与实现

基于CC2530的ZigBee无线传感器网络的设计与实现

基于CC2530的ZigBee无线传感器网络的设计与实现基于CC2530的ZigBee无线传感器网络的设计与实现一、引言近年来,随着无线通信技术的快速发展,无线传感器网络(Wireless Sensor Network,简称WSN)已经成为了研究的热点之一。

WSN是由大量的分布式感知节点组成的网络,这些感知节点可以自动地收集、处理并传输周围环境中的信息。

而ZigBee无线传感器网络提供了一种低功耗、低成本、低数据速率的解决方案,被广泛用于环境监测、物联网和智能家居等领域。

本文将基于CC2530芯片,设计并实现一个ZigBee无线传感器网络,探讨其在物联网中的应用。

二、ZigBee无线传感器网络的架构ZigBee无线传感器网络的架构包括感知层、网络层和应用层。

(一)感知层感知层是ZigBee无线传感器网络中的底层,由一系列具备感知、采样和处理能力的传感器节点组成。

这些传感器节点能够感知周围环境中的各种信息,并将数据采样后发送到网络层。

(二)网络层网络层负责传感器节点之间的通信和数据传输。

每个传感器节点都有一个唯一的地址,通过网络层可以实现节点之间的无线通信。

网络层采用了自组织、自适应和多跳中继的方式,能够灵活地组网并保持网络的稳定性和可靠性。

(三)应用层应用层是ZigBee无线传感器网络中的最顶层,负责数据的处理和应用。

通过应用层,可以实现对传感器节点的控制和监测。

例如,在环境监测中,可以通过应用层实时地获取温度、湿度等数据,并进行相应的控制和分析。

三、CC2530芯片的选用与介绍CC2530芯片是由德州仪器(Texas Instruments)推出的一款专用于无线传感器网络的低功耗SoC芯片。

该芯片集成了处理器、射频收发器和外围接口等功能,具备良好的性能和低功耗特性。

CC2530芯片采用了IEEE 802.15.4标准的ZigBee协议栈,支持多种网络拓扑结构以及多种通信方式,适用于不同场景下的应用需求。

CC2530在协议栈上驱动DS18B20

CC2530在协议栈上驱动DS18B20

CC2530在协议栈上驱动DS18B20的过程一.实验目的测试我们的底板上的DS18B20温度传感器。

每按下一次按键S1(对应P1_7),DS18B20就读一次温度,通过串口写函数,在串口调试助手上显示温度消息。

根据以上想法:在按键处理函数SampleApp_HandleKeys()中添加if ( keys & HAL_KEY_SW_6 ){getTem();temp[0] = sensor_data_value[1];temp[1] = sensor_data_value[0];HalUARTWrite(HAL_UART_PORT_1,temp, 2);}其中的getTem()是读取DS18B20温度数据的函数,如下:void getTem(void){DS18B20_Init(); //复位18B20DS18B20_Write(SKIP_ROM); //发出跳过ROM匹配操作DS18B20_Write(CONVERT_T); //启动温度转换DS18B20_Init(); //DS18B20复位DS18B20_Write(0xcc); //跳过ROM匹配DS18B20_Write(0xbe); //写便笺sensor_data_value[0] = DS18B20_Read(); //读数据sensor_data_value[1] = DS18B20_Read();}在SampleApp.c中定义了一个全局变量uint8 sensor_data_value[2];//来存储传感器数据特别要注意的是:在读取DS18B20的16bit温度数据之前,要对传感器写CONVERT_T==0x44,即转换温度命令:DS18B20_Init();DS18B20_Write(SKIP_ROM); DS18B20_Write(CONVERT_T);然后才能读取数据即(写便笺命令):DS18B20_Init();DS18B20_Write(0xcc); DS18B20_Write(0xbe);二.控制器对DS18B20操作流程若要读出当前的温度数据我们需要执行两次工作周期,第一个周期为复位、跳过ROM指令、执行温度转换存储器操作指令、等待500uS温度转换时间。

cc2530串口UART0通信实验

cc2530串口UART0通信实验

/*********************头文件*************************************************/ #include <ioCC2530.h>#include <string.h>/*********************宏定义*************************************************/ #define uint unsigned int#define uchar unsigned char//----------------LED控制端口------------------------------------------------//#define GLED P1_0// 绿色LED定义#define RLED P1_1// 红色LED定义//----------------按键输入端口-----------------------------------------------//#define KEY1 P0_0/*********************全局变量**********************************************/ unsigned char Uart0_Rx;unsigned char Text_Data[]="海舟物联网教育!\r\n";/*********************函数声明***********************************************/ void Delay(uint);void Init_LED(void);void Init_Uart0(void);void Init_Sysclk(void);void Uart0_TX_Data(unsigned char *Data,int len);/****************************************************************************** *函数名称: void Delay(uint n)*函数功能: 软件延时函数*入口参数:*出口参数:*备注:******************************************************************************/ void Delay(uint n){uint i;for(i=0;i<n;i++);for(i=0;i<n;i++);for(i=0;i<n;i++);for(i=0;i<n;i++);for(i=0;i<n;i++);}/*******************************************************************************函数名称: void Init_Uart0(void)*函数功能: Uart0初始化设置*入口参数:*出口参数:*备注:******************************************************************************/ void Init_Uart0(void){PERCFG = 0x00; // 位置1 P0口P0SEL = 0x3c; // P0_2,P0_3用作串口P2DIR &= ~0XC0; // P0优先作为UART0U0CSR |= 0x80; // UART方式U0GCR |= 8;U0BAUD |= 59; // 波特率设为9600bpsUTX0IF = 0; // UART0 TX中断标志初始置位0U0CSR |= 0X40; // 允许接收IEN0 |= 0x84; // 开总中断,接收中断}/****************************************************************************** *函数名称: void Uart0_TX_Data(unsigned char *Data,int len)*函数功能: 串口0发送一组数据*入口参数:*出口参数:*备注:******************************************************************************/ void Uart0_TX_Data(unsigned char *Data,int len){int j;for(j=0;j<len;j++){U0DBUF = *Data++;while(UTX0IF == 0);UTX0IF = 0;}}/****************************************************************************** *函数名称: void Init_Sysclk()*函数功能: 设置系统时钟*入口参数:*出口参数:*备注:******************************************************************************/void Init_Sysclk(void){CLKCONCMD &= ~0x40; // 设置系统时钟源为32MHZ晶振while(CLKCONSTA & 0x40); // 等待晶振稳定CLKCONCMD &= ~0x47; // 设置系统主时32MHZ}/****************************************************************************** *函数名称: void Init_LED(void)*函数功能: 初始化LED*入口参数:*出口参数:*备注:******************************************************************************/ void Init_LED(void){P1DIR = 0x03; // P1.0 P1.1设置为输出RLED = 1; // 初始化LED状态GLED = 1;}/****************************************************************************** *函数名称: void main(void)*函数功能: 主函数*入口参数:*出口参数:*备注:******************************************************************************/ void main(void){Init_Sysclk(); // 初始化系统时钟Init_Uart0(); // 串口0设置Init_LED(); // 初始化LEDwhile(1){Uart0_TX_Data(Text_Data,17);Delay(50000);Delay(50000);Delay(50000);}}/****************************************************************************** *函数名称: void UART0_ISR(void)*函数功能: Uart0中断服务子程序*入口参数:*出口参数:*备注:******************************************************************************/ #pragma vector = URX0_VECTOR__interrupt void UART0_ISR(void){URX0IF = 0; //清中断标志Uart0_Rx = U0DBUF;}/*********************结束*************************************************/。

cc2530程序设计实例之CC2530 RF部分使用—实现点对点收发

cc2530程序设计实例之CC2530 RF部分使用—实现点对点收发

cc2530 程序设计实例之CC2530 RF 部分使用—实现
点对点收发
前言
本文将分析一个利用CC2530 实现无线串口,文中将会列举部分代码
并对CC2530 的具体操作进行分析。

本文的具体的内容包括以下几个部分:
CC2530 是符合802.15.4 标准的无线收发芯片,但是本文并没有遵守802.15.4 协议规则,在发送过程中忽略了网络ID、源地址和目标地址等参
数,在接收的过程中禁止了帧过滤。

通过发送和接收过程的处理使得CC2530 无线部分的使用尽可能的简单清晰,通过最少的代码说明问题。

无线芯片的调试具有一定的难度,一般存在发送设备和接收设备。

为了通过最简单的代码说明无线芯片的使用,本文中仅编写一种设备代码同时实现发送和接收功能。

设备的功能也相对简单,CC2530 从串口接收数据并把数据通过RF 部分无损发送,于此同时CC2530 把从RF 部分接收的数据通过
串口无损发送,通过这样的方式实现无线串口。

基于CC2530的ZigBee组网研究与实现-毕业论文

基于CC2530的ZigBee组网研究与实现-毕业论文

基于CC2530的ZigBee组网研究与实现学院:专业:姓名:指导老师:计算机学院计算机科学与技术3班冯子哲学号:职称:160201102960 张华敏副教授中国·珠海二○二零年五月诚信承诺书本人郑重承诺:本人承诺呈交的毕业设计《基于CC2530的ZigBee 组网研究与实现》是在指导教师的指导下,独立开展研究取得的成果,文中引用他人的观点和材料,均在文后按顺序列出其参考文献,设计使用的数据真实可靠。

本人签名:日期:年月日基于CC2530的ZigBee组网研究与实现摘要Zigbee是一种应用范围最广的双向无线通信技术之一,不仅有近距离、低复杂度的特点,还有着低功耗、低成本的优势。

传输速率不高的各种电子设备之间的数据传输选择使用这门技术也是因为他的特点和优势。

之前被称为HomeRFLite、RF-EasyLink或FireFly的无线电技术,现在都统一称为Zigbee技术;Zigbee与别的无线技术不同,就比如WiFi,虽然传输速率没有WiFi高,但功耗相比极低,可以用电池供电;Wifi一般覆盖一定范围,Zigbee则组成无线传感器网络,能够应用于多种领域,比如特别贴切生活的智能家居领域,报警系统;一片区域的环境监测等,不过在最早期的时候大量应用于军事领域,未来前景还有很大发展空间;所选的芯片型号为CC2530-F256,该系列使用的8051CPU内核是一个单周期的8051兼容内核,是CC243X的升级版,性能上更稳定。

关键词:CC2530芯片;ZigBee技术;Zstack协议栈;IEEE802.15.4;Research and implementation of ZigBee networking based on CC2530AbstractZigbee is one of the most widely used two-way wireless communication technologies, which not only has the characteristics of short distance and low complexity, but also has the advantages of low power consumption and low cost.Data transmission between various electronic devices with low transmission rate is also chosen to use this technology because of its characteristics and advantages.Previously known as HomeRFLite, rf-easylink or FireFly, now known as Zigbee technology;Zigbee is different from other wireless technologies, such as WiFi. Although the transmission rate is not as high as WiFi, the power consumption is very low, and it can be powered by batteries.Generally, Wifi covers a certain range, while Zigbee forms a wireless sensor network, which can be applied to a variety of fields, such as smart home and alarm system, which is especially suitable for life.An area of environmental monitoring, but in the early days of a large number of military applications, there is still a lot of room for future development;The selected chip model is cc2530-f256. The 8051CPU kernel used in this series is a single-cycle 8051 compatible kernel, which is an upgraded version of CC243X and more stable in performance.Keywords: CC2530 chips;ZigBee technology;Zstack protocol stack;IEEE802.15.4;目录1、绪论 (1)1.1 课题背景 (1)1.2 ZigBee技术的研究概况及意义 (4)1.2.1 国外ZigBee技术发展概况 (4)1.2.2 国内ZigBee技术发展概况 (4)1.2.3 ZigBee技术的研究意义 (5)2、ZigBee协议及基本结构 (6)2.1 ZigBee联盟的发展及现状 (6)2.2 ZigBee的协议概述 (6)2.3 ZigBee协议栈的基本理解与基本应用 (7)2.3.1 ZigBee协议栈的理解 (7)2.3.2如何使用ZigBee协议栈 (8)2.4 ZigBee无线网络通信信道分析 (8)2.5 ZigBee无线网络体系结构 (9)2.5.1 节点类型 (9)2.5.2 网络拓扑结构 (10)3、实验过程及结果 (11)3.1本设计的研究目标、内容及效果 (11)3.2本设计所用的基本工具(硬件、软件) (11)3.3 实验步骤 (12)3.3.1 器材准备 (12)3.3.2 开发环境准备 (13)3.3.3 操作步骤及实验现象 (14)3.4 关键代码作用及展示 (18)4、结论 (21)参考文献 (22)谢辞 (23)附录 (24)1、绪论全球科技、经济飞速发展,通信占据极其关键的一环,如何能在当今迅猛的发展节奏下分毫不差的快速传输数据,并能进一步做出相对应的策略,是我们当今追求的理想效果,而新型无线技术又是通信中当今的发展趋势,更是科技上所持续关注的焦点。

CC2530zigbee技术-简介协议栈

CC2530zigbee技术-简介协议栈

CC2530zigbee技术-简介协议栈前⾔说实话,我喜欢⾃⼰的原创,虽然我写得可能简单了,但我觉得⾃⼰在写博客的路途上,⼀点⼀点地积累知识,我也借鉴别⼈的东西,特别是在写这篇⽂章时所使⽤的是markdownpad2写的,原来我根本就不知道还有这个玩意,所以相信在园⾥的朋友们都会⽀持的,如果您知道了,或者懂了,就默默地⽆视⼩弟我写的博客,如果没有接触过呢,嘿嘿,我们⼀起研究进步!协议栈TI公司很⽜,这是给我的感觉,它能把那些复杂的东西全部写好,就提供⼀些API来给我们使⽤,让⽤户更加⽅便,这个是我对它崇拜的地⽅,好了,不说废话了,进⼊正题。

下⾯就是协议栈的框图了那么所谓的协议栈指的就是TI公司的Z-STACK,不得不说⼈们的智慧是⽆穷的,这样⼀个基于8051的芯⽚在上⾯写了⼀个操作系统其名为Z-stack采⽤的⽅法是任务轮回的⽅法,⽽且任务ID值越⼩,优先级越⾼!我们使⽤IAR打开TI公司提供的example 路径如下:C:\Texas Instruments\ZStack-CC2530-2.3.0-1.4.0\Projects\zstack\Samples\SampleApp\CC2530DB可以看到⾮常清楚的⼯作⽬录。

协议栈函数解析⾸先我们找到Zmain⽬录下的zmain.c,找到int main();没错,这就是传说中的主函数int main( void ){osal_int_disable( INTS_ALL );//关闭所有的中断HAL_BOARD_INIT();//初始化时钟信号zmain_vdd_check();//检查芯⽚电压InitBoard( OB_COLD );//初始化IO LED TIMERHalDriverInit();//初始化芯⽚各硬件模块osal_nv_init( NULL );//初始化flashZMacInit();//初始化MAC层zmain_ext_addr();//确定16位地址zgInit();//初始化⾮易失变量#ifndef NONWKafInit();#endifosal_init_system();//初始化操作系统osal_int_enable( INTS_ALL );//使能全部中断InitBoard( OB_READY );//初始化按键zmain_dev_info();//显⽰设备信息#ifdef LCD_SUPPORTEDzmain_lcd_init();//在LCD上显⽰设备信息#endif#ifdef WDT_IN_PM1WatchDogEnable( WDTIMX );#endifosal_start_system(); // No Return from here 进⼊操作系统后不再返回return 0;}main()哈哈,我已经做了翻译⼯作,但是不⼀定是对的,因为毕竟是站在我的理解上写的!上述的代码基本上都是⼀些初始化的代码,⼀个硬件的启动必须要有各种各样的设定才⾏!下⾯分两个来讲,主要是讲两个函数:osal_init_system()和osal_start_system(),因为这两个函数可是重中之中啊!osal_init_system()函数分析在IAR中go to defintion就可以了,当然你也可以在OSAL.c这个⽂件中找到:uint8 osal_init_system( void ){// Initialize the Memory Allocation Systemosal_mem_init();//初始化内存分配系统// Initialize the message queueosal_qHead = NULL;//初始化消息队列// Initialize the timersosalTimerInit();//初始化定时器// Initialize the Power Management Systemosal_pwrmgr_init();//初始化店⾥管理系统// Initialize the system tasks.osalInitTasks();//初始化系统任务// Setup efficient search for the first free block of heap.osal_mem_kick();return ( SUCCESS );}osal_start_system()函数分析同样的道理,你也可以找到这个函数的定义void osal_start_system( void ){#if !defined ( ZBIT ) && !defined ( UBIT )for(;;) // Forever Loop永远循环#endif{uint8 idx = 0;osalTimeUpdate();//扫描哪个事件被触发了,然后置相应的标志位Hal_ProcessPoll(); // This replaces MT_SerialPoll() and osal_check_timer().do {if (tasksEvents[idx]) // Task is highest priority that is ready.{break; //得到待处理的优先级最⾼的是任务ID idx}} while (++idx < tasksCnt);if (idx < tasksCnt){uint16 events;halIntState_t intState;HAL_ENTER_CRITICAL_SECTION(intState);//进⼊临界区进⾏保护events = tasksEvents[idx];//提取需要处理的事件tasksEvents[idx] = 0; // Clear the Events for this task.清楚事件HAL_EXIT_CRITICAL_SECTION(intState);//退出临界区保护events = (tasksArr[idx])( idx, events );//通过指针调⽤处理函数HAL_ENTER_CRITICAL_SECTION(intState);//进⼊临界区tasksEvents[idx] |= events; // Add back unprocessed events to the current task.保存未处理的函数 HAL_EXIT_CRITICAL_SECTION(intState);//退出临界区}#if defined( POWER_SAVING )else // Complete pass through all task events with no activity?//所有任务是否全部完成{osal_pwrmgr_powerconserve(); // Put the processor/system into sleep//挂起系统使之进⼊睡眠状态 }#endif}}相信看了上⾯的注释,对于zigbee的z-stack有了⼀定的了解了吧!总结我们可以得出以下的⼤致流程:。

CC2530实现协议栈网络通信实验(广播)

CC2530实现协议栈网络通信实验(广播)

2. 接收部分 接收数据函数 void SampleApp_MessageMSGCB( afIncomingMSGPacket_t *pkt ) { uint8 asc_16[16]={'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'},i; uint16 flashTime; switch ( pkt->clusterId ) { case SAMPLEAPP_PERIODIC_CLUSTERID: HalUARTWrite(0,"Receive data: \n",14); for(i=0;i<10;i++) HalUARTWrite(0,&asc_16[pkt->cmd.Data[i]],1);//sent data to PC
其中默认接收 ID 就是刚定义的周期性广播发送 ID。 将修改后的程序分别以协调器、路由器、终端的方式下载到 3 个设备,可以 看到各个设备都在广播发送信息,同时也接收广播信息
ห้องสมุดไป่ตู้
实验目的:学习如何使用 TI 提供的协议栈,进行组网和无线数据通信。其 中一个模块为协调器,一个模块为无线终端,一个模块为路由器。 实验步骤: 1. 打开工程文件:协议栈的无线数据传输 \Projects\zstack\Samples\SampleApp\CC2530DB\ SampleApp,分别选择 EndDeviceEB-Pro, RouterEB-Pro, CoordintorEB-Pro, 分别下载到三个模块中, 如下图所示。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

afAddrType_t Group_DstAddr 组播内容的结构体: 2. 加入组播参数的配置。
Group_DstAddr.addrMode = (afAddrMode_t)afAddrGroup; Group_DstAddr.endPoint = SAMPLEAPP_ENDPOINT; Group_DstAddr.addr.shortAddr = Test_GROUP; 其中 Test_GROUP 在 SampleApp.h 里面定义组号为 2:
具体实验: 1. 发送部分 组播描述的就是网络中所有节点设备被分组后组内相互通信的过程。确定通
信对象的就是节点的组号。下面我们在 SampleApp 例程完通过简单的修改完成 组播实验。
终端的描述文件在 AF.h 文件里,找到下面代码: 1. 在SampleApp.c中加入2项内容: 组播afAddrType_t的类型变量
= Addr64Bit,
afAddrGroup
= AddrGroup,
afAddrBroadcast = AddrBroadcast
} afAddrMode_t;
发送函数 void SampleApp_SendGroupMessage( void ) {
uint8 data[10]={0,1,2,3,4,5,6,7,8,9}; if ( AF_DataRequest( &Group_DstAddr, &SampleApp_epDesc,
#define Test_GROUP 0x0002 // 组播号 2
ቤተ መጻሕፍቲ ባይዱ
易思开发工作室 ES Technology
{
afAddrNotPresent = AddrNotPresent,
afAddr16Bit
= Addr16Bit,
afAddr64Bit
易思开发工作室 ES Technology
实验结果:将修改后的程序分别以协调器、路由器、终端的方式下载到 3 个设备,把协调器和路由器组号设置成 0x0002,终端设备组号设成 0x0003。 连接串口,可以观察到只有 0x0002 的两个设备相互发送信息。
Test_GROUP_CLUSTERID, 10, data, &SampleApp_TransID, AF_DISCV_ROUTE, AF_DEFAULT_RADIUS ) == afStatus_SUCCESS ) { } }
其中 Group_DstAddr 我们之前已经定义,我们在 SampleApp.h 中加入 Test _GROUP_CLUSTERID 的定义如下: #define Test _GROUP_CLUSTERID 4 // 传输编号 4
} } 其中接收 ID 我们在原来基础上改成我们刚定义 Test_GROUP_CLUSTERID。
将修改后的程序分别以协调器、路由器、终端的方式下载到 3 个设备,把协 调器和路由器组号设置成 0x0002,终端设备组号设成 0x0003。连接串口,可以 观察到只有 0x0002 的两个设备相互发送信息。
2. 接收部分
接收数据函数 void SampleApp_MessageMSGCB( afIncomingMSGPacket_t *pkt ) {
uint8 asc_16[16]={'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'},i; uint16 flashTime; switch ( pkt->clusterId ) {
HalUARTWrite(0,"\n",1);
//
break;
case SAMPLEAPP_FLASH_CLUSTERID: flashTime = BUILD_UINT16(pkt->cmd.Data[1], pkt->cmd.Data[2] ); HalLedBlink( HAL_LED_4, 4, 50, (flashTime / 4) ); break;
\Projects\zstack\Samples\SampleApp\CC2530DB\ SampleApp,分别选择 EndDeviceEB-Pro, RouterEB-Pro,CoordintorEB-Pro,分别下载到三个模块中, 如下图所示。
2. 连接计算机与协调器模块,可以看到协调器接收到数据。
case Test_GROUP_CLUSTERID: HalUARTWrite(0,"Receive data: \n",14); //
易思开发工作室 ES Technology
for(i=0;i<10;i++)
HalUARTWrite(0,&asc_16[pkt->cmd.Data[i]],1);// sent data to PC
易思开发工作室 ES Technology
文件名:协议栈网络通信实验(组播) Zigbee 的通讯方式主要有三种点播、组播、广播。点播,顾名思义就是点对 点通信,也就是 2 个设备之间的通讯,不容许有第三个设备收到信息;组播,就 是把网络中的节点分组,每一个组员发出的信息只有相同组号的组员才能收到。 广播,最广泛的也就是 1 个设备上发出的信息所有设备都能接收到。 这也是 ZigBee 通信的基本方式。 注意: 1. 先安装好 PL2302 USB 转串口驱动,转备好 USB 线,连接计算机与接收模块。 2. 需要两个或者两个以上模块,分别用于协调器、路由器、终端。 实验目的:学习如何使用 TI 提供的协议栈,进行组网和无线数据通信。其 中一个模块为协调器,一个模块为无线终端,一个模块为路由器。 实验步骤: 1. 打开工程文件:协议栈的无线数据传输
相关文档
最新文档