- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第6章嵌入式 uCOS
6.1?C/OS-II系统的特点及结构 μC/OS-Ⅱ是一个免费的、源代码公开的实时嵌入式内核,其内核提供了实时系统所需要的一些基本功能。其中包含全部功能的核心部分代码占用8.3 KB,全部的源代码约5500行,非常适合初学者进行学习分析。而且由于μC/OS-Ⅱ是可裁剪的,所以用户系统中实际的代码最少可达2.7 KB。由于μC/OS-Ⅱ的开放源代码特性,还使用户可针对自己的硬件优化代码,获得更好的性能。 μC/OS-Ⅱ是在PC机上开发的,C编辑器使用的是Borland C/C++3.1版。从早期使用的μCOS到现在的μC/OS-Ⅱ V2.52版,应用的实例也进一步说明了该内核的实用性和可靠性。 1.有源代码,μC/OS-Ⅱ源代码是开放的,用户可登录μC/OS-Ⅱ的网站(www.uCOS-II.com)下载针对不同微处理器的移植代码。 2.可移植(Portable),μC/OS-Ⅱ的源代码中,除了与微处理器硬件相关的部分是使用汇编语言编写的,其绝大部分是使用移植性很强的ANSIC来编写的。 3.可固化和可裁剪,μC/OS-Ⅱ是为嵌入式应用而设计的操作系统,只要具备有合适的软、硬件工具,就可将μC/OS-Ⅱ嵌入到产品中去。 。 1. 任务:一个任务(也称作一个线程)是一个简单的程序,可以认为CPU完全只属该程序自己应用。在μC/OS-Ⅱ中,一个任务通常是一个无限的循环。看起来像其他c语言的函数一样,有函数返回类型,有形式参数变量,但任务是决不会返回的。返回参数必须定义成void,例如: Void YourTask(void *pdata) { for(;;){ /*用户代码*/ /*调用μC/OS-II的某种系统服务:*/ /*用户代码*/}} 2 任务调度 μC/OS-II是一个实时多任务的操作系统,多任务的运行的实现实际上是靠处理器在许多任务之间转换、调度。处理器只有一个,轮番服务于一系列任务中的某一个。多任务运行很像前后台系统,但后台任务有多个。多任务运行使处理器的利用率得到最大的发挥,并使应用程序模块化。在实时应用中,多任务化的最大特点是,开发人员可以将很复杂的应用程序层次化。 3可剥夺内核 μC/OS-Ⅱ以及多数商业上销售的实时内核都是可剥夺型内核。如果是中断服务子程序使一个高优先级的任务进入就绪态,使用可剥夺型内核使得任务级响应时间得以最优化。 4任务间通讯 因为μC/OS-Ⅱ是一个典型的实时多任务操作系统,在进行应用开发的过程中有时很需要任务间的或中断服务与任务间的通讯。这种信息传递称为任务间的通讯,任务间信息的传递有通过全程变量和发消息给另一个任务两个途径。 1.任务管理:μC/OS-Ⅱ可以管理多达64个任务,并从中保留了四个最高优先级和四个最低优先级的任务供自己使用,所以用户可以使用的只有56个任务。任务的优先级越高,反映优先级的值则越低。在最新的μC/OS-Ⅱ版本中,任务的优先级数也可作为任务的标识符使用。 任务管理主要通过以下4个函数来实现: ① OSTaskCreate()和带有扩展附加功能的OSTaskCreateExt()函数,用于建立一个新的任务。 ② OSTaskSuspend()函数,来挂起自身或者处空闲任务之外的其他任务。 ③ OSTaskDel()函数,删除一个任务,就是把该任务置于睡眠状态,任务的代码不再被uC/OS-II使用,而并不是说任务的代码被删除了。 ④ OSTaskChangePrio函数,在任务运行过程中更改任务的优先级。 3.时间管理:与大部分内核一样,μC/OS-Ⅱ要求提供定时中断,以实现延时与超时控制等功能。这个定时中断也可以被叫作为时钟节拍。下面再介绍几个可以处理时间问题的函数。 ① 任务延时函数OSTimeDIy() ② 恢复延时的任务函数OSTimeDlyResume() ③ 按时、分、秒、毫秒延时函数OSTimeDlyHMSM() ④ 系统时间函数OSTimeGet()和OSTimeSet() 4.μC/OS-II操作系统的文件系统 μC/OS-II操作系统的文件体系结构如图6-2所示,其核心主要可分为以下三个部分: ① 应用软件层,指的是基于μC/OS-II的应用程序代码。 ② 内核的核心代码层,主要包括8个源代码文件。 ③ 系统设置与移植层。系统设置部分的代码由两个头文件OS_CFG.H和INCLUDES.H组成。 6.1.4 μC/OS-II 操作系统的初始化 在调用μC
您可能关注的文档
最近下载
- 2025-2026人教部编版三年级上册语文教学计划.docx VIP
- 施工现场车辆安全教育.pptx VIP
- 给排水系统学习培训ppt课件.pptx VIP
- 2025北京市十八里店乡人民政府城市协管员招聘21人笔试参考题库附答案解析.docx VIP
- 输血科管理制度、程序性文件、SOP文件.docx VIP
- 05J909_工程做法_建筑专业图集.docx VIP
- 2021海绵城市设施通用图集.docx VIP
- 【统编版】高中语文必修上册第一单元《3百合花》优质课(29张PPT)课件.pptx VIP
- 钢丝帘线压延机生产线(中文参考).doc VIP
- 2025年福建省福州市辅警协警笔试笔试预测试题(含答案).docx VIP
文档评论(0)