51单片机实现嵌入式实时操作系统的温控器设计

发布者:快乐飞翔最新更新时间:2011-10-18 关键字:51单片机  温控器  嵌入式实时操作系统 手机看文章 扫描二维码
随时随地手机看文章

    目前,8位单片机在测控领域和智能化电子产品应用中仍占有重要地位.而应用嵌入式实时操作系统(ERTOS)会对8位单片机的软件开发带来极大方便。在此简要介绍嵌入式实时操作系统及其在程序设计中的优越性,重点介绍了适合于小RAM单片机的嵌入式实时操作系统Small RTOS51,以及基于8位单片机的硬件和软件的设计方法和过程。

1 嵌入式实时操作系统Small RTOS51简介
   
嵌入式系统已成为当今的热门话题之一,从消费类电子产品到各种工业设备,嵌入式系统已渗透到日常生活的各个角落。对于嵌人式系统,一个重要的特征是实时性,即在确定的时间内完成规定的功能,并能对外部异步事件做出正确响应。确保系统的实时性,需要软硬件配合来完成,首先必须保证硬件处理速度满足实时要求,而对于软件,就是采用与之相适应的嵌入式实时操作系统(Embedded Real_TimeOperating System,ERTOS)。
    采用嵌入式实时操作系统(ERTOS),能够保证系统中任务切换的实时性,事件响应时间的确定性及系统的高可靠性,同时,ERTOS将用户应用程序看成是其上运行的多个任务,这就为程序的编写、调试和系统功能的扩展提供了极大方便,并且由于ERTOS的使用,客观上使得应用软件与下层硬件环境无关,便于嵌入式软件的移植,从而可以大大降低系统开发成本和开发周期。目前,已推出的嵌入式实时操作系统有很多种,比较常用的有VxWorks,WinCE,VRTX,pSOS,Palm OS,嵌入式Linux,Delta OS等。对于8051系列单片机,由于具有很少的RAM和ROM,在嵌入式实时操作系统中,比较适合于这种单片机操作系统是Small RTOS51,它使用Keil C51所带得RTX Tiny的堆栈管理机制,并和μC/OS-Ⅱ一样是抢占式的。目前,Small RTOS的最新版本为1.20.3,可以支持任务的动态建立与删除,支持C51的重入函数,支持动态内存分配等。


2 嵌入式温控器
2.1 嵌入式温控器的结构及原理
   
由Small RTOS51实现的基于8位单片机的温控器的系统结构如图1所示。单片机作为控制核心,负责读取温度传感器的温度,并输出至LED显示器显示,按键用来设置温控器的温度,当温度超限时由输出控制部分输出控制信号,驱动继电器或者报警装置,电源部分为整个系统供电。
2.2 嵌入式温控器硬件电路
   
由于温控器的外围电路比较简单,主控器所需的输入/输出口不多,故采用Atmel公司的AT89C2051,温度传感器采用美国DALLAS半导体公司的DS18B20,其数据信号线接微控制器P3.7,LED显示器采用4个共阴极数码管构成,由4个串入并出的移位寄存器74LS164驱动,采用静态显示方式,P1.1作为LED显示器的串行数据输入,P1.0作为LED显示器的串行时钟输入,输出控制信号由P1.7输出,控制PNP型晶体管,另外设置4个按键分别连接微控制器的P3.2~P3.5,其硬件电路如图2所示。

3 系统软件设计
3.1 任务的分解划分
   
任务的划分包括确定哪些变换属于哪个任务,以及确定各任务的优先级。具体划分原则可参考文献[1]。根据任务划分的原则以及嵌入式温控器的具体功能,本系统将任务分解划分为按键显示处理,温度测量,和输出执行3个任务。
3.2 系统软件的设计
    系统软件设计主要包括主程序设计和各任务程序设计。
    该设计主程序流程图如图3所示。主程序进行初始化以后,顺序建立3个任务,进入CPU休眠状态,各个任务运行后,首先进入任务休眠状态,等待相应任务的唤醒,任务被唤醒以后,进行相应处理,再次进入休眠状态。各个任务均采用无限循环结构,其形式如下:

   
    任务唤醒用函数OSTaskResume(TASK_ID)来完成。在KeilμVision 2下建立工程,编辑相应的头文件config.h,并对OS_CFG.h和OS_CPU.h的有关内容进行相应设置,进行编译直到成功为止。

4 结 语
   
根据嵌入式温控器的硬件电路,利用嵌入式实时操作系统Small RTOS51对其进行程序设计,KeilμVision 2建立工程并进行编译,下载代码后温控器工作正常。对于现在仍然使用广泛的8位单片机,采用Small RTOS51进行程序设计,既简单又方便。利用中断、信号量、消息队列,可以实现更多功能和作用;另外实时操作系统有多种,但其原理类似,懂得了其中之一,可以举一反三,理解和应用其他嵌入式实时操作系统。

关键字:51单片机  温控器  嵌入式实时操作系统 引用地址:51单片机实现嵌入式实时操作系统的温控器设计

上一篇:51单片机与nRF401芯片在RFID系统中的应用
下一篇:多串口船舶导航数据转换器的低成本实现

推荐阅读最新更新时间:2024-03-16 12:43

6-基于51单片机的电机转速控制系统
具体实现功能 具体功能: 1、采用霍尔传感器非接触式测电机转速; 2、数码管显示当前的转速(单位为转/分(RPM))和设定的转速; 3、电机转速可以通过按键调整,也可以开始暂停,正转和反转; 4、按键可实现加速、减速、正转、反转、开始/暂停等功能。 单片机介绍 51单片是一种低功耗、高性能CMOS8位微控制器,具有 8K 在系统可编程Flash 存储器。在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使得STC89C51为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。具有以下标准功能:8k字节Flash,512字节RAM,32 位I/O 口线,看门狗定时器,内置4KB EEPROM,MAX8
[单片机]
6-基于<font color='red'>51单片机</font>的电机转速控制系统
基于51单片机的非接触式红外体温计的设计
一.硬件方案 本系统利用51单片机控制红外温度传感器进行温度的非接触式检测并显示,能够实现快速测量人体体温。 主要由51单片机+最小系统+LCD1602液晶显示+蜂鸣器报警+按键+GY906非接触式温度传感器;如图: 二.设计功能 (1)液晶显示当前检测的温度和温度报警范围精度为0.02摄氏度。 (2)按键可以设置温度报警上限和下限。 (3)当温度低于或高于我们设置的值蜂鸣器进行报警提醒。 (4)测温范围为-70度—380度,范围广。 三.设计原理图 (1)原理图主要采用AD软件进行设计,如图: (2)PCB图如下: 四.软件设计 主程序源码 //*************主函数**************
[单片机]
基于<font color='red'>51单片机</font>的非接触式红外体温计的设计
基于89C51单片机的机械臂智能抓取系统
摘 要 :在农业发展过程中,果实采摘是极度耗费人力的工作。为了减少农业生产过程中的人工成本,将人工智能应用于农业领域将是一种有效手段。基于单片机的控制设计出一款智能抓取系统,拥有六关节高自由度机械臂 ;爪子采用柔性材料,在加强爪子和果实贴合度的情况下减少对果实的损伤程度 ;采用视觉系统进行图像处理,并采集三位坐标 ;采用避障系统控制小车前进 ;通过增加蓝牙模块让人工参与变得更加简便。本文设计的基于单片机的多关节机械臂抓取系统,有望提高农业采摘的效率,减少人工成本,将农业生产过程智能化。 0 引 言 中国自古是农业大国,以传统农业生产方式为主。然而,随着国际人口的增长,对自然资源的需求也不断加大。这使得传统农业生产出现了越来越严
[单片机]
基于89C<font color='red'>51单片机</font>的机械臂智能抓取系统
51单片机自定义多个软件定时器
51单片机只有两个硬件定时/计数器,有时候我们要用多个定时器,可以自己写软件定时器,就可以有多个定时器用了,下面代码用一个硬件定时器实现了四个定时器,实现四个LED以不同频率闪烁,为了验证定时效果,四个LED闪烁频率依次2倍关系,实际可以任意定义。 /*---------------------------------------------------- 名称:用定时器控制led亮灭 单片机:stc12c2052 晶振:12M 说明:四个led,四种频率亮。 ------------------------------------------------------*/ #include //头文件 #defi
[单片机]
51单片机-指令周期与LED闪烁
之前讲了如何点亮LED,包括硬件电路和程序,今天说一下如何让LED闪烁。单片机控制LED闪烁有两种方法,一种是软件延时,另一种是定时器中断。因为涉及到单片机指令集的问题,还有一些简单的C语言,今天只讲第一种。 先说指令集,早期的51单片机都是复杂指令集,因为沿用的习惯现在用的STC89C52单片机也是复杂指令集,和复杂指令集对应的,就是精简指令集,常见的有AVR和430单片机。 这两种指令集的区别是啥?最明显的就是一条指令执行的时间,举个例子:51单片机和AVR单片机都外接一个12M的晶体,一个时钟周期是1/12M=1/12US,执行一条单周期指令(多周期指令不考虑)需要多少时间? 51单
[单片机]
学<font color='red'>51单片机</font>-指令周期与LED闪烁
初学51单片机指令快速记忆法
学习单片机,除了搞清单片机内部功能、存储空间分配及I/O接口外,还应掌握其指令系统。MCS-51共有111条指令,现介绍我们总结出的快速记忆MCS-51指令的方法,供大家参考。 大家都知道,汇编语言指令由操作码、操作数两部分组成。MCS-51使用汇编语言指令,它共有44个操作码助记符,33种功能,其操作数有#data、direct、Rn、@Ri等。这里先介绍指令助记符及其相关符号的记忆方法。 一、助记符号的记忆方法 1 表格列举法    把44个指令助记符按功能分为五类,每类列表记忆。此处从略,请读者自己总结。 2 英文还原法 单片机的操作码助记符是该指令功能的英文缩写,将缩写还原成英语原文,再对照汉语有助于理解其助记符含义,从而加
[单片机]
51单片机的13%26#215;14点阵缩码汉卡
我们历时数载,开发成“51单片机13%26;#215;14点阵缩码汉卡”,适用于目前国内外应用最为广泛的MCSX-51及其兼容系列单片机。 与此同时,还开发了13%26;#215;14点阵汉字字模。13%26;#215;14点阵字模,可完全与目前通用的16%26;#215;16点阵汉字字模媲美,其在单片机和嵌入式系统的汉字显示应用中也具有明显的经济价值和实用意义。 1 单片机目前的汉字显示 信息交流的最主要方式之一即文字交流,但由于我国方块汉字数量繁多,构形迥异,使汉字显示一直是我国计算机普及的障碍。随着计算机技术的迅速发展,PC机的汉字显示已不成问题。但对于成本低、体积小、应用灵活且用量极为巨大的单片机而言,因其结构简单,
[单片机]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved