新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 基于uC/OS-II的智能窗系统设计

基于uC/OS-II的智能窗系统设计

作者:时间:2011-05-27来源:网络收藏

本文讨论了一种实时操作μC/OS-II的方法。

本文引用地址:http://www.eepw.com.cn/article/150699.htm

  1功能

  本功能如下:手动按钮开关窗户;红外遥控窗户的开关;雨天能够自动把窗户关闭;检测到可燃气体自动把窗户打开;遇有盗情,会发出刺耳的报警声,把窗户关闭,并发送一条短消息给住户。

  2硬件

  CPU的选择是嵌入式系统开发的关键所在。本系统的CPU采用了ATMEL公司生产的AT89S51单片机。主要以下几点考虑;相比其他CPU价格便宜;经过扩展后可以移植操作系统μC/OS-II;51单片机在国内研究的较早,技术成熟。系统还包括电源、存储、按键、煤气、湿度、盗情、电机等基本模块。系统架构如图1所示。

  

  3软件

  3.1 μC/OS-II简介

  μC/OS-II是一个可移植(portable)、可固化的(rom-able)和占先式的(preemptive)实时内核,最多可以管理64个任务。μC/OS-II的源代码公开,绝大部分代码使用标准的ANSIC书写,所以可以方便地移植到很多不同种类的处理器或控制器上。μC/OS-II中的任务包括休眠态、就绪态、运行态、挂起态和被中断态5种状态。

  3.2软件方案

  3.2.1 设计思路简介

  本设计的软件和以往设计的前后系统不同,采用了多任务机制来设计应用程序。CPU对大多数事件的处理都是放在任务中完成,而各个任务都是由对应的信号量激活的。信号量可以由任务或外中断INT0来发送,各个任务和外中断INT0之间的关系如图2所示。

  图2中的箭头代表向相应的任务发送相应的信号量,箭头的起始端为信号量发送方,箭头的末端为信号量的接收方。

  

  3.2.2系统任务和资源分配

  μC/OS-II是一个实时多任务操作系统,所以把系统软件分割成多个任务,每个任务负责完成部分工作,系统功能由多个任务协作完成。任务分配方案的好坏将直接影响软件的编写的效率和性能。本系统的任务分配如表1所示。

  

  在起始任务中建立了一系列信号量来协调各个任务的执行,各信号量的作用如表2所示。

  


上一页 1 2 下一页

评论


相关推荐

技术专区

关闭