基于51单片机的交通灯控制器实验.doc_第1页
基于51单片机的交通灯控制器实验.doc_第2页
基于51单片机的交通灯控制器实验.doc_第3页
基于51单片机的交通灯控制器实验.doc_第4页
基于51单片机的交通灯控制器实验.doc_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

教师评阅意见: 签名: 年 月 日实验成绩:一、实验目的1. 学会用8051单片机开发简单的计算机控制系统;2. 学会用汇编语言和C语言开发系统软件; 3. 学会8051单片机开发环境wave或Keil uVision3软件的使用;4. 学会Proteus软件的使用方法,会用Proteus单片机系统进行仿真; 5. 熟悉七位数码管显示的使用方法; 6. 了解交通灯控制系统的基本组成。 二、实验内容及要求图1.十字路口交通灯配置示意图南北东西交通灯处在十字路口上。它有红黄绿三种颜色的灯组成。红灯亮时道路上的车辆停止运行;黄灯是一种过渡用的信号灯,当它亮时,表示道路上的红绿色信号灯即将进行转换。下面拿东西南北四个方向来说明。当东西方向允许行车(或者左转)的时候,南北方向就禁止行车,即此时东西方向的绿灯亮红灯灭,而南北方向的绿灯灭红灯亮。反之当南北方向允许行车(或者左转)的时候,东西方向就禁止行车,即此时南北方向的绿灯亮红灯灭,而东西方向的绿灯灭红灯亮。交通灯配置示意图如图1所示。同时当有特殊的情况发生时,能手动控制各个方向的 信号灯。设计任务就是将这一电路用单片机来实现具体的控制。 3、 实验原理模拟交通灯控制器就是使用单片机来控制一些LED 和数码管,模拟真实交通灯的功能。红、黄、绿交替闪亮,利用数码管倒计数显示间隔等,用于管理十字路口的车辆及行人交通,计时牌显示路口通行转换剩余时间等。根据设计的要求可知,系统的硬件原理框图如下图所示。 图2. 系统硬件框图 单片机选用AT89C51,南北向和东西向各采用2个数码管计时,同时需要对该方向的指示灯的点亮时间进行倒计时。键盘系统可以根据系统的需要设置不同的键的个数,可以选择线式键盘或矩阵式键盘,若单片机的IO口不够用时,可以考虑扩展8255或8155满足系统的要求。为了在后面的分析中便于说明,将东西方向绿灯亮,南北方向红灯亮命名为状态1,东西方向绿灯闪,南北方向红灯亮命名为状态2,东西方向黄灯闪,南北方向红灯亮命名为状态3,将东西方向红灯亮,南北方向绿灯亮命名为状态4,东西方向红灯亮,南北方向绿灯闪命名为状态5,东西方向红灯亮,南北方向黄灯闪命名为状态6。 假定红绿灯点亮的时间为20s,黄灯点亮的时间为5s。黄灯每隔500ms亮一次,之后灭500ms(亮灭一次叫作闪烁一次),一共闪烁5次,持续5s。各个状态之间的变换情况如下: 状态2 状态3 状态4 状态5 状态6 状态1状态1 状态2 状态3 状态4 状态5 状态6 状态1 四、实验仪器、材料电脑、Proteus软件、Keil uVision3软件五、实验过程及原始记录5.1单片机的最小系统ATMEL公司生产的AT89C51单片机它是硬件电路的核心部分,时钟电路晶振使用12MHz,复位电路采取按键复位方式。具体连接图2和图3。图2.单片机系统的时钟电路图3.单片机系统的复位电路5.2数码管显示电路 显示电路采用8个共阳数码管,P1口作为数码管的输入,P0.4、P0.5、P0.6 P0.7分别控制东西南北四路数码管的位选端C1,C2,C3,C4。 图4.数码管显示电路(上图是共阴数码管) 六、实验结果及分析图6.交通灯仿真图(1)图7.交通灯仿真图(2)图8.交通灯仿真图(3)通过软件仿真显示,系统基本能完成要求。结果分析:如上述图所示,交通灯状态显示电路由东西南北四个方向各三个LED灯组成,分别显示四个方向上红、黄、绿三个状态,用以指示十字路口各方向车辆的行驶。通过软件编程,可使路口交通变化情况为:南北方向和东西方向两条交叉道路上的车辆交替运行,主干道每次通行时间都设为20秒。在绿灯转为红灯时,要求黄灯先亮5秒钟,才能变换运行车道;黄灯亮时每秒闪亮一次。7、 实验体会通过这次系统实验,对以前学过的知识进行了巩固,自己做了电路编了程序,通过和书上的对比,加深了对单片机的理解,提高了应用的能力,而且提高了我们的发现、分析、解决问题的能力,同时提高了大家对专业的认识及兴趣,对于我们工科生来说,对以后的学习很有帮助。附录 主要程序清单;-;程序实现功能;西南北路口直行与转弯交替通行,数码管显示直行通行倒计时,红绿黄灯显示包括人行道在内的道路交通状态。#include#define uchar unsigned charuchar count,second,i,flag;sbit h_red= P21;/定义端口sbit h_green= P22;sbit h_yellow= P23;sbit l_red= P24;sbit l_green= P25;sbit l_yellow= P26;uchar code table=0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F;/*/ 主程序/*void main() P1=0x00; /关闭显示 P3=0x00; flag=1; /置标志位 second=20; /状态1,4,红绿灯亮20s TMOD=0x01; /设置定时器0,为方式1 0000 0001 TH0=0x3c; /置定时器的初始值,定时50ms 100ms TL0=0xb0; TR0=1; /启动定时器 IE=0x82; /允许中断 while(1);/*/状态1,东西方向绿灯亮,南北方向红灯亮/*void state1(void) h_red=1; /东西方向绿灯亮 h_green=0; h_yellow=0; l_red=0; l_green=1; l_yellow=0; /南北方向红灯亮/*/*/ 中断程序/*void int_0() interrupt 1 using 0 count+; TH0=0x3c; TL0=0xb0; switch(flag) case 1: /标志位为1,则显示第一种状态 case 2:

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论