zigbee,Z-Stack
文章平均质量分 53
stone8761
这个作者很懒,什么都没留下…
展开
-
Z-Stack协议栈学习笔记3---按键系统代码分析
按键和串口一样,都是开发过程中不可或缺的调试工具,因为为了后面的开发工作顺利进行研究了解按键的识别过程非常重要。Z-Stack的按键系统非常简单,首先执行初始化,这个在hal初始化函数中。然后执行按键配置HalKeyConfig(),这个函数执行流程是main()--->InitBoard()--->HalKeyConfig(),这个函数关闭了按键中断和按键回调函数: ...原创 2018-03-15 11:08:15 · 2551 阅读 · 0 评论 -
Z-Stack协议栈学习笔记4---广播
本实验基于上一章的按键实验的代码,添加了广播功能,效果是endDevice端按下s1按键后发送一个广播包,coordinator收到包后用串口打印出来; 先来看看发送端endDevice的添加的代码,首先修改发送的目的地址,TestApp.c中的TestApp_Init()函数中定义了目的地址,我们把它改成广播模式: zstack默认会在网络状态改变的时候添加一个定时...原创 2018-03-16 16:43:12 · 2184 阅读 · 0 评论 -
Z-Stack协议栈学习笔记7---修改PANID与信道选择
PANID设置 一个zigbee网络的标志就是PANID,PANID是一个16位变量,可以定义65535个不同PANID号的网络。我们可以使用PANID在相同的信道内区分不同的zigbee网络。PANID一般由coordinator决定,router与endDevice接入时会从coordinator获取PANID。也可以固定router和endDevice的PANID,使其加入特定的co...原创 2018-03-22 14:39:28 · 7722 阅读 · 0 评论 -
Z-Stack协议栈学习笔记5---组播
本实验基于上一章的广播实验的代码,添加了组播功能,效果是endDevice端按下s1按键后发送一个组播包,coordinator收到包后用串口打印出来。下面的代码分为初始化、发送、接收三个部分;初始化网络: 在TestApp.c的TestApp_Init()中初始化变量TestApp_DstAddr与TestApp_Group,前者是发送时需要的目的地址,后者是加入的组号: ...原创 2018-03-19 11:59:17 · 1377 阅读 · 0 评论 -
Z-Stack协议栈学习笔记1---安装Z-Stack协议栈、建立新工程
ZigBee网络架构由物理层(PHY)、MAC层、网络层(NWK)、应用程序支持子层(APS)、应用层(APL)组成,其中前两层(PHY和MAC)由IEEE802.15.4协议标准定义。后三层则由ZigBee联盟定义。Z-Stack协议栈由TI公司开发,具体实现了这5个层次。Z-Stack可从TI官网下载,双击安装协议栈。安装本质其实就是解压所有协议栈的代码到本地的某个目录下。协议栈...原创 2018-03-13 18:26:45 · 8307 阅读 · 0 评论 -
Z-Stack协议栈学习笔记6---单播
基于上一章的代码改为coordinator与endDevice之间使用单播模式通讯。单播故名思议就是点对点通讯,一个节点通过一个网络地址唯一的找到另一个节点。zigbee协议中可使用16位短地址或64位IEEE地址这两个地址类型。64位IEEE地址:全球唯一标识,一般在芯片出厂时烧录进芯片,在工作时从芯片中读出。全球唯一,理论上没有两个IEEE地址相同的节点;16位短地址: 在某个...原创 2018-03-20 11:48:22 · 2095 阅读 · 3 评论 -
Z-Stack协议栈学习笔记2---串口调试
基于上一章的工程调试串口通讯功能。串口是嵌入式开发中非常重要的功能,大量的调试工作都依赖与串口信息,所以学习任何一块嵌入式平台首先要研究串口系统。 CC2530自带两个串口,再Z-Stack中有完整的串口实现代码,我们只需要在特定的地方加上相应的API接口即可。 第一步我们需要调整一下宏开关,Z-Stack中有很多宏开关控制代码流程。这里的宏开关可直接通过IAR...原创 2018-03-14 11:16:00 · 3099 阅读 · 1 评论