版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
不和他打交道。由于我们的学台是基于TI公司的,所以讲述的当然也是TI的Z-内容,将复杂部分掉。让用户通过API函数就可以轻易用ZigBee。这样大家使用时器计时,令LED一秒改变一次状态。好,现在进一步,我们利用同一个定时器计时,令LED1一秒闪烁一次,LED2二秒闪烁一次。这样就有2个任务了。再进一步…有n个LED,就有n个任务执行了。协议栈的最终工作原理也一样。从它工作开栈文件夹TexasInstruments\Projects\zstack。里面包含了TI公司的例程和工具。其中的功能我们会在用的的实验里讲解。再打开Samples文件夹:\SampleApp\CC2530DB下工程文件SampleApp.eww。留意左边的工程 时只需要关注Zmain文件夹和App文件夹。任何程序都在main函数开始运行,Z-STACK也不例外。打开Zmain.C,找到intmain(void)函数。我们大概浏览一下main函数代码:*@fn Firstfunctioncalledafter don'tintmain(void{//Turnoffosal_int_disableINTS_ALLInitializationforboardrelatedstuffsuchasLEDsHAL_BOARD_INIT();//初始化系统时钟Makesuresupplyvoltageishighenoughtorun //InitializeboardInitBoard(OB_COLD //初始化I/O,LED、Timer//InitialzeHAL //InitializeNVosal_nv_init(NULL);//初始化 //Initializethe //初始化MAC//Determinetheextendedaddress //确定 64位地//InitializebasicNVitems #ifndefNONWK//SincetheAFisn'tatask,callit'sinitializationroutineafInit();Initializetheoperatingsystem ////Allowosal_int_enableINTS_ALL////Finalboard yinformationaboutthisdevice /*Dis ythedeviceinfoontheLCD*/#ifdefLCD_SUPPORTED#ifdef/*IfWDTisused,thisisagood cetoenableit.*/WatchDogEnable(WDTIMX);osal_start_system();//NoReturnfromhere执行操作系统,进去后不会返回return0; //Shouldn'tgethere.}开始先执行初始化工作。包括硬件、网络层、任务等的初始化。然后执行2、运行操作系统{uint8taskID=tasksEvents=(uint16*)osal_mem_alloc(sizeof(uint16) osal_memset(tasksEvents,0,(sizeof(uint16) //任务优先级由高向低依次排列,高优先级对应taskID kInit(taskID++);//ma kInit(0),用户不需考虑nwk_init(taskID++); Hal_Init(taskID++); //Hal_Init(2),用户需考虑#ifdefined(MT_TASK)MT_TaskInit(taskID++); )#ifdefined(ZIGBEE_FRAGMENTATION)APSF_Init(taskID++);ZDApp_Init(taskID++); #ifdefined(ZIGBEE_FREQ_AGILITY)||defined(ZIGBEE_PANID_ }虑的用户可以根据自己的硬件平台或者其他设置,而写着不需考虑的也是不能修改的。TI公司协议栈已完成的东西。这里先提前卖个关子SampleApp_Init(taskID);2osal_start_system();运行操作系统。同样用gotodefinition的方法进入该函数。呵呵,结果发现很不理想。甚至很多函数形式没见过。看代码 Thisfunctionisthemainloopfunctionofthetasksystem.willlookthroughalltaskeventsandcallthefunctionforthetaskwiththe Iftherearenoeventsalltasks),thisfunctionputstheprocessorinto执 执 -@param@returnvoidosal_start_system(void){#if!defined(ZBIT)&&!defined(UBIT) //ForeverLoop{uint8idx= //Thisre cesMT_SerialPoll()andosal_check_timer().do{if(tasksEvents[idx])//Taskishighestprioritythatisready.{ }}while(++idx if(idx {uint16events; events=tasksEvents[idx]; eventstasksArr[idxidxevents通过指针调用任务处理函数,关键 tasksEvents[idx]|=events;//Addbackunprocessedeventstothecurrent
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024国家规定劳动合同
- 二年级下册语文第5单元基础知识复习训练
- 湖北大学知行学院《发酵工程与设备》2021-2022学年第一学期期末试卷
- 《结构设计绘》课件
- 儿童口腔疑难病例讨论
- 二次函数说课稿(合集5篇)修改版
- 2024贷款质押合同(用于公路收费权质押)范文
- 2024个人住房商业性借款的合同范本
- 2024瓷砖购销合同2
- 《户型基础培训》课件
- 视觉设计行业SWOT分析报告-第2篇
- 伪装隐身技术
- 【上教版九年级化学上册】《化学反应中的质量关系》示范公开课教案
- 富宁县方鑫黄金矿业有限责任公司毛姐山金矿矿山地质环境保护与土地复垦方案
- 物流市场营销旷健玲课后参考答案
- 1000个好听的男孩英文名字大全
- 《中小学美术教学论》第五章 中小学美术教学的过程
- (57)-25.2.1五味子与五倍子
- 企业文化、廉政考试
- 生态文旅休闲片区控制性详细规划
- 04SG518-3 门式刚架轻型房屋钢结构(有吊车)
评论
0/150
提交评论