嵌入式实时操作系统课件.pptVIP

  • 1
  • 0
  • 约5.9万字
  • 约 265页
  • 2023-04-01 发布于山东
  • 举报
* 创建一个消息队列 l OSQCreate() ? OS_EVENT *OSQCreate (void **start, INT16U size); ? start:指针数组,用来存放各个消息的地址 ? size:数组的大小(即消息队列的元素个数) l 执行步骤 ? 从空闲事件控制块链表中取得一个ECB; ? 从空闲队列控制块列表中取出一个队列控制块 ,并对其进行初始化; ? 初始化ECB的内容(事件类型、等待任务列表) ,并将OSEventPtr指针指向队列控制块。 * * 队列控制块与事件控制块 * * 请求消息队列中的消息 l OSQPend():等待一个消息队列中的消息 ? void *OSQPend (OS_EVENT *pevent, INT16U timeout, INT8U *err); ? 如果消息队列中有至少一条消息,返回消息的 地址; ? 如果没有消息,相应任务进入等待状态。 l OSQAccept():无等待地请求消息队列中的消息 ? void *OSQAccept(OS_EVENT *pevent); ? 如果消息队列中有消息,返回消息的地址; ? 如果消息队列中没有消息,返回NULL。 * * 向消息队列发送一个消息 l l OSQPost():以FIFO方式

文档评论(0)

1亿VIP精品文档

相关文档