- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话: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浙江嘉兴市公务用车服务中心招聘劳务派遣制岗位合同工驾驶员参考题库带答案解析.docx
- 2025江西中医药大学实验室服务中心招聘科研助理2人历年真题汇编及答案解析(夺冠).docx
- 你好2026年终总结通用PPT模板.pptx
- 红色励志风年终总结通用PPT模板.pptx
- 2026拼搏年终总结PPT模板.pptx
- 沪科版数学七年级上册 4.4 角 (共25张).pptx
- 初中数学人教版七年级上册《1.4.1有理数的乘法(1)》课件.pptx
- 初中数学人教版七年级上册《1.1 正数和负数》课件(1).pptx
- 初中数学人教版七年级上册《1.5.1乘方(1)》课件.pptx
- 初中数学人教版七年级上册《2.2整式的加减(1)》课件.pptx
最近下载
- 《平凡的世界》中的孙少平、孙少安形象比较分析 毕业论文.doc VIP
- 2017-2022年国家现代农业产业园统计分析.pdf VIP
- 年级主任谈年级管理课件.pptx VIP
- 最全的物业保洁作业指导书(通用版).docx
- 电大一网一《网络存储技术》形考任务二:NAS服务器磁盘配额形考任务二:NAS服务器磁盘配额.docx VIP
- Unit+4+Information+Technology+大单元教学设计-2024-2025学年高中英语北师大版(2019)必修第二册.docx
- 机械制图习题集-第七版-课后答案.ppt VIP
- 植保无人机安全操作规范.pptx VIP
- 2025年招标师政府采购与工程招标履约保证金在合同管理中的作用对比专题试卷及解析.pdf VIP
- DB34_T3068-2017_牡丹皮初加工与贮藏技术规程_安徽省.pdf VIP
原创力文档


文档评论(0)