网站大量收购闲置独家精品文档,联系QQ:2885784924

《嵌入式应用技术》课件——第8讲 UCOSIII消息传递.pdf

《嵌入式应用技术》课件——第8讲 UCOSIII消息传递.pdf

此“教育”领域文档为创作者个人分享资料,不作为权威性指导和指引,仅供参考
  1. 1、本文档共11页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

《嵌入式技术应用》课程

uCOSIII操作系统学习

适用平台:STM32F10x

主讲教师:杜锋

UCOSIII消息传递

目录

Contents

1

UCOSIII任务间通信

2

UCOSIII消息队列

3知识目标

UCOSIII任务内建消息队列

了解知道

掌握了解

掌握理解

掌握

1.UCOSIII任务间通信

任务间通信

◆消息:一个任务或者中断服务程序有时候需要和另一个任务交流信息,这个就是消息

◆消息传递的过程就叫做任务间通信

◆任务间的消息传递可以通过2种途径:

●一是通过全局变量

●二是通过发布消息

◆使用全局变量的时候每个任务或者中断服务程序都必须保证其对全局变量的独占访问

◆消息也可以通过消息队列作为中介发布给任务

1.UCOSIII任务间通信

消息说明

◆消息包含一下几个部分:指向数据的指针,数据的长度和记录消息发布时刻的时间戳,指针指

向的可以是一块数据区域或者甚至是一个函数。

◆消息的内容必须一直保持可见性,可见性是指代表消息的变量必须在接收消息的任务代码

范围内有效。

◆这是因为发布的数据采用的是指针传递,也就是引用传递,并不是值传递。也就是说,发布的

消息本身并不产生拷贝,我们可以使用动态内存分配的方式来给消息分配一个内存块,或者,也

可以传递一个指向全局变量、全局数据结构、全局数组或者函数的指针。

2.UCOSIII消息队列

消息队列

消息队列是UCOSIII中的一个内核对象,为结构体OS_Q。

structos_q{

OS_OBJ_TYPEType;

CPU_CHAR*NamePtr;

OS_PEND_LISTPendList;

#ifOS_CFG_DBG_EN0u

OS_Q*DbgPrevPtr;

OS_Q*DbgNextPtr;

CPU_CHAR*DbgNamePtr;

#endif

OS_MSG_QMsgQ//消息列表

};

2.UCOSIII消息队列

OS_MSG_Q也是一个结构体,如下:

structos_msg_q{

OS_MSG*InPtr;

OS_MSG*OutPtr;

OS_MSG_QTYNbrEntriesSize;

OS_MSG_QTYNbrE

您可能关注的文档

文档评论(0)

青柠职教 + 关注
实名认证
服务提供商

从业10年,专注职业教育专业建设,实训室建设等。

1亿VIP精品文档

相关文档