




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 模拟交通灯设计报告题目交通信号灯控制系统团队研发区 第二组完成时间 2011-11-31 贵州民族学院开放实验室第23页目 录一、项目名称1二、选题背景12.1 课题背景12.2 交通灯的历史1三、单片机简介23.1 单片机的发展历程23.2 单片机的特点:33.3 AT89C52单片机简介4四、设计基本要求和步骤54.1 基本要求54.2 设计步骤6五、硬件和软件设计65.1 硬件电路图65.2 程序流程图8主程序1运行过程1LED显示程序1T0中断1INT0中断15.3 P0、P1口显示状态编码表125.4 程序源代码125.5 程序运行效果图17六、心得体会19七、参考文献20模拟交通
2、灯设计报告一、项目名称十字路口交通信号灯控制系统二、选题背景2.1 课题背景由于我国经济的快速发展从而导致了汽车数量的猛增,大中型城市的城市交通,正面临着严峻的考验,从而导致交通问题日益严重,其主要表现如下:交通事故频发,对人类生命安全造成极大威胁;交通拥堵严重,导致出行时间增加,能源消耗加大;空气污染和噪声污染程度日益加深等。日常的交通堵塞成为人们司空见惯而又不得不忍受的问题,在这种背景下,结合我国城市道路交通的实际情况,开发出真正适合我们自身特点的智能信号灯控制系统已经成为当前的主要任务。随着电子技术的发展,利用单片机技术对交通灯进行智能化管理,已成为目前广泛采用的方法。2.2 交通灯的历
3、史1868年12月10日,信号灯家族的第一个成员就在伦敦议会大厦的广场上诞生了,由当时英国机械师德·哈特设计、制造的灯柱高7米,身上挂着一盏红、绿两色的提灯-煤气交通信号灯,这是城市街道的第一盏信号灯。1914年,在美国的克利夫兰市才率先恢复了红绿灯,不过,这时已是“电气信号灯”。稍后又在纽约和芝加哥等城市,相继重新出现了交通信号灯。随着各种交通工具的发展和交通指挥的需要,第一盏名副其实的三色灯(红、黄、绿三种标志)于1918年诞生。它是三色圆形四面投影器,被安装在纽约市五号街的一座高塔上,由于它的诞生,使城市交通大为改善。中国最早的马路红绿灯,是于1928年出现在上海的英租界。三、
4、单片机简介3.1 单片机的发展历程单片机微型计算机是微型计算机的一个重要分支,也是颇具生命力的机种。单片机微型计算机简称单片机,特别适用于控制领域,故又称为微控制器。 在MCS-51系列单片机中,有两个子系列:51子系列和52子系列。每个子系列有诺干中型号。51系列有8051、8751和8031三个型号,后来经过改进产生了80c51、87c51、80c31三个型号;52系列有5021、8752、8032三个型号,改进后的型号是80c52/87c52、80c32。改进后的型号更加省电。52系列比对应的51系列增加了定时器T2并将内部程序存贮器增加到8KB。Inter公司停止生产MCS-51系列单
5、片机之后将生产权转让给了许多其他公司,于是出现了许多与Mcs-51兼容的单片机。现在生产mcs-51兼容单片机的公司对其进行了不同程度的改进和提高。我们现在使用比较的多的是AT89C51/AT89s51等。通常,单片机由单块集成电路芯片构成,内部包含有计算机的基本功能部件:中央处理器、存储器和I/O接口电路等。因此,单片机只需要和适当的软件及外部设备相结合,便可成为一个单片机控制系统。单片机经过1、2、3、3代的发展,目前单片机正朝着高性能和多品种方向发展,它们的CPU功能在增强,内部资源在增多,引角的多功能化,以及低电压底功耗3.2 单片机的特点:(1)性价比高,开发周期短,易于产品化,(2
6、)集成度高,可靠性好,抗干扰性强,(3)功能完善,接口多样,(4)低功耗、低电压一般电源供电电压在53V范围内单片机都能正常工作,供电的下限可达12V。(5)总线多样,易于扩展单片机外部的典型三总线结构,方便系统构扩展,构成各种规模的应用系统。外部总线增加了I2C及SPI等串行总线方式, 可根据需要进行并行或者串行扩展。3.3 AT89C52单片机简介AT89C52是一种带4K字节闪存可编程可擦除只读存储器(FPEROMFlash Programmable and Erasable Read Only Memory)的低电压、高性能CMOS 8位微处理器,俗称单片机。AT89C2052是一种带
7、2K字节闪存可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除1000次。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C52是一种高效微控制器,AT89C2052是它的一种精简版本。AT89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。主要特性:·与MCS-51 兼容 ·4K字节可编程闪烁存储器 ·寿命:1000写/擦循环 ·数据保留时间:10年·全静态工作:0Hz-24MHz·
8、;三级程序存储器锁定·128×8位内部RAM·32可编程I/O线·两个16位定时器/计数器·5个中断源·可编程串行通道·低功耗的闲置和掉电模式·片内振荡器和时钟电路四、设计基本要求和步骤十字路口车辆穿梭,行人熙攘,车行车道,人行人道,有条不紊。那么靠什么来实现这井然秩序呢?靠的就是交通信号灯的自动指挥系统。交通信号灯控制方式很多。4.1 基本要求本系统需要采用MSC-51系列单片机AT89C52作为中心器件来设计交通灯控制器,实现以下功能:1. 初始东西绿灯亮,南北红灯亮,东西方向通车。2. 延时27s,东西路口绿
9、灯熄灭,黄灯闪烁3次。3. 黄灯闪烁后,东西路口红灯亮同时南北路口绿灯亮,南北方向开始通车。4. 延时27s,南北方向绿灯灭,黄灯闪烁3次,然后又切换成东西方向通车,如此重复。5. 当发生交通意外(中断产生)时,全部亮红灯,进行交通事故的处理。当事故处理完毕(再次按中断键),重新按上述方式工作。6. 当南北路口的流量大时,可以增加南北路口亮绿灯的时间,当东西路口的流量大时,可以增加东西路口亮绿灯的时间,结束后调回正常状态。4.2 设计步骤1.利用Proteus 7.5 SP3仿真软件按下列要求绘制仿真实例² 用4个共阳极LED数码管的分别表示东、西、南、北四个方向路口,以数码管的上、
10、中、下3个横段分别代表红、黄、绿3盏灯² 用P0、P1口分别输出控制模拟交通灯的状态显示的数码管和倒计时显示数码管的状态码² P31、P32、P34P37控制数码管的位选² P20P24接收中断信号并反馈给INT0接口进行中断处理2.按照基本要求编制程序实现相应功能。五、硬件和软件设计5.1 硬件电路图硬件电路图通过Proteus 7.5 SP3仿真之后如图1所示,其中:按钮K0连接P20端口实现红灯全亮,处理交通意外按钮K1连接P21端口实现南北方向亮灯时间+1s按钮K2连接P22端口实现南北方向亮灯时间-1s按钮K3连接P23端口实现东西方向亮灯时间+1s按钮
11、K4连接P24端口实现东西方向亮灯时间-1s整体实验连接电路如下图所示: 图1 整体连接电路图5.2 程序流程图主程序开始设置中断工作方式、触发方式、初始化是否有中断运行过程执行中断YN中断结束,退出中断,返回运行过程SN:绿灯(27),EW:红灯是否到3秒SN:黄灯亮,EW:红灯Count<10?SN:黄灯灭,EW:红灯是否到0秒NYYNNEW:绿灯(27),SN:红灯是否到3秒EW:黄灯亮,SN:红灯Count<10?EW:黄灯灭,EW:红灯是否到0秒YYYNNNLED显示缓冲区 DISPYLED显示程序Display获取当前通行剩余时间送h、lE/S/W/N状态送P0口位选码
12、送P3口倒计时个/十位送P1口调用Delay延时i+;j+四位显示完?YN返回主程序T0中断定时计数初值50ms计数(count)加1判断1S(count=20?)到否count清0Time_SN-;Time_EW-恢复现场中断返回NY中断返回恢复现场Busy_Button=0所有路口全红灯Busy_Button=1SN_Add=0SN1+=1SN1>99NSN1=99YSN_Red=0SN1-=1SN1<20NSN1=20YEW_Add=0EW1+=1EW1>99NEW1=99YEW_Red=0EW1-=1EW1<20NEW1=20YINT0中断获取中断信息5.3 P
13、0、P1口显示状态编码表P0编码备注P07P06P05P04P03P02P01P00111111100FEH红灯101111110BFH黄灯111101110F7H绿灯P1编码备注P17P16P15P14P13P12P11P10111100000C0H0111110010F9H1101001000A4H2101100000B0H31001100199H41001001092H51000001082H611111000F8H71000000080H81001000090H95.4 程序源代码#include<reg52.h>#define uchar unsigned charuch
14、ar code a10=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f;uchar code b4=0x0d,0x0e,0x07,0x0b; /P2口低有效uchar code c4=0x6a,0x66,0x5c,0x3c; /P1口 低电平有效char SN=35,WE=40; /SN表示南北方向 主干道 WE表示东西方向 支干到char SN_G=35,WE_G=20,Y=5; /sng表示南北方向的绿灯 weg表示东西方向的绿灯uchar i,k=0,count=0;void delay(uchar t);void light();vo
15、id led();void ledthrough();void leddrive();sbit K0=P37; /开关KOsbit K1=P36; /开关K1sbit K2=P33; /开关K2sbit K3=P35; /开关K3sbit K4=P32; /开关K4/*程序初始化*/void init(void) TMOD=0X01; /计数器模式1 为16位计数器TH1=(65536-50000)/256;TL1=(65536-50000)%256; /用时50msIT0=1; /外部中断为低电平触发ET0=1;/允许T0中断TR0=1;/启动计数器EA=1;/总中断EX0=1;/允许外部中
16、断0EX1=1;/允许外部中断1/*中断0处理程序*/void int0(void)interrupt 0 EA=0; /关闭总中断P1=0x6c; /东西南北方向为红灯TR0=!TR0;/计数器停止工作for(; ;) /无条件循环 ledthrough();/调用通行时间显示函数if(K0=0) /设置南北通行时间 delay(10); if(K0=0) while(!K0) /当松手时跳出循环 执行后面程序 ledthrough(); /调用通行时间显示函数 SN_G+; /南北方向绿灯时间+1 if(SN_G+Y)=100) /南北通行时间100ms SN_G=1; /时间归1 if(
17、K1=0) /设置东西方向通行时间 delay(10); if(K1=0) while(!K1)/当松手时跳出循环 执行后面程序 ledthrough(); /调用通行时间显示函数 WE_G+; /东西时间+1 if(WE_G+Y)=100) WE_G=1; /时间归1 if(K3=0) /返回 delay(10); if(K3=0) while(!K3)/当松手时跳出循环 执行后面程序 ledthrough();/调用通行时间显示函数 TR0=!TR0; /启动计数器 EA=1; /开总中断 break; /跳出 /*中断1处理程序*/void int1(void) interrupt 2
18、P1=0X6C,P0=a0;/东西南北都为红灯 EA=0; / TR0=!TR0; /计数器停止工作 for(;) leddrive();/数码管驱动程序 if(K3=0) delay(10); if(K3=0) /返回 while(!K3) leddrive();/数码管驱动程序 EA=1; TR0=!TR0; /启动定时器 break; /*键盘程序*/void key() if(K0=0) delay(10); if(K0=0) while(!K0) light();/调用交通灯函数 led(); /调用数码管函数count=0; /清零k=0; /南北方向通车 东西方向不通车SN=SN
19、_G, WE=SN_G+Y;/南北显示时间为绿灯时间 东西方向显示时间为南北绿灯通行时间加黄灯闪亮时间 if(K1=0) /南北无车而东西有车 delay(10); if(K1=0) while(!K1) light();led();count=0;k=2;/南北不通车 东西通车SN=WE_G+Y,WE=WE_G; /南北显示时间为东西绿灯通行时间+黄灯闪亮时间 东西方向显示时间为其绿灯时间 /*定时函数*/void time1(void) interrupt 1 TH0=0X3C; TL0=0XB0; count+; if(count>=20) SN-;WE-;count=0;if(S
20、N=0|WE=0) k+; if(k>3) /当k3执行程序 k=0; switch(k) case 0: SN=SN_G,WE=SN_G+Y;break; case 1: SN=Y,WE=Y;break; case 2: SN=WE_G+Y,WE=WE_G;break; case 3: SN=Y,WE=Y;break; /*延时T毫秒*/void delay(uchar t) uchar i; for(t;t>0;t-) for(i=2000;i>0;i-) /*交通灯函数*/void light() P1=ck;if(P1=c1&&count=0) TH1=(65536-50000)/256; TL1=(65536-50000)%256; P1=0X6E;else if(P1=c3&&count=0) TH1=(65536-50000)/256; TL1=(65536-50000)%256; P1=0X7c;void led() P2=b0,P0=aSN%10; delay(5); P2=b1,P0=aSN/10; delay(5); P2=b2,P0=aWE%10; delay(5); P2=
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 单位自动售货机管理制度
- 一百人公司餐厅管理制度
- 易货公司仓库管理制度
- 分公司费用控制管理制度
- 主井皮带机安全管理制度
- 科技型公司财政管理制度
- 主机厂配件供应管理制度
- 最终形成闭环管理制度
- 卡西欧公司人事管理制度
- 出租车靠边停车管理制度
- 战略性绩效管理体系设计实践课件
- 电脑的认识 完整版课件
- GB∕T 37201-2018 镍钴锰酸锂电化学性能测试 首次放电比容量及首次充放电效率测试方法
- DB62∕T 2997-2019 公路工程工地建设标准
- 2021年河南中考复习专项:中考材料作文(解析版)
- 运动控制系统课程设计-双闭环直流调速系统
- 提高学生课堂参与度研究的课题
- 中央司法警官学院招生政治考察表
- 原产地规则培训讲座课件
- GB_T 22627-2022水处理剂 聚氯化铝_(高清-最新版)
- 药品不良反应报告表范例
评论
0/150
提交评论