zigbee-无线点灯-协调器节点

本文介绍了如何使用IAR 8.10和Z-stack 2.5开发Zigbee协调器节点,该节点能与终端节点组网并实现点对点通信。当终端节点发送"D1"时,协调器的LED灯会闪烁。内容包括流程图、变量定义、端点描述符、任务ID、输入命令集和函数定义等,强调了函数名在OSAL_Genericapp.c中的对应一致性。
摘要由CSDN通过智能技术生成

开发环境:IAR 8.10 Z-stack 2.5
功能:协调器与终端节点组网,实现点对点通信。终端向协调器发送“D1”,协调器LED灯闪烁。
流程图:
在这里插入图片描述
具体代码:

  1. 定义所需要的变量
  • 端点描述符
endPointDesc_t GenericApp_epDesc;
  • 任务ID,应用层的优先级
byte GenericApp_TaskID; 
  • 定义简单端点描述符

SimpleDescriptionFormat_t 是一个结构体,我们可以具体分析一下,这里是它的定义:

const SimpleDescriptionFormat_t GenericApp_SimpleDesc =
{
   
  GENERICAPP_ENDPOINT,              //端口号
  GENERICAPP_PROFID,                //Profile的ID
  GENERICAPP_DEVICEID,              //设备ID
  GENERICAPP_DEVICE_VERSION,        //设备版本号,只占前四位
  GENERICAPP_FLAGS,                 //预留位,只占前四位
  GENERICAPP_MAX_CLUSTERS,         //输入命令数
  (cId_t *)GenericApp_ClusterList,  //输入命令地址
  0,                                //输出命令数
  (cId_t *)NULL                   //输出命令地址
};

由于在本次实验中协调器节点角度(被命令的一方)所以要求是输入命令

  • 定义输入命令集列表
const cId_t GenericApp_ClusterList[GENERICAPP_MAX_CLUSTERS] =
{
   
  GENERICAPP_CLUSTERID    //命令号
};
  1. 重新定义一些函数
  • 初始化函数 void GenericApp_Init( byte task_id )
    在这个函数里只做了三件事 保存系统分配的任务ID、填充端口描述符和注册端点描述符
//任务初始化函数, 系统初始化时会被调用
void GenericApp_Init( byte task_id )
{
   
  GenericApp_TaskID = task_id;  

  // Fill out the endpoint description.
  //填充端点描述符
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值