51单片机综合实验交通灯设计报告_第1页
51单片机综合实验交通灯设计报告_第2页
51单片机综合实验交通灯设计报告_第3页
51单片机综合实验交通灯设计报告_第4页
51单片机综合实验交通灯设计报告_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

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

文档简介

1、51单片机综合实验交通灯设计报告班 级: 学 生 姓 名:学 号:指 导 教 师: 一 实验题目交通灯控制系统设计二 实验目的1、 学会用8051单片机开发简单的计算机控制系统;2、 学会用汇编语言和C语言开发系统软件;3、 学会8051单片机开发环境wave或Keil uVision3软件的使用;4、 学会Proteus软件的使用方法,会用Proteus单片机系统进行仿真;5、 学会Protel软件的使用方法,会用Protel绘制电气原理图和印制板图;6、 熟悉七位数码管显示的使用方法;7、 了解交通灯控制系统的基本组成。三 实验要求交通灯处在十字路口上。它有红黄绿三种颜色的灯组成。红灯亮时

2、道路上的车辆停止运行;黄灯是一种过渡用的信号灯,当它亮时,表示道路上的红绿色信号灯即将进行转换。下面拿东西南北四个方向来说明。当东西方向允许行车(或者左转)的时候,南北方向就禁止行车,即此时东西方向的绿灯亮红灯灭,而南北方向的绿灯灭红灯亮。反之当南北方向允许行车(或者左转)的时候,东西方向就禁止行车,即此时南北方向的绿灯亮红灯灭,而东西方向的绿灯灭红灯亮。交通灯配置示意图如图1所示。同时当有特殊的情况发生时,能手动控制各个方向的信号灯。设计任务就是将这一电路用单片机来实现具体的控制。数码管北西南绿直行数码管北黄灯缓红灯停绿左转东图1 十字路口交通灯配置示意图四 设计内容与原理为了在后面的分析中

3、便于说明,将南北方向允许直行命名为状态1,南北方向允许左转命名为状态2,南北方向行车到东西方向行车的转换阶段命名为状态3,将东西方向允许直行命名为状态4,东西方向允许左转命名为状态5,东西方向行车到南北方向方向行车的转换阶段命名为状态6。假定直行绿灯点亮的时间为25s,左转绿灯点亮的时间为20s,黄灯点亮的时间为5s,则对方红灯的点亮时间为50秒。黄灯每隔500ms亮一次,之后灭500ms(亮灭一次叫作闪烁一次),一共闪烁5次,持续5s。各个状态之间的变换情况如下:状态1 状态2 状态3 状态4 状态5 状态6 状态1具体显示周期如下:25s20s5s50s状态1状态2状态3状态4状态5状态6

4、南北路口直行绿灯亮左转绿灯亮黄灯亮缓行红灯亮禁行东西路口红灯亮禁行直行绿灯亮左转绿灯亮黄灯亮缓行50s25s20s5s 图2交通信号灯点亮时间图设计电路中每个路口的控制信号灯应有四个,即绿灯两个、黄灯、红灯各一个,同时需要七段数码管一个。因此,本电路的设计中应用到绿灯八个,黄灯四个,红灯四个,七段数码管两个(东西方向相同,南北方向相同,为节省空间可省略一对)。五 电路设计分析根据前面的设计内容与原理分析,电路设计中应有控制模块(单片机电路)、显示模块(十六个信号灯和两个七段数码管)本电路的设计,将发光二极管作为16个信号灯的材料。电源将采用5V的直流电源。东西两个方向的绿灯是同时亮的,为了简化

5、电路可以让这两个灯接同一个引脚。同理,东西方向的黄灯、红灯也可以分别接同一个引脚。南北方向同上。这样我们可以用一个8位口控制16盏信号灯。各信号灯均是共阴极接法,LED负极均接地,正极通过保护电阻接单片机P1口。这样单片机引脚的输出一个高电平时,相应的信号灯就被点亮。七段数码管经过8位排阻RESPACK-8连接。单片机中应包括复位电路和晶振电路。本设计中,采用上电复位形式,由于本系统应用的机器周期为lms,所以晶振选择为12MHz,根据调试电容选择30pF图3:复位电路图4:晶振电路六 硬件原理图七 程序流程本程序的程序流程图如图所示设置闪烁次数延时500ms南北左转绿灯亮东西红灯亮延时25s

6、延时20s黄灯灭南北直行绿灯亮东西红灯亮黄灯亮延时500ms设置闪烁次数黄灯亮延时500ms东西左转绿灯亮南北红灯亮延时25s延时20s东西直行绿灯亮南北红灯亮开始复位黄灯灭闪烁次数到?闪烁次数到?延时500msNNYY八 心得体会 这次系统实验历时一个月的时间,在这实验过程里我们巩固了从编程、软件使用到调试的专业知识,逻辑思维和动手能力都得到了很大的提高。 要解决的主要问题就是程序的设计和仿真,虽然初期在设计和布局、编程时思路比较清晰,但是到了细节处,也出了不少问题,而且很难被检查出来,如在定时器使用方面出了一些错误。但是最后经过不断努力,还是写出来正确的代码。 通过这次系统实验,对以前学过

7、的知识进行了巩固,加深了理解,提高了应用的能力,而且提高了我们的发现、分析、解决问题的能力,同时提高了对专业的认识及兴趣,对于我们工科生来说,对以后就业很有帮助。附录 程序代码:#defineucharunsigned char#defineuintunsigned int#include/*定义控制位*/sbitEW_LED2=P23;/东西数码管个位sbitEW_LED1=P22;/东西数码管十位sbitSN_LED2=P21;/南北数码管个位sbitSN_LED1=P20;/南北数码管十位_sbit SN_Yellow=P16;/南北黄灯sbit EW_Yellow=P12;/东西黄灯s

8、bit EW_Red=P13;/东西红灯sbit SN_Red=P17;/南北红灯sbit Busy_Btton=P34;bit Flag_SN_Yellow; /南北黄灯标志位bit Flag_EW_Yellow;/东西黄灯标志位charTime_EW;/东西方向倒计时单元charTime_SN;/南北方向倒计时单元uchar EW=50,SN=25,EWL=20,SNL=20; /程序初始化赋值uchar EW1=50,SN1=25,EWL1=20,SNL1=20;/用于存放修改值的变量1-9段选码uchar code table10=0xc0,0xf9,0xa4,0xb0,0x99,0x

9、92,0x82,0xf8,0x80,0x90;uchar code S8=0X28,0X48,0X18,0X48,0X82,0X84,0X81,0X84;/交通信号灯控制代码/*延时子程序*/voidDelay(uchar a)uchari;i=a;while(i-);/*显示子函数*/voidDisplay(void)char h,l;h=Time_EW/10;l=Time_EW%10; P0=tablel;EW_LED2=1;Delay(200);EW_LED2=0; P0=tableh;EW_LED1=1;Delay(200);EW_LED1=0;h=Time_SN/10;l=Time_

10、SN%10;P0=tablel;SN_LED2=1;Delay(200);SN_LED2=0; P0=tableh;SN_LED1=1;Delay(200);SN_LED1=0;/*T0中断服务程序*/void timer0(void)interrupt 1 using 1static uchar count;TH0=(65536-50000)/256;TL0=(65536-50000)%256;count+;if(count=10) if(Flag_SN_Yellow=1) /南北黄灯标志位 SN_Yellow=SN_Yellow; if(Flag_EW_Yellow=1) /东西黄灯标志位

11、 EW_Yellow=EW_Yellow; if(count=20)Time_EW-;Time_SN-;if(Flag_SN_Yellow=1)/南北黄灯标志位Time_SN=Time_EW; SN_Yellow=SN_Yellow;if(Flag_EW_Yellow=1)/东西黄灯标志位Time_EW=Time_SN; EW_Yellow=EW_Yellow;count=0;voidmain(void) IT0=1;/INT0负跳变触发 TMOD=0x01;/定时器工作于方式1TH0=(65536-50000)/256;/定时器赋初值TL0=(65536-50000)%256;EA=1; /

12、开中断总允许ET0=1;/开定时中断EX0=1;/开外部INTO中断 TR0=1;/启动定时 while(1)/*状态1*/ Flag_EW_Yellow=0; /EW关黄灯显示信号Time_EW=EW;Time_SN=SN;while(Time_SN0) P1=S0; /SN通行,EW红灯 Display();/*状态2*/ Flag_SN_Yellow=0; /SN关黄灯显示信号Time_SN=SNL;while(Time_SN0)P1=S2;/SN左拐绿灯亮,EW红灯 Display(); /*状态3*/P1=0x00;while(Time_EW0) Flag_SN_Yellow=1;/SN开黄灯信号位 EW_Red=1; /SN黄灯亮,等待停止信号,EW红灯 /SN_LED1=EW_LED1; /SN_LED2=EW_LED2; Display(); /*赋值*/EW=EW1; SN=SN1;EWL=EWL1;SNL=SNL1;/*状态4*/Flag_SN_Yellow=0; /SN关黄灯显示信号Time_EW=SN;Time_SN=EW; while(Time_EW0) P1=S4; /EW通行,SN红灯 Display();/*状态5*/Flag_EW_Yellow=0; /E

温馨提示

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

评论

0/150

提交评论