UCOS系统移植.ppt

  1. 1、本文档共38页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
UCOS系统移植.ppt

uC /OS-II移植 2) ??OS_CPU_A.ASM 这里需要对处理器的寄存器进行操作。包括四个子函数 OSStartHighRdy(), OSCtxSw() OSIntCtxSw() OSTickISR() uC /OS-II移植 OSStartHighRdy()由多任务系统启动函数OSStart()中调用。 完成的功能是:设置系统运行标志位OSRunning?=?TRUE;将就绪表中最高优先级任务的栈指针Load到SP中,并强制中断返回。使就绪的最高优先级任务调整至运行态一样,使得整个系统得以运转 uC /OS-II移植 OSCtxSw()在任务级任务切换函数中调用的.任务级切换是通过SWI或者TRAP人为制造的中断来实现的。ISR的向量地址必须指向OSCtxSw(). 这一中断完成的功能: 保存任务的环境变量(主要是寄存器的值,通过入栈来实现),将当前SP存入任务TCB中,载入就绪最高优先级任务的SP,恢复就绪最高优先级任务的环境变量,中断返回。这样就完成了任务级的切换. uC /OS-II移植 OSIntCtxSw()在退出中断服务函数OSIntExit()调用,实现中断级任务切换。由于是在中断里调用,所以处理器的寄存器入栈工作已经做完,就不用作这部分工作了。 具体完成的任务: 调整栈指针(因为调用函数会使任务栈结构与系统任务切换时堆栈标准结构不一致),保存当前任务SP,载入就绪最高优先级任务的SP,恢复就绪最高优先级任务的环境变量,中断返回。这样就完成了中断级任务切换 uC /OS-II移植 OSTickISR()系统时钟节拍中断服务函数, 这是一个周期性中断,为内核提供时钟节拍。频率越高系统负荷越重。其周期的大小决定了内核所能给应用系统提供的最小时间间隔服务。一般只限于ms级(跟MCU有关)。对于要求更加苛刻的任务需要用户自己建立中断来解决。 该函数具体内容: 保存寄存器(如果硬件自动完成就可以省略),调用OSIntEnter(),调用OSTimeTick(),调用OSIntExit(),恢复寄存器,中断返回 uC /OS-II移植 OSTickISR()系统时钟节拍中断服务函数, 这是一个周期性中断,为内核提供时钟节拍。频率越高系统负荷越重。其周期的大小决定了内核所能给应用系统提供的最小时间间隔服务。一般只限于ms级(跟MCU有关)。对于要求更加苛刻的任务需要用户自己建立中断来解决。 该函数具体内容: 保存寄存器(如果硬件自动完成就可以省略),调用OSIntEnter(),调用OSTimeTick(),调用OSIntExit(),恢复寄存器,中断返回 uC /OS-II移植 3)???OS_CPU_C.C 该文件中共定义了6个函数.但是最重要的是OSTaskStkInit().其他都是对系统内核的扩展时用的. uC /OS-II移植 OSTaskStkInit()是在用户建立任务时系统内部自己调用的,对用户任务的堆栈进行初始化.使建立好的进入就绪态任务的堆栈与系统发生中断并且将环境变量保存完毕时的栈结构一致.这样就可以用中断返回指令使就绪的任务运行起来 Texas Instruments LM3S系列 32位ARM微控制器 uC /OS-II移植 uC /OS-II由来 μC/OS-II 的前身是μC/OS,最早出自于1992 年美国嵌入式系统专家Jean J.Labrosse 在《嵌入式系统编程》杂志的5 月和6 月刊上刊登的文章连载,并把μC/OS 的源码发布在该杂志的B B S 上。 uC /OS-II简介 μC/OS 和μC/OS-II 是专门为计算机的嵌入式应用设计的 绝大部分代码是用C语言编写的 CPU 硬件相关部分是用汇编语言编写的 总量约200行的汇编语言部分被压缩到最低限度,为的是便于移植到任何一种其它的CPU 上 用户只要有标准的ANSI 的C交叉编译器,有汇编器、连接器等软件工具,就可以将μC/OS-II嵌入到开发的产品中 μC/OS-II 具有执行效率高、占用空间小、实时性能优良和可扩展性强等特点, 最小内核可编译至 2KB μC/OS-II 已经移植到了几乎所有知名的CPU 上。 uC /OS-II简介 μC/OS-II是一种可移植的,可植入ROM的,可裁剪的,抢占式的,实时多任务操作系统内核。它被广泛应用于微处理器、微控制器和数字信号处理器。 uC /OS-II简介 严格地说uC/OS-II只是一个实时操作系统内核,它仅仅包含了任务调度,任务管理,时间管理,内存管理和任务间的通信和同步等基本功能。没有提供输入输出管理,文件系统,网络等额外的服务。但由于uC/OS-II良好的可扩展性和源码开放,这些非必须的功能完全可以由用户自己根据需要分别实现。

文档评论(0)

蝶恋花 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档