- 1、本文档共4页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
ZigBee学习之7——OSAL(操作系统抽象层)API解读
ZigBee 7——OSAL( )API
ZigBee 7——OSAL( )API
ZZiiggBBeeee学习之77————OOSSAALL((操作系统抽象层))AAPPII解读
Z-Stack1.4.3 及以后的版本中引入了一个OS的概念,把应用层和堆栈层进行了
分离,但是这个操作系统并不是时实的操作系统,所以有兴趣的话还可以将其改
为时实的操作系统,或者用其他开源的实时操作系统取代,比如USOS,呵呵。
我将这个OS的API 文档进行了一定的翻译,当然所谓一定,就是说有的地方没
有翻译出来罗,要么是我不会的,要么就是我觉得没必要翻译的东西,总之,提
供给各位一个参考,最好是对照原文档来阅读拉。
没接触过操作系统,也是第一次搞Zigbee,错误的地方还请各位多多指正。
OSAL(操作系统抽象层) API[OSAL API_F8W-2003-0002_.pdf]
这个层次主要是将Z-Stack软件组件从特殊的处理过程相分离,将其保护起来。一般来说提供如
下几个功能:
• 任务的注册、初始化、开始
• 任务间的消息交换
• 任务同步
• 中断处理
• 时间管理
• 内存分配
消息管理API
消息管理API提供任务(或处理单元)间的消息交换(比如中断服务事务,控制循环中的函数调
用)。这些API能用来允许任务分配和取消分配的消息缓存,发送对其他任务的命令消息,接受
应答消息。
byte *osal_msg_allocate(uint16 len)
分配一个消息缓存,随后调用它的任务/函数将填充消息并调用osal_msg_send()将消息发送给
其他任务。
参数:消息长度;
返回值:指向消息缓存的指针,失败则为NULL。
byte osal_msg_deallocate(byte *msg_ptr)
任务接收完消息后用来释放分配的消息缓存。
参数:要释放的消息缓存;
返回值:ZSUCCESS - 成功
INVALID_MSG_POINTER - 无效的消息指针
MSG_BUFFER_NOT_AVAIL - 缓存正在队列(queued)
byte osal_msg_send(byte destination_task,byte *msg_ptr)
向其他任务或处理单元发送命令或数据消息。目标任务ID域必须有效的系统任务。任务ID由开
始任务时的osal_creat_task()分配。此函数将在目标任务事件列表中设置SYS_EVENT_MSG事件。
参数: destination_task - 目标任务ID;
msg_ptr - 指向包含消息的消息缓存的指针;
返回值:ZSUCCESS - 成功
INVALID_MSG_POINTER - 无效的消息指针
INVALID_TASK - 目标任务不正确
byte *osal_msg_receive(byte task_id)
提取接收到的命令消息,在处理完消息后必须用osal_msg_deallocate()释放消息缓存。
参数: task_id - 调用者的任务ID(即消息发往的目标任务);
返回值:指向包含消息的一段缓存,若没有接收到消息则为NULL。
任务同步API
允许任务等待事件发生并在等待时返回控制信息。用来为任务设置事件
byte osal_set_event( byte task_id, UINT16 event_flag )
为任务设置事件标志。
参数: task_id - 将设置事件的任务ID;
event_flag - 2字节的位图,其中每位指定了一个事件。只有一个系统事件(SYSTE
M_EVENT_MSG),其余的事件/位由接收任务指定;
返回值:ZSUCCESS - 成功
INVALID_TASK - 任务不正确
时钟管理API
这些API允许内部(Z-Stack)任务和外部(应用层)任务用时钟。API提供启动,停止时钟的
函数。时钟能被设置成1ms的增量。
byte osal_start_timer(UINT16 event_id, UINT16 timeout_value)
启动时钟。当时钟超时,相关的事件位将设置。事件将设置
您可能关注的文档
- 我国燃煤二氧化硫污染的控制技术及其应用.pdf
- 工程量清单报价明细表.pdf
- 轴承套圈成形工艺对比分析_王明舟.pdf
- 1.2识字与写字教学.pdf
- 欣力光电企业形象识别系统B07标志符号指示系统.pdf
- 快速入门,少走弯路,装修经验总结.pdf
- 售前咨询人员工作职责和流程.pdf
- ERP 销售题面.pdf
- 现场安全文明施工措施.pdf
- ZXID-QPG2-01 采购管理流程.pdf
- [中央]2023年中国电子学会招聘应届生笔试历年参考题库附带答案详解.docx
- [吉安]2023年江西吉安市青原区总工会招聘协理员笔试历年参考题库附带答案详解.docx
- [中央]中华预防医学会科普信息部工作人员招聘笔试历年参考题库附带答案详解.docx
- [保定]河北保定市第二医院招聘工作人员49人笔试历年参考题库附带答案详解.docx
- [南通]江苏南通市崇川区人民法院招聘专职人民调解员10人笔试历年参考题库附带答案详解.docx
- [厦门]2023年福建厦门市机关事务管理局非在编工作人员招聘笔试历年参考题库附带答案详解.docx
- [三明]2023年福建三明市尤溪县招聘小学幼儿园新任教师79人笔试历年参考题库附带答案详解.docx
- [哈尔滨]2023年黑龙江哈尔滨市木兰县调配事业单位工作人员笔试历年参考题库附带答案详解.docx
- [上海]2023年上海市气象局所属事业单位招聘笔试历年参考题库附带答案详解.docx
- [台州]2023年浙江台州椒江区招聘中小学教师40人笔试历年参考题库附带答案详解.docx
最近下载
- GB_T_13861-2022生产过程危险和有害因素分类与代码.pdf VIP
- 2024年教学能力比赛现场答辩题库(必威体育精装版编制).docx
- 3月1日国际民防日知识介绍主题班会.pptx VIP
- 人教新课标六年级上册数学第6单元《百分数一》测试卷.doc VIP
- 记念刘和珍君鲁迅记念刘和珍君聆听鲁迅的声音徘徊páihuái课件.pptx VIP
- 施工现场安全教育培训课件(课件35张).ppt VIP
- 中小尺度气象学5章.ppt
- 高铁乘务人员形象塑造项目5搭配合适的发型.pptx VIP
- 化工原理课程设计乙醇—水板式精馏塔设计.doc
- 中国国家标准 GB/T 1040.2-2022塑料 拉伸性能的测定 第2部分:模塑和挤塑塑料的试验条件.pdf
文档评论(0)