基于RTX51实时操作系统的交通灯控制系统的设计

2011-03-28 18:40:41来源: 互联网

    摘要:相对与传统的开发方式而言,用实时操作系统进行开发是一种效率更高的方式。现以道路交通灯控制系统为例。具体介绍了基于小型多任务实时操作系统RTX51开发软件系统的方法和步骤,给出了系统的硬件电路及软件设计方案。实践测量表明,基于RTX51开发的软件系统,系统在实时性、稳定性和可靠性等方面都得到了提高。
关键词:交通灯控制系统;实时操作系统;RTX51

O 引言
    一个高效的单片机智能控制系统,不仅要求系统能够同时执行多个任务,对每个任务作出实时响应,而且要求系统能够及时响应随机发生的外部事件,并对其作出快速处理。对于这样的系统应用,采用实时操作系统RTOS(Real-time-Operating System)作为系统软件设计平台是一个良好的选择,它可以灵活地安排系统资源,简化复杂的软件设计,加快软件的开发效率,大大缩短了项目的开发周期。道路交通灯是最常见的一种多任务控制系统,本文以此为倒,详细阐述了51嵌入式实时操作系统RTX51开发软件的方法和步骤。

1 系统硬件电路设计
    交通信号灯控制系统主要实现以下三个功能:
    (1)信号灯指示,即完成十字路口红、黄、绿交通信号灯的控制。
    (2)时间显示,各个信号灯持续的时间显示。
    (3)紧急情况响应,当系统出现故障或者有紧急情况是能够及时响应。
    根据以上功能要求,完整的交通灯控制系统硬件电路如图l所示,主要由三部分模块组成:单片机最小系统模块、红绿色显示模块、倒计时显示模块、紧急中断模块。
a.JPG

     (1)单片机最小系统:包括时钟电路和开关复位电路。单片机选用具有成本低廉且具有串口ISP下载功能的STC89C52单片机,晶振选用12 MHz。
    (2)信号灯指示电路:东西南北四个方向分别有红、绿、黄三个状态指示的灯,其中南北方向的红绿黄发光二极管分别连接到P1.O~P1.2,东西方向的红绿黄发光二极管分别连接到P1.3~P1.5。
    (3)倒计时显示:每个交通灯状态倒计时时间由两位共阳数码管显示,八位段码分别连接到P0.0~P2.7,两位位选通过反向器分别连接到P3.4、P3.5。
    (4)紧急中断:开关K1为紧急中断开关,当有特殊情况时按下K1,K1连接到单片机P3.2外部中断O输入端。

2 基于RTX51的软件设计
    近年来,利用嵌入式实时操作系统来开发嵌入式系统的软件已是大势所趋。这是因为传统的这类设计中,大多采用了中断结合单任务的顺序机制进行,这种设计方法虽然比较直观,但是也带来了诸如稳定性差、不便于调试等问题。尤其是当系统比较复杂、实时性要求比较高时,这种单任务机制的缺陷更为明显。利用嵌入式实时操作系统,程序开发者可以将复杂的系统分成多个相对独立的任务,从而分而治之,降低了系统的复杂性;通过对不同的任务赋以不同的优先级,从而能够保证系统的实时性;同时,由于软件系统有多个任务组成,所以其模块化程度好。提高了系统的可维护性。因此,这里利用实时操作系统RTX51来进行软件系统的设计。

2.1 RTX51实时操作系统介绍
    RTX51是美国Keil公司开发的一种运行于8051单片机环境中的实时多任务操作系统(RTOS),其常用于处理复杂的多任务控制系统。8051单片机支持典型的RTX-51Tiny和RTX-51 Full实时多任务操作系统。在Keil μVison3集成开发环境中提供了RTX-51实时操作系统的编译和仿真调试支持。
    在多任务嵌入式系统中,合理的任务调度必不可少。单纯通过提高处理器速度无法达到目的,这样就要求嵌入式系统的软件必须具有多任务调度能力。在微控制器应用系统中通常可以分解为多个相互独立的功能模块,在RTX51嵌入式实时操作系统中将这些模块划分为任务,引入多任务机制管理。依据系统功能优先级分配不同的任务,多个任务分别在各自的时间片内访问CPU,从而产生了微观上轮流运行、宏观上并行运行的多任务效果,保证了对外界的信息足够快的速度进行响应处理,又能并行运行多个任务,因此能很好完成对多个信息的实时测量、处理并进行响应的多个实时控制。
2.2 任务分配
    在本系统中,依据交通灯控制系统功能的分析,将整个软件系统分解为以下三个任务,系统初始化、红绿黄灯显示、倒计时显示。具体情况如下:
    任务0:用于系统初始化,开外部中断0;启动任务1和任务2。
    任务1:红绿黄信号指示灯控制,实现红绿黄灯的五种状态控制。状态0:东西方向红灯亮,同时南北方向绿灯亮,亮的时间为30 S;状态1:东西方向红灯亮,南北方向黄灯闪烁,时间为3 S;状态2:东西方向绿灯亮,同时南北方向红灯亮,时间为30 S;状态3:东西方向黄灯闪烁,南北方向红灯亮,时间为3 S;状态4:当紧急开关按下时,响应紧急状况或者故障状态,东西南北四个方向红灯均亮,时间为10S。
任务2:各个状态指示灯倒计时显示。两个数码管采用动态扫描显示,实时显示当前交通指示灯状态的倒计时时间。
2.3 程序设计
    依据任务分配,将三个任务分别规划为_task_0,_task_1,_task_2,由于完整的程序较大,这里不便给出,只给出部分代码,如下所示。

b.JPG


c.JPG

3 结束语
    本文以道路交通灯控制系统为例,详细介绍了RTX51实时操作系统在单片机程序设计中的应用。系统实际运行结果表明,RTX51实时操作系统既能保证对外界的信息以足够快的速度进行处理,又能并行运行多个任务,具有实时性和并行性的特点,因此能很好地完成对多个信息的实时测量、处理和进行相应的多个实时控制。此外,使用RTX51实时操作系统,降低了软件编写的复杂度,提高了产品的开发效率,方便了系统的维护和功能扩展。

关键字:实时操作系统  控制系统  设计

编辑:eeleader 引用地址:http://www.eeworld.com.cn/gykz/2011/0328/article_5251.html
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。
论坛活动 E手掌握
微信扫一扫加关注
论坛活动 E手掌握
芯片资讯 锐利解读
微信扫一扫加关注
芯片资讯 锐利解读
推荐阅读
全部
实时操作系统
控制系统
设计

小广播

独家专题更多

富士通铁电随机存储器FRAM主题展馆
富士通铁电随机存储器FRAM主题展馆
馆内包含了 纵览FRAM、独立FRAM存储器专区、FRAM内置LSI专区三大部分内容。 
走,跟Molex一起去看《中国电子消费品趋势》!
走,跟Molex一起去看《中国电子消费品趋势》!
 
带你走进LED王国——Microchip LED应用专题
带你走进LED王国——Microchip LED应用专题
 
电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2016 EEWORLD.com.cn, Inc. All rights reserved