1 / 15
文档名称:

Zigbee协议栈OSAL层API函数(译).doc

格式:doc   大小:85KB   页数:15页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

Zigbee协议栈OSAL层API函数(译).doc

上传人:pppccc8 2019/12/12 文件大小:85 KB

下载得到文件列表

Zigbee协议栈OSAL层API函数(译).doc

相关文档

文档介绍

文档介绍:3•。这部分API函数能够为任务分配和收冋消息缓冲区,发送命令消息给以外一个任务并且接收应答。osaLmsg_allocate()概述:当一个任务调用这个函数时,将为消息分配缓冲区,函数会将消息加入缓冲区,并调用osal_msg_send()将消息发送到另一个任务。原型:byte*osal_msg_allocate(uintl6len)参数:len:消息的长度返冋值:指向消息缓冲区的指针,当分配失败时返回NULLosal_msg_deallocate()概述:用于收回缓冲区原型:byteosal_msg_deallocate(byte*msg_ptr)参数:Msg_ptr:指向将耍收冋的缓冲区的指针返冋值:ESS 回收成功INVALID_MSG_POINTER 错误的指针MSG_BUFFER_NOT_AVAIL 缓冲区在队列+osal_msg_send()概述:任务调用这个函数以实现发送指令或数据给另一个任务或处理单元。目标任务的标识必须是一个有效的系统任务,当调用osal_create_task(动一个任务时,将会分配任务标识。osal_msg_send()也将在目标任务的事件列表屮设置SYS_EVENT_MSG原型:byteosal_msg_send(bytedestination_t4sk,byte*msg_ptr)参数:destination_task:目标任务的标识msg_ptr:指向消息缓冲区的指针返冋值:ESS 消息发送成功INVALID_MSG_POINTER 无效指针INVALID_TASK 目标任务无效osal_msg_receive()概述:任务调用这个函数來接收消息。消息处理完毕后,发送消息的任务必须调用osal_msg_deallocate()收冋缓冲区。原型:byte*osal_msg_receive(bytetask_id)参数:task_id:消息发送者的任务标识返冋值:指向消息所存放的缓冲区指针,如果没有收到消息将返冋NULL。4•。在这个API屮的两数可以用来为任务设置事件,立刻通知任务有事件被设置。osal_set_e\ent()概述:函数用來设置一个任务的事件标志原型:byteosal_set_event(bytetask_id,UINT16event_flag)参数:task_id:任务标识event_flag:2个字节,每个位特指一个事件。只有一个系统事件,其他事件在接收任务中泄义。返冋值:(Z-SUick)以及应用层任务使用肚时器。函数提供了出动和停止肚时器的功能,沱时器最小增量为IMS。osal_start_timer()概述:启动泄时器函数。当定时器到点时,thegiveneventbitwillbeseto事件将在任务中设置,要指明具体任务,调用osal_start_timerEx()原型:byteosal_starmer(UINTI6event_id,UINT16timeout_value);参数:event_id:,事件将通知任务。timeout_value:定时值(ms)返冋值:ESSTimer 成功开启NO_TIMER_AVAILABLE 无法开启osal_start_timerEx()概述:功能与osal_start_timer()相近,这个函数允许调用者为另一个任务启动定时器byteosal_start_timerEx(bytetaskID,UINT16evenUINT16参数:略返冋值:ESSTimer 成功开启NO_TIMER_AVAILABLE 无法开启osal_stop_timer()概述:,停止外部事件调用osal_stop_timerEx()原型:byteosal_stop_timer(UINT16event_id);参数::将要结束的目标事件(该事件是出动肚时器的事件)返冋值:ESSTimer成功停止INVALID_EVENT_ID无效事件osal_stop_timerEx()概述:结束外部事件的定时器原型:byteosal_smerEx(bytetask_idfUINT16event_id);参数:ESSTimer 成功停止INVALID_EVENT_ID 无效事件osal_GetSystemClock()概述:读取系统时间uint32osal_GetSystemC丄ock(void);参数:无返冋值: