易思开发工作室 ES Technology
http://es-tech.taobao.com
文件名:协议栈网络通信实验(广播)
Zigbee的通讯方式主要有三种点播、组播、广播。点播,顾名思义就是点对
点通信,也就是 2个设备之间的通讯,不容许有第三个设备收到信息;组播,就
是把网络中的节点分组,每一个组员发出的信息只有相同组号的组员才能收到。
广播,最广泛的也就是 1 个设备上发出的信息所有设备都能接收到。 这也是
ZigBee通信的基本方式。
注意:
1. 先安装好 PL2302 USB转串口驱动,转备好 USB线,连接计算机与接收模块。
2. 需要两个或者两个以上模块,分别用于协调器、路由器、终端。
实验目的:学习如何使用 TI提供的协议栈,进行组网和无线数据通信。其
中一个模块为协调器,一个模块为无线终端,一个模块为路由器。
实验步骤:
1. 打开工程文件:协议栈的无线数据传输
\Projects\zstack\Samples\SampleApp\CC2530DB\ SampleApp,分别选择
EndDeviceEB-Pro, RouterEB-Pro,CoordintorEB-Pro,分别下载到三个模块中,
如下图所示。
2. 连接计算机与协调器模块,可以看到各个设备都在广播发送信息,同时
也接收广播信息。
易思开发工作室 ES Technology
http://es-tech.taobao.com
实验结果:将修改后的程序分别以协调器、路由器、终端的方式下载到 3
个设备,可以看到各个设备都在广播发送信息,同时也接收广播信息
具体实验:
1. 发送部分
广播就是任何一个节点设备发出广播数据,网络中的任何设备都能收到。广
播的定义都是协议栈预先定义好的。所以我们直接来运用就可以了。
在 SampleApp.c中找到广播参数的配置。代码如下。
SampleApp_Periodic_DstAddr.addrMode = (afAddrMode_t)AddrBroadcast;
SampleApp_Periodic_DstAddr.endPoint = SAMPLEAPP_ENDPOINT;
SampleApp_Periodic_DstAddr.addr.shortAddr = 0xFFFF;
其中 0xFFFF是广播地址。
发送函数
void SampleApp_SendPeriodicMessage( void )
{
uint8 data[10]={0,1,2,3,4,5,6,7,8,9};
if ( AF_DataRequest( &SampleApp_Periodic_DstAddr, &SampleApp_epDesc,
SAMPLEAPP_PERIODIC_CLUSTERID,
10,
data,
易思开发工作室 ES Technology
http://es-tech.taobao.com
&SampleApp_TransID,
AF_DISCV_ROUTE,
AF_DEFAULT_RADIUS ) == afStatus_SUCCESS )
{
}
}
其中 #define SAMPLEAPP_PERIODIC_CLUSTERID 1 // 广播传输编号 1
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
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;
}
}
其中默认接收 ID就是刚定义的周期性广播发送 ID。
将修改后的程序分别以协调器、路由器、终端的方式下载到 3个设备,可以
看到各个设备都在广播发送信息,同时也接收广播信息
本文档为【CC2530实现协议栈网络通信实验(广播)】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑,
图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。