实时操作系统μCOS-II在C8051F120上的移植..doc

实时操作系统μCOS-II在C8051F120上的移植..doc

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

实时操作系统μC/OS-II在C8051F120上的移植 2008-6-13 14:23:00 太原理工大学 田娟 供稿 摘要?本文介绍了实时操作系统μC/OS-II的特点,讨论了其在51系列单片机上移植的必要性。并选择8位单片机C8051F120作为移植目标,分析了μC/OS-II的具体移植过程。最后设计例程验证了移植的正确性。 关键词?C8051F120;μC/OS-II;移植 The?Porting?of?Real-Time?Operation?System?μC/OS-II?on?C8051F120 Taiyuan?University?of?Technology????Tian?Juan Abstract?The?paper?introduces?the?characteristic?of?real-time?operation?system?μC/OS-II,?and?discusses?the?necessity?of?porting?μC/OS-II?on?51?series?MCU.?Then?the?specific?process?of?porting?μC/OS-II?on?C8051F120?which?is?selected?as?porting?target?is?analyzed.?The?paper?ends?with?designing?test?program?to?prove?the?success?of?the?porting. Keywords?C8051F120;?μC/OS-II;?porting 引言 ????传统的嵌入式系统设计往往采用前/后台系统。应用程序是一个无限的循环,在循环中调用相应的函数完成对应的操作,这部分可以看成后台行为。中断服务程序处理异步事件,这部分可以看成前台行为[1]。在大多数对实时性要求较高的场合中,这种系统结构就无法满足应用的要求,实时内核逐步成为嵌入式系统设计的主流。μC/OS-II是一个完整的,可移植、固化、裁减的占先式实时多任务内核,不仅结构简单,绝大部分采用C语言,而且可移植性好,很容易被移植到各种微处理器上,在移植过程中,只需要做少量的修改工作即可。目前μC/OS-II最多支持64个任务,总是在执行处于就绪态的优先级最高的任务。并且因其源代码的完全公开和优越性能而得到了广泛的应用。 ????51系列单片机是美国Intel公司在1980年推出的高性能8位单片机,目前仍然是我国使用最广泛的单片机系列之一,有非常大的应用环境与前景。如果开发一套基于51系列单片机的操作系统,那么用户只需要编写各个任务的程序,不必同时将所有任务运行的各种情况记在心中,不但大大减少了程序编写的工作量,而且减少了出错的可能性[2]。 ????所以,在51系列单片机上移植实时操作系统μC/OS-II是很有必要的。 1?μC/OS-II的移植条件 ????要使μC/OS-II移植到处理器后能正常运行,处理器必须满足以下条件: ????●?处理器的C编译器能产生可重入代码。μC/OS-II是可剥夺型内核,总是让就绪态的高优先级的任务先运行,中断服务程序可以抢占CPU,所以只能通过C编译器产生可重入代码。可重入函数可以被一个以上的任务调用,而不必担心数据被破坏。 ????●?处理器的C编译器能在C语言中开中断和关中断。因为μC/OS-II在处理临界段的时候,须关中断,处理完毕后,再开中断。 ????●?处理器支持中断,并且能产生定时中断。因为μC/OS-II是通过硬件中断来实现系统时钟,并在时钟中断服务程序中来处理与时间相关的问题,实现任务之间的调度。 ????●?处理器具有一定数量的硬件堆栈,并且有将堆栈指针和其他CPU寄存器内容读出、并存储到堆栈或内存中的指令。因为μC/OS-II为每一个任务分配任务堆栈,在任务切换时,需要先保存当前任务堆栈内容,再恢复最高优先级任务堆栈内容。 2?CPU芯片的选择 ????随着现代通信技术的发展,智能化系统对DSP需求的增长要求不断提高单片机运算速度[3]。C8051F系列单片机就是在这样的情况下由Silabs公司推出的,它是完全集成的混合信号系统级芯片,具有与8051兼容的微控制器内核,在不扩展8位数据总线的情况下,使单周期指令速度提高到原8051的12倍。而C8051F120作为C8051F系列中的高端产品就被选择为系统移植的对象。 ????C8051F120的内部资源有:64个I/O引脚,5个16位通用计数器/定时器,6个捕获/比较模块,硬件实现的SPI,SMBus/IIC和两个UART串行接口,片内看门狗定时器,2个比较器,真正12位100ksps的8通道ADC,8位500ksps的8通道ADC,128KB的FLASH存

文档评论(0)

dashewan + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档