网站大量收购闲置独家精品文档,联系QQ:2885784924

毕业设计(论文)uCOS在C51单片机上的移植.docVIP

毕业设计(论文)uCOS在C51单片机上的移植.doc

  1. 1、本文档共12页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
uCOS-II 在C51 单片机上的移植 (1)实时系统和前/后台系统; 前/后台系统:一个大循环,循环查询各种标志位。如果标志位置位,就执行相应的服务程 序。标志位就是标志事件的发生,事件响应延时处于不可预测状态。最坏的情况是循环中所 有其他的事件服务程序执行完,才响应当前事件。中断服务虽然能即时/优先响应,但是它 们和主循环的通讯,也是通过置主循环中相应的标志位来完成的。 实时系统(uCOS):整个程序分成一个个看起来好象是并行的任务,每个任务都在等待事件 的发生。因为uCOS不支持时间片轮转,除了最低优先级任务(在uCOS中是IDLE任务)是死循 环以外,其他的任务都不能死循环,只能在驱动事件驱动下工作。任何驱动事件的产生,都 使优先级最高的就绪任务运行。任务和任务/任务和中断的通讯,是通过相应事件驱动来完 成的。 驱动事件: 不论是什么系统,CPU不可能一直在工作。CPU的工作是在各种驱动事件的驱动下工作的。 CPU在完成一次驱动事件事件服务程序以后,进入IDLE模式等待新的驱动事件的发生。包括 实时系统和前/后台系统都是在驱动事件的驱动下运行的。 按照uCOS中的观点,驱动事件分为三类: 1、事件 (Event)。包括信号量(Semaphores)、事件标志组(Flag)、邮箱(Message Box)、 邮箱队列(Message Queue)。 2、时间(Time Tick)。包括时间延时和事件超时。 3、中断(Interrupt)。可以发出各种event。 由于第1种事件,通常都是在第2、3种状态下发出的,所以其实事件的驱动只有两种:时间 (定时)和中断(各种异步中断)。 时间实际上也是中断的一种,可以说程序的驱动事件只有一种,就是:中断。 前/后台系统中还有一种驱动事件的产生,在主循环中不断的查询。有别与一般的定时查 询,这种查询是为了将事件的响应时间降到最低,也可以将其归纳于定时(时间)事件。 (2)uCOS C51移植的准备工作; 2004年8月份,我在书城买了一本《uCOS- 第2版》,准备学习RTOS。因为以前没有玩过 RTOS,在工作之余断断续续的看了3、4章。一直到12月初的时候,公司要重新设计一个项 目,恰好要把uCOS移植到c51上。我的RTOS学习才正式开始。 因为对OS向往以久,我并不想在网上Down一个现成的移植OS程序,做一个OS的应用者。揭开 OS的神秘面纱,了解OS的内部运行机制,这才是我想要做的。本文的主要目的是讨论uCOS的 移植,希望对即将进行uCOS c51移植的兄弟有些帮助。对于OS的内部运行机制,由于东西比 较多,在这里不想太展开。如果以后有时间,也想写一篇文章来讨论讨论。 最开始,我的计划就是看书,看《uCOS- 第2版》。看完这本几百页的大本本,花了我2个 半星期。因为是工作需要,我才可以这样心安理得的在那里看呀看书^_^,辛苦呀9。在这期 间,为了自己的思想不受别人的影响,我坚决没有从网上下任何uCOS的资料,我手头的资料 就是uCOS-的书和附带光盘,这些就是最权威的资料了。在看书的时候,我都坚持做笔 记,把每天的重点,明白的东西和心中的疑问都随时记录下来。对付这种大本本,前后的知 识又相互关联,光靠我们的大脑是搞不定啊。 弄懂了uCOS的内核,下一本书应该是《单片机高级语言C51Windows环境编程与应用》。对于 Keil C我还是很熟的,还是花了2、3天来复习。这里的重点是C51对汇编的转换结构,例于 数据/系统堆栈的使用,CAsm混合编程。我想对于任何CPU的uCOS移植,C语言的实现机制, 你都是要了解的。这里也是要花大把时间的。 《uCOS- 第2版》和《单片机高级语言C51Windows环境编程与应用》这两本书网上都可以 下电子档的,我这里也有(大家需要可以来信索取)。 uCOS和C51的书都看完了。我就下载了一堆uCOS的C51移植资料。其中的源程序有很多个版本 的,不过详细的移植文档只有一个版本:巨龙一位大虾的uCOS C51移植心得,相信很多人 都看过。这些资料的作者都是我移植过程中的老师,有了这些资料,我才能把心中的朦胧想 法变成源程序。但是我也发现这些资料中大多都有一些错误和遗漏,当然这是难免的。这也 正是驱使我写这篇文章的原因,希望在前辈的基础上有所进步。欢迎大家来批评! 真正的源代码移植,我花了大概一个星期时间。 (3)uCOS C51的移植概况; 1、工具: uCOS 2.52版; Keil C V6.23a。 2、uCOS V2.52的文件结构与移植所需要的修改: A、与处理器无关的文件: OS_CORE.C OS_FLAG.C OS_MBOX.C OS_MEM.C OS_MUTEX.C OS_Q.C OS_SEM.C OS_TAS

您可能关注的文档

文档评论(0)

精品天地 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档