毕业论文
计算机论文
经济论文
生物论文
数学论文
物理论文
机械论文
新闻传播论文
音乐舞蹈论文
法学论文
文学论文
材料科学
英语论文
日语论文
化学论文
自动化
管理论文
艺术论文
会计论文
土木工程
电子通信
食品科学
教学论文
医学论文
体育论文
论文下载
研究现状
任务书
开题报告
外文文献翻译
文献综述
范文
zigbee无线火灾报警系统设计+源程序+流程图+电路图(6)
硬件初始化需要根据HAL文件夹中的hal_board_cfg.h(头文件)文件配置寄存器8051的寄存器(比如说哪些I/O口与什么硬件相连)。
1.2.3.5 OSAL系统
顺利完成上述初始化后,开中断执行osal_start_system( )函数开始运行OSAL系统。
该任务调度函数按照优先级检测各个任务是否就绪,如果存在就绪的任务则调用tasksArr[ ]中相对应的任务处理函数去处理该事件,直到执行完所有就绪的任务。
如果任务列表中没有就绪的任务,则可以使处理器进入睡眠状态实现低功耗。
osal_start_system( )一旦执行,则不再返回Main( )函数。 OSAL程序流程图
OSAL是协议栈的核心
Z-stack的任何一个子系统都作为OSAL的一个任务,因此在开发应用层的时候,必须通过创建OSAL任务来运行应用程序
通过osalInitTasks( )函数创建OSAL任务,其中TaskID为每个任务的唯一标识号
任何OSAL任务必须分为两步:
一是进行任务初始化。
二是处理任务事件。
一、任务初始化主要步骤如下:
(1)初始化应用服务变量。
const pTaskEventHandlerFn tasksArr[ ]数组定义系统提供的应用服务和用户服务变量
(2)分配任务ID和分配堆栈内存
void osalInitTasks( void )主要功能是通过调用osal_mem_alloc( )函数给各个任务分配内存空间,和给各个已定义任务指定唯一的标识号
(3)在AF层注册应用对象
通过填入endPointDesc_t数据格式的EndPoint变量,调用 afRegister( )在AF层注册EndPoint应用对象。 通过在AF层注册应用对象的信息,告知系统afAddrType_t地址类型数据包的路由端点
(4)注册相应的OSAL或者HAL系统服务
在协议栈中,Z-stack提供键盘响应和串口活动响应两种系统服务,但是任何Z-Stask任务均不自行注册系统服务,两者均需要由用户应用程序注册
二、处理任务事件:
处理任务事件通过创建“ApplicationName”_ProcessEvent( )函数处理。一个OSAL任务除了强制事件(Mandatory Events)之外还可以定义15个事件。
SYS_EVENT_MSG(0x8000)是强制事件。该事件主要用来发送全局的系统信息,包括以下信息:
AF_DATA_CONFIRM_CMD:该信息用来指示通过唤醒AF DataRequest( )函数发送的数据请求信息的情况
AF_INCOMING_MSG_CMD:用来指示接收到的AF信息
KEY_ CHANGE:用来确认按键动作
ZDO_ NEW_ DSTADDR:用来指示自动匹配请求
ZDO_STATE_CHANGE:用来指示网络状态的变化
OSAL层是与协议栈独立的,但是整个协议都要基于OSAL才能运行。
OSAL提供如下服务和管理:信息管理、任务同步、时间管理、中断管理、任务管理、内存管理、电源管理以及非易失存储管理
(1)信息管理API
信息管理为任务间的信息交换或者外部处理事件提供一种管理机制。包括允许任务分配或不分配信息缓存、发送命令信息到其他任务、接受应答信息等API函数。
(2)同步任务API
该API允许一个任务等待某个事件的发生并返回等待期间的控制。该API的功能是为某个任务设置事件,一旦任何一个事件被设置就修改该任务。
(3)时间管理API
该API允许定时器被内部(Z-Stack)任务和外部任务使用。该API提供开始和停止一个定时器的功能,这些定时器能用毫秒(ms)设置。
(4)中断管理API
这些API是外部中断和任务的接口。这些API函数允许一个任务为每个中断分配指定服务程序。这些中断能被允许或禁止。在服务程序内,可为其他的任务设置事件。
(5)任务管理API
该API用在管理OSAL中的任务,包括系统任务和用户自定义任务的创建、管理和信息处理等。
共15页:
上一页
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
下一页
上一篇:
基于短信模块的智能家居系统设计+程序流程图+电路图
下一篇:
Matlab小波变换在图像处理中的仿真及应用+源码
认知无线电网络中基于双...
基于ZigBee协议轨道交通环...
ZigBee无线人员定位系统设计+源程序
ZigBee智能仓储系统数据采集终端设计+源代码
STC89C52单片机无线智能抄表系统设计与实现
Labview+ZigBee工厂污水排放监控系统的设计
基于ZigBee投票器的设计与实现
浅谈新形势下妇产科护理...
国内外无刷直流电动机研究现状
多元化刑事简易程序构建探讨【9365字】
浅谈传统人文精神茬大學...
谷度酒庄消费者回访调查问卷表
高校网球场馆运营管理初探【1805字】
拉力采集上位机软件开发任务书
《醉青春》导演作品阐述
中国古代秘书擅权的发展和恶变
辩护律师的作证义务和保...