用户中心

资讯 > 嵌入式系统

μC/O-SII内核扩展接口的低功耗模式

作者:陈萌萌2006.03.28阅读 2256


 

      摘要:嵌入式实时操作系统中,如何在操作系统层面尽量降低系统功耗已成为一个值得研究的问题。本文以嵌入式实时操作系统μC/OSII为例,以飞思卡尔8位单片机HCS08GT60作为硬件平台,详细讨论如何实现一个低功耗的实时操作系统,如何利用μC/OSII内核扩展接口省电;详细分析如何选择一种合适的单片机低功耗模式,说明利用μC/OSII内核扩展接口实现一个低功耗系统的可行性。


      关键词:μC/OS-II 内核扩展接口 HCS08GT60 低功耗模式


       引 言
  随着消费类电子产品的功能日益复杂,在其中移植或固化实时操作系统已不是新鲜事了,如手机、PDA等等。对于该类产品,低功耗特性往往占有举足轻重的地位。如何在操作系统层面上,尽量降低系统功耗,是一个值得探讨的问题。一般来说,嵌入式CPU都具有低功耗的工作模式,如果在任务调度的空闲时间,使CPU进入这种模式,就能大幅度降低系统功

耗。


  本文以嵌入式实时操作系统μC/OS-II在飞思卡尔8位单片机HCS08GT60上的移植为例,详细讨论如何利用μC/OS-II给出的内核扩展接口,实现一个低功耗的嵌入式实时系统;进一步分析如何选择一种合适的低功耗模式。μC/OS-II是一种可移植、可固化、可裁剪的可剥夺型多任务内核。由于其源码公开、注释详尽、内核设计概念清晰,已成为世界上学习和使用频率较高的实时操作系统。2000年7月,μC/OS-II V2.52通过了美国航空航天管理局的安全认证,其可靠性得到了进一步的验证。利用任务调度的空闲时间使CPU进入低功耗模式,以降低系统功耗这一思想在μC/OS-II内核设计之初就被注意到了。为此设计者特意留出了相应的内核扩展接口。用户可以利用此接口,实现一个实时的低功耗系统。


      1 利用空闲任务扩展接口使CPU进入低功耗模式
  实现μC/OS-II低功耗特性的方法很简单:用户可以利用μC/OS-II中空闲任务的扩展接口,使系统在空闲状态下进入某种低功耗模式www.cechina.cn,降低系统功耗;同时利用RTI信号作为时钟节拍,周期性地唤醒CPU。CPU被唤醒之后,将执行节拍中断服务程序www.cechina.cn,重新判断是否有任务处于就绪态。如果有,就执行该任务;如果没有,则重复上面的过程。


  μC/OS-II最多可以管理64个任务,并为每一个任务分配一个不同的优先级。每一个任务有五种可能的状态——睡眠态、就绪态、运行态、等待态和中断服务态。μC/OS-II属于可剥夺型内核,也就是说,μC/OS-II总是运行进入就绪状态的优先级最高的任务。一旦优先级高的任务进入就绪态,就可以将CPU从低优先级任务中抢过来。


  在μC/OS-II初始化时www.cechina.cn,会建立一个优先级最低的任务——空闲任务,在没有任务进入就绪态的时候,空闲任务就会开始运行。空闲任务会调用一个函数——OSTaskIdleHook()。这是留给用户使用的内核扩展接口。空闲任务实际上并没有什么事情可做①,只是一个等待中断的无限循环。因此用户可以利用OSTaskIdleHook(),使CPU进入低功耗模式。


       ① 事实上,空闲任务可以为统计任务提供一个计数,用以统计CPU的利用率CONTROL ENGINEERING China版权所有,但该工作完全可以在改动OSTaskIdleHook()之前运行。


  用户不必担心整个内核因为系统进入低功耗模式而停止运行。因为HCS08GT60允许RTI时钟周期性地将CPU唤醒。唤醒之后的系统会和遇到节拍中断一样,进入OSTickISR()中断服务程序,查看是否有任务进入了就绪态。如果还没有www.cechina.cn,就再次进入低功耗模式。对于HCS08GT60,允许RTI时钟的低功耗模式有WAIT模式、STOP2模式和STOP3模式三种,其功耗、系统恢复时间、唤醒中断源等各不相同。下面介绍如何选择一种合适的低功耗模式。


        2 选择合适的低功耗模式
       2.1 HCS08GT60的低功耗模式
  考虑到后面的讨论要涉及到具体的低功耗模式,所以首先介绍一下单片机HCS08GT60的低功耗特性。HCS08GT60属于飞思卡尔(原Motorola)HCS08系列单片机。该系列单片机的低功耗特性很突出;工作电压可以在1.8~3.6 V之













版权声明:版权归控制工程网所有,转载请注明出处!

频道推荐

关于我们

控制工程网 & CONTROL ENGINEERING China 全球工业控制、自动化和仪器仪表领域的先锋媒体

CE全球

联系我们

商务及广告合作
任小姐(北京)                 夏小姐(上海)
电话:010-82053688      电话:18616877918
rendongxue@cechina.cn      xiashuxian@cechina.cn
新闻投稿:王小姐

关注我们的微信

关于我们 | 网站地图 | 联系我们
© 2003-2020    经营许可编号:京ICP证120335号
公安机关备案号:110102002318  服务热线:010-82053688