1 / 4
文档名称:

ZigBee协议栈应用分析.doc

格式:doc   大小:29KB   页数:4页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

ZigBee协议栈应用分析.doc

上传人:mh900965 2018/2/16 文件大小:29 KB

下载得到文件列表

ZigBee协议栈应用分析.doc

相关文档

文档介绍

文档介绍:ZigBee协议栈Z-Stack应用分析

电子科学系系 2008 级电子信息科学与技术专业 2 班
姓名胡健同组人姓名暂无指导老师罗中良
日期 2010年8月15日

ZigBee协议栈Z-Stack的应用综述
Z-Stack是TI公司提供的ZigBee协议栈,它从结构看与标准协议栈的组织结构很相似,所以我相信对于阅读过ZigBee协议栈的人来说,对Z-Stack应该不会陌生,TI公司的Z-Stack在组织结构来看,为ZigBee协议部分的所谓的组(group)有Mac、nwk、profile、security、zdo,这些组包含了大部分ZigBee协议栈的内容,而且几乎都是一一对应的,并且在每一层都实现了访问接口函数,可以方便的查阅“.h”选择可用的服务函数。
Z-Stack中的Hal则是ZigBee所说的Hal的超集,因为Z-Stack的Hal还包含了对应单片机的硬件抽象,比如按键、LED、LCD、ADC、uart等的抽象接口,提供的接口都是对用户透明的,应用起来比较方便,必要的初始化后可以直接调用。
app是应用层,是添加应用的常规地方。用户的应用一般在这里添加。
tools是Z-Stack与调试工具接口的代码。
zmac是Mac的简单接口,也就是说,在ZigBee协议栈中看到的某些原语在这里可以找到对应的函数,不过,大部分的Mac原语的实现函数还是在Mac那个group。
zmain是整个Z-Stack开始运行的地方,在这个组的源文件中可以找到主函数main与一些初始化函数。
OSAL是协调协议栈、硬件、任务有条不紊工作的操作系统组(group),在这里实现一个消息驱动的实时操作系统,为其他任务提供服务,即提供必要的系统服务接口(API)。而ZigBee协议栈中的层在Z-Stack里面,都对应一个任务,而且越底层任务优先级越高,这可以保证最紧急、实时要求高的层得以优先执行。
那么,我们如何应用Z-Stack呢?如前面所述,协议栈的每层都是单独一组,并以“.h”文件为接口提供接口函数,OSAL也是如此---我们就是应用这些的!也就是说,我们就是在这些服务接口的范围进行我们的应用开发的,Z-Stack给我们提供了一个应用的框架!下面,我以开发应用的角度来分析一下Z-Stack的可用接口。
-Stack的操作系统
第一步,观察可用的操作系统函数。在“.h”文件中找,看看有哪些“.h”文件及其对应函数。

函数列表如下
extern byte * osal_msg_allocate(uint16 len );//1
extern byte osal_msg_deallocate( byte *msg_ptr );//2
extern UINT16 osal_num_msgs( void );//3
extern byte osal_msg_send( byte destination_task, byte *msg_ptr );//4
extern byte *osal_msg_receive( byte task_id );//5
extern void osal_msg_enqueue( osal_msg_q_t *q_ptr, void *msg_ptr