社区导航

 

搜索
查看: 153|回复: 1

[分享] ZigBee TI ZStack CC2530 4.14 广播通信

[复制链接]

176

TA的帖子

0

TA的资源

一粒金砂(初级)

Rank: 1

发表于 2019-12-2 21:54 | 显示全部楼层 |阅读模式
本帖最后由 火辣西米秀 于 2019-12-2 21:55 编辑

三个以上ZigBee设备组网成功后,网络中任意一个设备按下KEY1,网络中其余ZigBee设备上的LED1状态均会取反,同时串口也会打印出接收到的广播数据。

1、广播发送函数,声明及定义如下:

 ......
static void ProjectApp_SendBroadcast( void );
......
static void ProjectApp_SendBroadcast( void )
{
  char theMessageData[ ] = "Broadcast data\r\n";
 
  ProjectApp_DstAddr.addrMode       = (afAddrMode_t)AddrBroadcast;
  ProjectApp_DstAddr.endPoint       = PROJECTAPP_ENDPOINT;
  ProjectApp_DstAddr.addr.shortAddr = NWK_BROADCAST_SHORTADDR_DEVALL;//NWK_PAN_COORD_ADDR;  
 
  AF_DataRequest( &ProjectApp_DstAddr,
                  &ProjectApp_epDesc,
                  PROJECTAPP_CLUSTERID,
                  (byte)osal_strlen( theMessageData ) + 1,
                  (byte *)&theMessageData,
                  &ProjectApp_TransID,
                  AF_DISCV_ROUTE,
                  AF_DEFAULT_RADIUS
                );
}
相信这个函数的定义大家一眼也能看明白~
2、实验验证

(1)调用广播发送函数

 static void ProjectApp_HandleKeys( uint8 shift, uint8 keys )
{
  ......
  if ( keys & HAL_KEY_SW_1 )
  {
//    HalLedSet(HAL_LED_1,HAL_LED_MODE_TOGGLE);
//    ProjectApp_SendUnicast16();
    ProjectApp_SendBroadcast();
  }
  ......
}
(2)编译下载

在IAR左侧的Workspace中,一个ZigBee设备选择CoordinatorEB编译下载,其余所有的ZigBee设备任意选择RouterEB或EndDeviceEB编译下载,如下图所示进行选择;

image.png

(3)实验现象
所有的ZigBee设备上电后,会发现,无论按下哪个ZigBee设备上的KEY1,其余所有的ZigBee设备上的LED1状态都会取反,同时协调器的串口每次都会打印出“Broadcast data”;

image.png

此帖出自无线连接论坛


回复

使用道具 举报

1736

TA的帖子

0

TA的资源

纯净的硅(初级)

Rank: 4

发表于 2019-12-3 09:20 | 显示全部楼层

谢谢分享



回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

关闭

站长推荐上一条 /8 下一条

  • 论坛活动 E手掌握

    扫码关注
    EEWORLD 官方微信

  • EE福利  唾手可得

    扫码关注
    EE福利 唾手可得

Archiver|手机版|小黑屋|电子工程世界 ( 京ICP证 060456 )

GMT+8, 2019-12-8 14:21 , Processed in 0.102796 second(s), 17 queries , Gzip On, MemCache On.

快速回复 返回顶部 返回列表