版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
不和他打交道。由于我们的学台是基于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. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 外部合作方数据安全管理条例
- 飞机原理知识
- 体育产业发展前景研究报告
- 电影产业对文化传播的推动力度
- 2025年矿山救护队员有毒气体监测技能测试试题及真题
- 2025年中小学数学方程组与不等式习题解析试题
- 民间文学文化软实力提升作用测试试题及答案
- 2026年小学英语语音拼读技巧详解习题试卷
- 2025年大学英语四级语法专项课程试题及答案
- 供水管网维护与管理手册
- 2026年医疗器械行业分析报告及未来五至十年行业发展报告
- 2025-2026学年高一上学期期末英语模拟卷(译林版)(解析版)
- 基于人工智能的大学语文教学数字化转型与挑战
- 甲状腺相关眼病护理查房
- 2025年宁夏回族自治区学校教师队伍“十五五”发展规划
- 业务流程优化实施指南
- 人流后超声诊断规范与应用
- 黑龙江流浪犬管理办法
- 入党申请书专用纸-A4单面打印
- 2025企业年会总结大会跨越新起点模板
- 《中国的河流(第3课时 滔滔黄河)》示范课教学设计【湘教版八年级地理上册】
评论
0/150
提交评论