


版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、分 类:软件工程设计使用者:E-fanciers分 类:软件工程设计使用者:E-fanciers概要设计说明书Version:1.0项 目 承 担 队伍:烟台大学计算机学院撰 写 签名: 孝瑞完成日期: 2022-7-16本文档使用小组:E-fanciers小组签名: 孝瑞评审日期: 2022-8-19 4目 录一、引言.41.1编写目的 .41.2工程背景 .41.3定义.41.4参考资料:.5二、任务概述.52.1目标.52.2运行环境 .62.3需求概述62.4条件与限制.6三、总体设计.63.1处理流程 .63.2总体构造和模块外部设计.63.3.功能安排7四、接口设计.74.1外部接
2、口 .74.2内部接口 .7五、数据构造设计.8规律构造设计8物理构造设计85.2物理构造设计8六、运行设计.8运行模块的组合8运行把握8运行时间8七、出错处理设计.9八、安全保密设计.9九、维护设计.9概要设计说明书ArchitecturalDesignSpecification一引言编写目的MyRTOSE-fanciersucos-ii开发的嵌入式实时操作ARMLPC2138+JLINK调试头,RealView 公司的MDK.MyRTOS 的设计承受 ucos-ii的设计思想,并在其根底上进展了扩展和创.尤其设计解决了优先级反转问题和同级时间片轮询调度机制.工程背景嵌入式实时操作系统是 0
3、9 年山东省齐鲁软件大赛增的题目,此题目迎合了目前格外热门的嵌入式产业的人才需求,让学生了解嵌入式开发的方方面面.并渐渐进入嵌入式开发 的领域.E-fanciers 小组经过分析本次大赛的题目,最终打算选择这个具有挑战性的题目.后来经过学习和陈教师的指导,生疏到选择此题目的必要性:目前市场上有很多嵌入式产品,嵌入式实时操作系统也是层出不穷,如何开发出一个功能完善、而又高效的嵌入式实时操作系统成为一大热点课题.定义嵌入式实时操作系统嵌入式实时操作系统Embedded Real Time OS,简称 RTOS是嵌入式系统应用开发的核心软件,是嵌入式系统的灵魂,就像我们日常所用计算机桌面系统中,微软
4、公司的Windows 操作系统一样重要。市场上有很多有名的商业化嵌入式操作系统,如 VxWorks、Pam OS、Windows CE、嵌入式 Linux和C/OS-II RTOS。临界区和其它内核一样,MyRtos 为了处理临界段代码需要关中断,处理完毕后再开中断。这使得 MyRtos 能够避开同时有其它任务或中断效劳进入临界段代码。关中断的时间是实时内核开发商应供给的最重要的指标之一,由于这个指标影响用户系统对实时大事的响应性。MyRtos 努力使关中断时间降至最短,但就使用 MyRtos 而言,关中断的时间很大程度上取决于微处理器的架构以及编译器所生成的代码质量。任务一个任务通常是一个无
5、限的循环。一个任务看起来像其它 C 的函数一样,有函数返回类型,有形式参数变量,返回任务编号.任务调度确定哪个任务优先级最高,下面该哪个任务运行了的工作是由调度器Scheduer完成的。空闲任务系统的空闲任务 OS_TaskIdle,MyRtos 总是建立一个空闲任务,这个任务在没有其它任务进入就绪态时投入运行。这个空闲任务永久设为最低优先级,即 OS_LOWEST_PRI0。OS_TaskIdle 32 OSIdeCtr 的计数器1,留意空闲任务不行能被应用软件删除。属于系统效劳.统计任务统计任务用来依据计数器的值计算cpu 利用率,属于系统效劳.任务治理对任务进展的操作,包括任务创立、删除
6、、堵塞睡眠、挂起、恢复等操作。属于内核部分。任务堆栈每个任务都有自己的堆栈空间。堆栈必需声明为OS_STK 类型,并且由连续的内存空(在编译的时候安排)也可以动态地安排堆栈空间(在运行的时候安排)。优先级在用户建立任务的时候会安排给任务一个优先级。优先级打算了任务的运行次序和调度次序。互斥信号量包括:创立互斥信号量、等待信号量、发送信号量.Shell4参考资料列出这些资料的作者、标题、编号、发表日期、出版单位或资料来源,可包括:二任务概述目标:实现大赛要求的根本功能,并着手实现一些扩展功能运行环境试验板:lpc2138调试头4参考资料列出这些资料的作者、标题、编号、发表日期、出版单位或资料来源
7、,可包括:二任务概述目标:实现大赛要求的根本功能,并着手实现一些扩展功能运行环境试验板:lpc2138调试头:JLINK 开发环境:RealViewMDk3.5编号名称作者/来源1工程开发打算;E-fanciers2需求规格说明书;E-fanciers3测试打算初稿;E-fanciers4用户操作手册初稿;E-fanciers5ucos-ii中文版6自己动手做操作系统需求概述本赛题要求完成一个小型微内核嵌入式实时操作系统的设计和实现。 需提交实际可运行代码,并在参考硬件平台上演示功能。软件实现过程应遵循灵敏性方法的指导,留意代码和文档的质量和版本把握,编写测试用例验证软件功能和重构代码。条件与
8、限制参考硬件平台为:周立功EasyArm2138。实际上,也可用其他LPC 系列CPU 和试验CPURAM、FlashLPC2138LPC2138uc/OSuC/OSuC/OS 的代码,但最好自己实现,只是接口兼容。操作系统的调用承受函数调用方式,不用中断陷入方式;将各任务栈独立,作为任务的私有存储区;2550。10tick)。9600,812550,255。空闲任务优先级255。操作系统的应用接口的应遵循题目的标准,见后面的描述。对于代码移植性验证,参赛者可自行选择硬件平台。该硬件平台与 LPC2138ARM三总体设计1三总体设计1处理流程uc/OS标准。操作系统的调用承受函数调用方式,不用
9、中断陷入方式,同时支持任务数不小于255个。空闲任务占用编号 0。同级任务的调度承受时间片轮询的方式,不同优先级任务承受按优先计调度的方式,准时对恳求的任务进展处理。2总体构造和模块外部设计任务治理模块对任务进展的操作,包括任务创立、删除、堵塞睡眠、挂起、恢复等操作。属于内核部分。任务堆栈模块每个任务都有自己的堆栈空间。堆栈必需声明为OS_STK 类型,并且由连续的内存空(在编译的时候安排)也可以动态地安排堆栈空间(在运行的时候安排)。优先级模块在用户建立任务的时候会安排给任务一个优先级。优先级打算了任务的运行次序和调度次序。互斥信号量模块包括:创立互斥信号量、等待信号量、发送信号量.Shel
10、l3功能安排说明各项功能与程序构造的关系。各个模块既是相互独立的又是相互关联的,各个模块的相互调用协作共同使得系统得以稳定的工作。四接口设计1外部接口uc/OS3功能安排说明各项功能与程序构造的关系。各个模块既是相互独立的又是相互关联的,各个模块的相互调用协作共同使得系统得以稳定的工作。四接口设计1外部接口uc/OSOS_CPU.H, OS_CPU_A.C, OS_CPU_A.S2内部接口内部各模块间设计简洁访问的接口。/*初始化操作系统,建立多任务环境. 该函数调用后,其他系统调用则可用*/*0:/*初始化操作系统,建立多任务环境. 该函数调用后,其他系统调用则可用*/*0:-1:*/int
11、 taskInit(void);/*创立一个任务*/*tid, 0: 成功, 其他: 失败.*/*name: 任务名称, entryPtr : 任务函数入口, stack_size: 任务栈大小, priority: 任务优先级*/int taskCreate(char *name, void *entryPtr, int stack_size, int priority);/*启动一个任务, 让 taskCreat 创立的任务参与调度*/*tid: 任务编号, 由 taskCreate*/int taskStart(unsigned char tid);/*猎取和设置任务优先级, 用于动态调
12、整*/int taskPriorityGet(unsigned char tid);int taskPrioritySet(unsigned char tid, int newPriority);/*将任务挂起, 该任务退出调度*/int taskSuspend(unsigned char tid);/*将任务删除 该任务退出调度且回收任务安排的资源*/int taskDelete(unsigned char tid);/*互斥信号量创立, 返回信号量标识 sid, 0: 失败*/int semCreate(void);/*互斥信号量猎取和释放*/int semTake(int sid);in
13、tsemGive(intsid);tick,10*/int taskSleep(int ticks);五数据构造设计规律构造设计任务状态任务共有五种状态,在任一给定的时刻,任务的状态肯定是在这五种状态之一.任务把握块CPUCPURAM被初始化了物理构造设计硬件抽象层的建立,ucos-ii的标准.数据构造与程序的关系就绪队列使用链表数据构造,查找最高优先级任务时遍历链表查询.六运行设计运行模块的组合各模块相互协作共同完成对任务的实时调度。运行把握通过 Shell 来把握任务的运行,可以对任务进展挂起、恢复、运行、删除等操作。3运行时间通过以时钟心跳 tick 按优先级调度,完成对任务的实时调度。七出错处理设计出错输出信息宏定义相应的错误编
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年社会养老保障服务合作协议书
- 心理健康课件教学下载
- 空调知识课件大全
- 2025年配网自动化监控项目发展计划
- 二零二五年度农产品加工购销合同7版
- 2025版家用空调产品能效标识检测服务合同
- 2025版北京二手房交易合同中关于交易进度及款项支付范本
- 2025年版IT运维与系统保障服务合同
- 二零二五年度大数据分析技术股份合作协议书
- 2025版购物中心户外广告位媒体包月租赁合同
- 慢性阻塞性肺疾病急性加重期合并II型呼吸衰竭个案护理
- 血透患者皮下出血的护理
- 国企融资考试试题及答案
- 户外不锈钢雕塑施工方案
- 促进教师微课题研究合作的策略
- 良心装饰公司招商方案
- 《应用心理学专业方向实习》教学大纲
- 军人心理预防
- 项目立项专用合同书2025年
- 全员安全生产责任制培训课件
- Python快速编程入门(第3版) 课件 第10章 Python计算生态与常用库
评论
0/150
提交评论