欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    嵌入式实时操作系统μCOS原理与实践实验教程.ppt

    • 资源ID:6414937       资源大小:541KB        全文页数:58页
    • 资源格式: PPT        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    嵌入式实时操作系统μCOS原理与实践实验教程.ppt

    嵌入式实时操作系统C/OS原理与实践实验教程,在网上观看视频卢有亮博客:亮点嵌入式提供COS硬件平台:图书和硬件平台购买地址,:,2013年补充说明,2012年本书出版后,受到读者的厚爱,不胜感谢。但是自己还是有很多做的不完美的地方,抱歉!不少朋友反映该书讲解代码比较详细,但是移植部分不太好,没有硬件平台。而机械工业出版社又邀请本人写一本新书,因此,本人根据现在搞STM32的比较多的情况,做了这么一个平台,正在写基于STM32及C/OS 的嵌入式系统设计,希望能对大家有用。这个平台的代码我都在博客和爱板http:/(左上图可链接)发布,是开源的,起名叫亮点嵌入式!鄙人做的STM32开源板在淘宝网http:/(右下图可链接)。这本书我也在淘宝卖,由当当直接发货。有什么问题都可以去博客或爱板留言交流,必复!我还承诺,2013年免费提供信号量和消息部分的视频!,实验前言,实验参考书:嵌入式实时操作系统C/OS原理与实践2012 电子工业出版社实验前需学习对应部分实验中对得到的结论需进行分析并交报告,做到知其然而知其所以然对VC开发环境部熟悉的同学在实验中逐步掌握所有资料请在博客下载,实验列表,第1学时跑第一个任务第2学时调试模式跑第一个任务第3学时任务的创建第4学时操作系统初始化第5学时让任务阻塞式延时第6学时两个任务交替运行第7学时理解任务堆栈和任务切换第8学时理解多任务的启动第9学时任务的挂起和恢复第10学时 信号量管理实验第11学时 互斥信号量管理实验第12学时 事件标志组管理实验第13学时消息邮箱管理实验第14学时 消息队列管理实验第15学时 内存管理实验,第1学时跑第一个任务,本实验的目的是了解嵌入式实时操作系统COS代码结构,将其跑起来得到直观的认识。实验步骤1.将包含全部实验代码的压缩文件解压缩2.将VC6开发环境打开3.打开ucosexperiment目录下的ucos_vc.dsw 4.用全部编译(rebuild all)编译程序,运行程序,根据窗口提示输出,获得感性认识!5.根据教材P246页图7.1及和的内容,写出文件目录结构的说明,说明嵌入式实时操作系统COS都由哪些部分组成,第1学时跑第一个任务,6.VC环境下,在工程上点鼠标右键,查看工程的设计7.打开main.c,编辑使#define Experiment 1,使用REBUILD ALL 进行编译,找到可执行文件的输出目录,记录下来8.使用菜单或快捷按钮再次执行编译好的程序。查看运行结果并记录,查看main.c及usercode.c,分析main.c及usercode.c代码。9.说明任务堆栈的定义位置,任务在什么时候被创建,任务在什么时候获得运行。10.自己修改代码,减少延时时间,或将每次加1改为其他算法,查看效果!,补充,各个例子的运行结果展示1,准备工作,阅读嵌入式实时操作系统C/OS原理与实践P24-40 2.1任务管理的重要数据结构,为以后的实验做准备,第2学时 调试模式跑第一个任务,本实验的目的在于学会使用VC的调试模式运行和调试操作系统。步骤1.在上次实验的基础上不改动代码,打开工程2.在usercode.c中的printf(“welcome to embeded systemn”);处设置断点。,第2学时 调试模式跑第一个任务,3.如果程序中有其他断点,去掉4.在usercode.c中的printf(“welcome to embeded systemn”);处设置断点。(设置断点,在代码处按右键,insert breakpoint)5.按F5以调试模式运行代码6.如果有其他断点,去掉,再按F57.当到设定的断点处停下时,将VC窗口缩小,调整输出的窗口使两个窗口同时显示在屏幕上8.按F10单步执行,查看输出9.发现在延时代码循环中无法调试,在printf(“j=%dn”,j+);加断点,按F5,第2学时 调试模式跑第一个任务,10.在观察窗口watch window输入j,连续按F5查看j的变化和屏幕的输出。11.按SHIFT+F5或使用菜单结束调试,记录12说明watch window的作用,尝试在watch window中输入操作系统的重要全局变量,P247表7.1,观察他们的值,下次实验的准备工作,阅读嵌入式实时操作系统C/OS原理与实践P41-43任务控制块的初始化,P51-54任务的创建,第3学时 任务的创建,掌握任务创建的过程步骤1.去掉前面的断点,找到main.c中OSTaskCreate(FirstTask,0,函数,设置断点,并按F5调试运行,运行代码的时候输入1,在运行到断点时,按F11追进函数内部,再按F10单步运行,与书上51页进行比较。2。画出该函数运行完成后的就绪表和就绪组,任务控制块空闲链表和任务链表。,第3学时任务创建的过程,3.记录所有过程,说明OSTaskCreate都做了哪些工作,任务FirstTask的任务控制块实体是什么,在创建结束时其任务控制块的内容又是什么。记录下来。4.试着自己编写一个带输出的简单的函数,然后使用OSTaskCreate创建这个函数,修改MAIN.c,在输入1的时候创建这个函数。自己编写的函数保存在usercode.c中,并注意在usercode.h中添加函数声明。修改完成后重新编译执行。,下次实验的准备工作,阅读嵌入式实时操作系统C/OS原理与实践P44-50操作系统的初始化,第4学时 操作系统初始化,步骤1.找到操作系统初始化函数OSInit,在其中设置断点,并按F5调试运行,观察OSInit执行的过程,与书上44页2.3操作系统的初始化进行比较,记录OSINIT都做了什么工作2。画出OSINIT后的就绪表和就绪组,任务控制块空闲链表和任务链表(参考书上2.1,2.2,2.3)3.记录所有过程,说明OSINIT之后系统的状况,下次实验的准备工作,阅读嵌入式实时操作系统C/OS原理与实践P95-97任务延时函数OSTimeDly,第5学时 让任务阻塞式延时,掌握操作系统的初始化过程步骤1.不改动代码,输入参数1,全速运行,打开WINDOWS任务管理器,查看,如图,注意,Os_cpu.c中,确定void OSTaskIdleHook(void)Sleep(1);要改成这样,否则空闲任务也在不同的运行,看不到系统利用率的变化情况。加上这一句,将空闲任务的系统利用率降低,第5学时 让任务阻塞式延时,2.修改代码,使用阻塞式延时,查看书上95页,修改延时代码,第5学时 让任务阻塞式延时,3.重新编译,运行。使用任务管理器查看系统利用率。,第5学时 让任务阻塞式延时,4.记录实验过程,说明发生这种变化的原理。下次实验前准备:继续看2.1,加深对操作系统采用的重要数据结构的理解,第6学时两个任务交替运行,1.编译运行代码,输入选项2运行程序2.运行查看结果,第6学时两个任务交替运行,3.查看代码,说明为什么得到这样的运行结果4.修改usercode.c中E2_task2函数,要求其输出值增长速度只有E2_task1的1/2,修改后重新编译运行5.改变任务的优先级,让E2_task1的优先级为6,E2_task2的优先级为5,查看运行结果,说明输出的不同之处,说明原因,补充,各个例子的运行结果展示2,下次实验的准备,预习嵌入式实时操作系统C/OS原理与实践P73-80任务的调度为下次试验做准备,第7学时理解任务堆栈和任务切换,1.使用原始代码2.查看在main.c,说明两个用户任务的堆栈都是什么,堆栈的地址是怎么传递给任务创建函数的。3.在OS_Sched函数中设置断点。跟踪调试,说明OS_Sched实现了哪些功能,画出流程图4.继续调试OS_TASK_SW,根据书章2.1中对堆栈的描述,论述压栈和退栈的处理过程。,下次实验的准备,预习嵌入式实时操作系统C/OS原理与实践P83-84多任务的启动为下次试验做准备,第8学时理解多任务的启动,1.使用原始代码2.查看在main.c,在OSStart();处设置断点。3.调试模式运行,跟踪进OSStart,然后单步运行。参考P83-85分析代码。5.画出OSStart流程图4.说明OSStart的功能,说明多任务启动的标志是什么,下次实验的准备工作,阅读嵌入式实时操作系统C/OS原理与实践P67-72任务的挂起和恢复,第9学时任务的挂起和恢复,1.编译运行代码,输入选项3继续运行程序2.运行查看结果,第9学时任务的挂起和恢复,3.查看代码,说明为什么得到这样的运行结果4.对任务代码进行修改,得到不同的结果5.改变任务的优先级,查看运行结果,说明输出的不同之处,说明原因,补充,各个例子的运行结果展示3,下次实验的准备工作,阅读嵌入式实时操作系统C/OS原理与实践P102-129事件管理的重要数据结构,事件管理程序,信号量管理,第10学时 信号量管理实验,1.例子程序说明见嵌入式实时操作系统C/OS原理与实践 P129,运行结果见P133图4.9 打开原始工程运行代码,输入选项4继续运行程序2.运行查看结果3.说明使用信号量实现的功能,为什么能实现这样的功能,都使用了哪些数据结构。,第10学时 信号量管理实验,4.实现P190,习题6(在usercode.c中编写三个函数,并修改usercode.h中的声明,修改main.c,重新编译查看效果),补充,各个例子的运行结果展示4,下次实验的准备工作,阅读嵌入式实时操作系统C/OS原理与实践P134-158 4.4互斥信号量,第11学时 互斥信号量管理实验,1.例子程序说明见嵌入式实时操作系统C/OS原理与实践 P154,运行结果见P159图4.142.程序运行后,输入5选择例子程序53.重新编译运行,查看结果4.说明使用互斥信号量实现的功能,为什么能实现这样的功能,都使用了哪些数据结构。5.说明为什么解决了优先级反转的问题,第11学时 互斥信号量管理实验,5.自己设计一个使用时间标志组的例子,编程实现并运行,记录结果。,补充,各个例子的运行结果展示5,下次实验的准备工作,阅读嵌入式实时操作系统C/OS原理与实践P159-189 4.5事件标志组,第12学时 事件标志组管理实验,1.例子程序说明见嵌入式实时操作系统C/OS原理与实践 P184,运行结果见P159图4.202.程序运行后,输入6选择例子程序63.重新编译运行,查看结果4.说明使用事件标志组实现的功能,为什么能实现这样的功能,都使用了哪些数据结构。,第12学时 事件标志组管理实验,5.实现P190,习题7(在usercode.c中编写三个函数,并修改usercode.h中的声明,修改main.c,重新编译查看效果),补充,各个例子的运行结果展示6,下次实验的准备工作,阅读嵌入式实时操作系统C/OS原理与实践P191-210 5.1消息邮箱,第13学时 消息邮箱管理实验,1.例子程序说明见嵌入式实时操作系统C/OS原理与实践 P208,运行结果见P210图5.72.程序运行后,输入7选择例子程序73.重新编译运行,查看结果4.说明使用消息邮箱实现的功能,为什么能实现这样的功能,都使用了哪些数据结构。,第13学时 消息邮箱管理实验,5.实现P230,习题7(在usercode.c中编写三个函数,并修改usercode.h中的声明,修改main.c,重新编译查看效果),补充,各个例子的运行结果展示7,下次实验的准备工作,阅读嵌入式实时操作系统C/OS原理与实践P2111-229 5.2消息队列,第14学时 消息队列管理实验,1.例子程序说明见嵌入式实时操作系统C/OS原理与实践 P226,运行结果见P229图5.122.程序运行后,输入8选择例子程序83.重新编译运行,查看结果4.说明使用消息队列实现的功能,为什么能实现这样的功能,都使用了哪些数据结构。,第14次实验 消息队列管理实验,5.实现P230,习题8(在usercode.c中编写三个函数,并修改usercode.h中的声明,修改main.c,重新编译查看效果),补充,各个例子的运行结果展示8,下次实验的准备工作,阅读嵌入式实时操作系统C/OS原理与实践P231-244 内存管理,第15学时 内存管理实验,1.例子程序说明见嵌入式实时操作系统C/OS原理与实践 P241,运行结果见P244图6.32.程序运行后,输入9选择例子程序94.说明使用消息队列实现的功能,为什么能实现这样的功能,都使用了哪些数据结构。,第15学时 内存管理实验,5.实现P244,上机习题8(在usercode.c中编写三个函数,并修改usercode.h中的声明,修改main.c,重新编译查看效果),补充,各个例子的运行结果展示9,谢谢!,

    注意事项

    本文(嵌入式实时操作系统μCOS原理与实践实验教程.ppt)为本站会员(小飞机)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开