- 1、本文档共108页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
任务的同步与通信.ppt
嵌入式实时操作系统μC/OS-II ——任务的同步与通信 信号量 信号量 信号量 信号量 信号量 消息邮箱——举例1 任务间数据通信 void SendDly (void) { pdata = pdata; while (1) { OSMboxPost(mbox, dly); OSTimeDly(1000); dly = dly + 20; if (dly = 1000) { dly = 20; } } } 发送延时参数消息 防止编译器报警 延时参数大于1000,返回到20 发送延时参数任务SendDly的代码如下。 延时1000个节拍 每次延时参数加20 消息邮箱——举例1 任务间数据通信 LED任务的代码如下。 void TaskLED (void *pdata) { …… mbox = OSMboxCreate(NULL); while (1) { pd = (INT16U *)OSMboxPend(mbox, 0, err); P0.1=0; OSTimeDly(*pd); P0.1=1; OSTimeDly(10); } } 初始化工作 点亮LED 以消息内容为延时参数 熄灭LED 延时10clk 创建消息邮箱 等待消息 消息邮箱——举例2 任务间同步 为了说明如何使用邮箱来实现任务间的同步,我们设计一个系统,按键一按下,LED按照一定的频率闪耀一定的时间,蜂鸣器开启一定的时间。假设TaskLED为高优先级的任务,三个任务的处理流程如下。 消息邮箱——举例2 任务间同步 TaskKEY任务主要代码如下。 void TaskKEY (void *pdata) { …… while (1) { while (无按键) { OSTimeDly(1); } OSMboxPostOpt (mbox, dly, OS_POST_OPT_BROADCAST); while (按键未释放) { OSTimeDly(1); } } } 延时1个节拍,用于任务切换 延时1个节拍,用于任务切换 等待按健按下 等待按健释放 以广播形式发送消息,所有等待此邮箱的任务均获得消息 初始化代码 消息邮箱——举例2 任务间同步 LED任务主要代码如下。 void TaskLED (void *pdata) { …… mbox = OSMboxCreate(NULL); while (1) { pd = (INT16U *)OSMboxPend(mbox, 0, err); for (i = 0; i 10; i++) { P0.1=0; OSTimeDly(*pd); P0.1=1; OSTimeDly(*pd); } } } 初始化工作 点亮LED 熄灭LED 延时相应的时间 创建消息邮箱 等待消息 延时相应的时间 循环10次 消息邮箱——举例2 任务间同步 Beep任务主要代码如下。 void TaskBeep (void *pdata) { …… while (1) { pd = (INT16U *)OSMboxPend(mbox, 0, err); //开启蜂鸣器 ; OSTimeDly(*pd); //关闭蜂鸣器 ; OSTimeDly(50); } } 初始化工作 开启蜂鸣器 关闭蜂鸣器 延时50clk 等待消息 延时相应的时间 程序设计 设计一个应用程序,该程序有两个任务SendTask和ReceiveTask任务。任务SendTask通过邮箱Str_Box将字母“A~Z”发送给ReceiveTask任务。ReceiveTask任务接收并显示所收到的字母。 消息队列 互斥信号量 消息邮箱 消息队列 消息队列就象一个类似于缓冲区的对象,通过
您可能关注的文档
- 二战胜利的影响.ppt
- 二物质的根本属性和.ppt
- 二社会生产力与世界经济.ppt
- 二语用含义.ppt
- 互联网与视觉传达的关系.pdf
- 于建设学术交流的必要性.ppt
- 互联网时代何蕊.doc
- 五四精神在当代的传承.doc
- 交大网络管理会计第二次作业.doc
- 产学研合作中利益分配方式探析.pdf
- 2025年江苏省常州市武进区文化服务中心招考工作人员考前自测高频考点模拟试题及答案详解1套.docx
- 2025年江西省上饶市横峰县派出所招聘协(辅)警6人考前自测高频考点模拟试题及答案详解1套.docx
- 2025年江苏省连云港市新浦区事业单位招聘考前自测高频考点模拟试题附答案详解.docx
- 2025年江苏省盐城市建湖县发展和财政局招聘编外人员考前自测高频考点模拟试题含答案详解.docx
- 2025年江苏省宿迁市泗阳县事业单位招聘考前自测高频考点模拟试题及答案详解1套.docx
- 2025年江西省吉安市吉水县发展和财政局招聘编外人员考前自测高频考点模拟试题含答案详解.docx
- 2025年江西省九江市永修县派出所招聘协(辅)警6人考前自测高频考点模拟试题附答案详解.docx
- 2025年江西省南昌市东湖区自然资源局招聘考前自测高频考点模拟试题含答案详解.docx
- 2025年江苏省连云港市连云区供销合作社招聘2人考前自测高频考点模拟试题附答案详解.docx
- 2025年江苏省无锡市惠山区发展和财政局招聘编外人员考前自测高频考点模拟试题含答案详解.docx
文档评论(0)