版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
实验目的
基于GenericApp掌握基于GenericApp无线收实验设备硬件:PC 一EB2530(底板、板、USB线 两仿真 一软件:2000/XP/win7,IAR8.10实验模型给终端,终端收到后Led1也闪烁。实验详解:一 分析#include#includehal_drivers.h"//硬件驱#include //操作系统头文件#include //操作系统任务头文件#ifdefinedMT_TASK //串口应用头文件#include#include8.9.//网络层头文件10.//应用支持层头文件11.//设备对象头文件#ifdefined(ZIGBEE_FREQ_AGILITY)||defined(ZIGBEE_PANID_#include#ifdefined(ZIGBEE_FRAGMENTATION#include#includeconstpTaskEventHandlerFntasksArr[]= //MAC任务循 //网络层任务函数 //硬件层函数#ifdefined(MT_TASK //串口支持层定义 //应用支持层任务事件函数#ifdefined(ZIGBEE_FRAGMENTATION //设备对象层函数#ifdefined(ZIGBEE_FREQ_AGILITY)||defined(ZIGBEE_PANID_ //自己定义的任务处理函数36.const t=sizeof(tasksArr)/sizeof(tasksArr[0]uint16voidosalInitTasks(void完成了任务ID的分配,以及所有任务的初{uint8taskID=//分配内存空间tasksEvents=(uint16*)osal_mem_alloc(sizeof(uint16) osal_memset(tasksEvents,0,(sizeof(uint16) makInit(taskID++);//MAC层的任务IDnwk_init(taskID //网络ID分配Hal_Init(taskID //硬件ID分配#ifdefined(MT_TASKMT_TaskInit(taskID++APS_Init(taskID++#ifdefined(ZIGBEE_FRAGMENTATIONAPSF_Init(taskID++ZDApp_Init(taskID++#ifdefined(ZIGBEE_FREQ_AGILITY)||defined(ZIGBEE_PANID_ZDNwkMgr_Init(taskID++GenericApp_Init(taskID);//自己任务初始化函59.第1-18第19-36行tasksArr数组里面存放所有任务的任务处理函数,如果操作系查询到了该任务第37行t第38tasksEvent第39-59行完成了任务ID的分配,以及所有任务的初始化。GenericApp_Init(taskID二 协调器源码分#include#include#include#include#include#include#include#if!defined(WIN32#include/*HAL#include#include#include#include#includeconstcId_tGenericApp_ClusterList[GENERICAPP_MAX_CLUSTERS]{20.constSimpleDescriptionFormat_tGenericApp_SimpleDesc{ //int //uint16 //uint16 // // //byte(cId_t*)GenericApp_ClusterList,//byte //byte(cId_t //byte32.endPointDesc_tbytebytevoid ingMSGPacket_t*pcktvoidvoidGenericApp_Init(bytetask_id{GenericApp_TaskID=task_id;//osal分配的任务ID随着用户添加任务的增多而改变GenericApp_TransID=0;//消息发送ID(多消息时有顺序之分//定义本设备用来通信的APS层端点描述符 GENERICAPP_ENDPOINT;//应用程序的端GenericApp_epDesc.task_id&GenericApp_TaskID;//描述符的任务 //简单描述符 =(SimpleDescriptionFormat_tGenericApp_epDesc.latencyReq //延时策afRegister(&GenericApp_epDesc //向AF层登记描述符49.UINT16GenericApp_ProcessEvent(bytetask_id,UINT16events{ingMSGPacket_tif(events&SYS_EVENT_MSG{MSGpkt= ingMSGPacket_t*)osal_msg_receive(GenericApp_TaskIDwhile(MSGpkt{switch(MSGpkt->hdr.event{ osal_msg_deallocate((uint8*)MSGpktMSGpkt= ingMSGPacket_t*)osal_msg_receive(GenericApp_TaskID}return(events^}return72.void ingMSGPacket_t{unsignedcharswitch(pkt->clusterId{caseosal_memset(buf,0,osal_memcpy(buf,pkt->cmd.Data,if(buf[0]=='D'&&{HalLedBlink(HAL_LED_1,0,50, {HalLedSet(HAL_LED_1, }92.void{byteafAddrType_t}constcId_tGenericApp_ClusterList[GENERICAPP_MAX_CLUSTERS]{#defineGENERICAPP_MAX_CLUSTERS 1//在头文件的宏定义#defineGENERICAPP_CLUSTERID 第33endPointDesc_tGenericApp_epDesc;//简单描述第34byteGenericApp_TaskID/osal分配的任务ID随着用户添加任务的增多而改变第35行byteGenericApp_TransID;//消息发送ID(多消息时有顺序之分)第38-49行GenericApp_Init函数,程序初始化部分都可写在此函voidGenericApp_Init(bytetask_id{GenericApp_TaskID=task_id;//osal分配的任务ID随着用户添加任务的增多改GenericApp_TransID=0;//消息发送ID(多消息时有顺序之分//定义本设备用来通信的APS层端点描述符 GENERICAPP_ENDPOINT;//应用程序的端GenericApp_epDesc.task_id&GenericApp_TaskID;//描述符的任务 //简单描述符 =(SimpleDescriptionFormat_tGenericApp_epDesc.latencyReq //延时策afRegister(&GenericApp_epDesc //向AF层登记描述符49.第50-72UINT16GenericApp_ProcessEvent(bytetask_id,UINT16events{ingMSGPacket_tifevents&SYS_EVENT_MSG判断是否是系统消{MSGpkt= ingMSGPacket_t*)osal_msg_receive(GenericApp_TaskIDwhile(MSGpkt{switch(MSGpkt->hdr.event{ osal_msg_deallocate((uint8*)MSGpktMSGpkt= ingMSGPacket_t*)osal_msg_receive(GenericApp_TaskID}return(events^}return72.第73-92接收数void ingMSGPacket_t{unsignedcharswitch(pkt->clusterId{caseosal_memset(buf0 //数组初始化osal_memcpy(bufpkt->cmd.Data2);//拷贝数据到数组if(buf[0]=='D'&&//比较数据{ HalLedBlink(HAL_LED_10,50500);//Led1闪//发送数据}{ HalLedSet(HAL_LED_1, }92.第73-92发送数void{byteafAddrType_tdevDstAddr;//设置发送模式、端点号、//无线发送数据 以上代码是在TIGenericApp例程过来的,我们对GenericApp.c中的代码进行了裁剪,帮三、终端源码分析devStates_tGenericApp_NwkState
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 培训部年度工作总结
- 一髋肌二大腿肌三小腿肌四足肌五下肢筋膜六下肢局部
- 中国商贸文化商道
- 《经史关系》课件
- 病案管理奖惩制度
- 可再生能源建筑应用数据监测系统技术规程(报批稿)
- 关节外科围手术期护理
- 中心静脉导管置换护理
- 数学学案:课堂导学第一讲二极坐标系
- 《员工有效激励》课件
- 道路施工进度计划横道图
- 太阳能路灯安装施工方案及工艺方法
- 曝光原理介绍
- 2020年中国帕金森病治疗指南(第四版)解读
- AC-16沥青混凝土配合比报告
- 神秘的宇宙世界 - 幻灯片
- 水旋式喷漆室结构、原理及设计要点2页
- 中医外科常见病辨病辩证
- 去分母解一元一次方程教案
- 四年级上册除数是整十数的笔算除法课件
- 运转车间钢包管理制度
评论
0/150
提交评论