基于-51单片机的交通灯设计
基于51单片机控制交通灯

目录1 绪论 (1)1.1 课题研究目的 (1)1.2 研究现状 (2)1.3 本文的主要工作 (3)2 系统方案设计 (3)2.1 总体方案设计与分析 (3)2.2 主控制器方案 (4)2.3 显示方案 (5)3 系统电路设计 (5)3.1 主控制器电路 (5)3.1.1 单片机电路 (5)3.1.2 晶振电路 (7)3.1.3 复位电路 (7)3.2 显示电路 (8)3.3 按键电路 (8)3.4 交通灯电路 (9)4 系统硬件设计 (9)4.1 主程序软件设计 (9)4.2 子程序软件设计 (11)4.2.1 显示软件设计 (11)4.2.2 按键扫描软件设计 (13)5 系统测试 (13)5.1 系统调试 (13)5.2 故障检查 (16)6硬件组装与调试 (16)6.1 系统组装 (17)6.2 上电后调试 (18)总结 (19)参考文献 (20)致谢 ...................................................................................................................错误!未定义书签。
附录 (21)附录1:成品图 (21)附录2:原理图 (22)1 绪论1.1 课题研究目的19世纪的时候,英国就出现了世界上首个交通信号灯,因为他的能源来自于煤气的交通信号灯,这种方案在后期的设备运行中很容易产生爆炸,所以后来此种交通信号灯设备就没有在出现了。
到了20世纪的时候,美国的克利夫兰市又有了交通灯设备,然而此次的能源设计方案是电力信号灯。
1930年德国有人开发了选取自动化的设计方案去操作的交通灯,这种设计标志着交通自动操作的起步。
20世纪开始,发达国家第一次选取车辆感应方案处理信号,车辆传感器的主要特点为,此设计能够按照交通拥堵的具体情况去操作交通灯运行的时间参数,这样来解决交通十字路口的拥堵问题,使得车辆可以很快的通过路口,此方案被很多地区进行使用。
基于51单片机设计的交通灯报告书

报告书干路—支路口交通信号灯控制器项目目的:通过对模拟交通灯控制系统的操作,让我们掌握定时器和中断系统的综合应用,进一步熟练51单片机的应用.项目要求:本项目主要通过感应开关控制交通灯的切换显示,实现主干路与支路车辆的分流。
(1)在正常情况下,主干道交通灯绿灯一直亮着。
(2)当支路检测到有车辆,60秒后,主干道禁止通行,支路放行。
(3)支路放行30 秒后,恢复正常情况。
项目电路如图:按键S1、S2模拟支路的车辆检测,当S1、S2为高电平(不按下按键)时,表示正常情况。
当S1或S2为低电平(按下按键)时,表示支路上有车辆,将S1、S2接到P3.0、P3.1把信号送入到单片机。
程序设计:源程序代码:#include<reg51.h>#define uchar unsigned char#define uint unsigned intuchar time,second,n,m;sbit k1=P3^0;sbit k2=P3^1;Uchar code Tab[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x 80,0x90};//数码管显示0~9的段码表void delay(uint t){uchar i;while(t--)for(i=0;i<255;i++);}void shumaguan(uchar s){P2=0xfd;P0=Tab[s/10];delay(1);P2=0xfe;P0=Tab[s%10];delay(1);}void main(){IE=0x82;TMOD=0x01;TH0=(65536-50000)/16;TL0=(65536-50000)%16;while(1){ uchar j;P1=0xde;if(k1==0||k2==0){delay(500);if(k1==0||k2==0){time=40;TR0=1;for(second=60;second>0;)shumaguan(second);TR0=0;P2=0x00;P1=0xf3;delay(3000);for(j=0;j<2;j++){P1=0xfb;delay(200);P1=0xf3;delay(200);}P1=0xeb;delay(500);}}}}void ld() interrupt 1{TR0=0;time--;if(time==0){time=40;second--;if(second==5)P1=0xdf;if(second==4)P1=0xde;if(second==3)P1=0xdf;if(second==2)P1=0xdd;if(second==1)P1=0xdd;}TH0=(65536-50000)/16;TL0=(65536-50000)%16;TR0=1;}项目小结:本项目程序主要包括四部分:主函数、延时函数、数码管显示函数、中断函数。
基于51单片机的智能交通灯课程设计报告书

基于51单⽚机的智能交通灯课程设计报告书简易智能交通灯设计1、设计背景⾃从1886两个德国⼈发明了第⼀辆汽车交通灯改变了交通路况,交通问题也渐渐被⼈们所重视。
从英国伦敦街头的第⼀个以燃煤⽓为光源的红,蓝两⾊的机械扳⼿式信号灯,到现在以电为光源的红黄绿三⾊交通灯,不知不觉中交通信号灯在⼈们⽇常⽣活中占据了重要地位。
随着⼈们社会活动⽇益增加,经济发展,汽车数量急剧增加,城市道路⽇渐拥挤,交通灯更加显⽰出了它的功能,使得交通得到有效管制,对于交通疏导,提⾼道路导通能⼒,减少交通事故有显著的效果。
近年来,随着科技的飞速发展,电⼦器件也随之⼴泛应⽤,其中单⽚机也不断深⼊⼈民的⽣活当中。
本次课程设计以模拟交通灯系统利⽤单⽚机AT89C51作为核⼼元件,实现了通过信号灯对路⾯状况的智能控制。
在⼀定程度上解决了交通路⼝堵塞、车辆停车,特殊情况的交通灯等待时间不合理、急车强通等问题。
在该次的设计系统具有结构简单、可靠性⾼、成本低、实时性好、安装维护⽅便等优点,有⼴泛的应⽤前景。
本模拟系统由单⽚机软件系统,两位8段数码管和LED灯显⽰系统。
和复位电路控制电路等组成,较好的模拟了对交通路⾯的控制。
1.1 设计思路(1)分析⽬前交通路⼝的基本控制技术以及各种通⾏⽅案,并以此为基础提出⾃⼰的交通控制的初步⽅案。
(2)确定系统交通控制的总体设计,包括,⼗字路⼝具体的通⾏禁⾏⽅案设计以及系统应拥有的各项功能,在这⾥,本设计除了有信号灯状态控制能实现基本的交通功能,还增加了倒计时显⽰提⽰,并基于实际情况,⼜增加了紧急状况处理和通⾏时间可调这两项特特殊功能。
(3)进⾏倒计时显⽰电路,灯状态电路,特殊情况按键电路的设计和对各器件的选择及连接,⼤体分配各个器件及模块的基本功能要求。
(4)进⾏软件系统的设计和仿真中,程序在KEIL软件中⽤单⽚机c语⾔编写,电路的搭建和仿真实现是在proteus软件中实现的。
在本次课程设计中通过对单⽚机内部结构和⼯作情况做了⼀定的研究,充分了解定时器,中断以及延时原理,为本次智能交通灯的设计提供了理论基础。
51单片机交通灯毕业设计方案

51单片机交通灯毕业设计方案
以下是一个基于51单片机的交通灯设计方案:
1. 硬件设计:
- 使用51单片机作为主控制器。
- 使用红黄蓝三个LED作为信号灯的显示器件。
- 使用按钮作为手动触发信号灯切换的输入设备。
- 使用数码管显示当前信号灯状态的计时器。
- 使用适当的电阻、电容、继电器等连接单片机和LED、按钮、数码管等。
2. 软件设计:
- 配置51单片机的I/O口,将LED、按钮和数码管连接到正
确的引脚。
- 编写主程序,设置中断或轮询等方式读取按钮状态,并根
据按钮状态切换信号灯状态。
- 通过控制LED引脚的输出电平,实现红黄蓝三个信号灯的
闪烁、亮灭和切换。
- 使用定时器计时,实现信号灯的定时控制。
根据交通规则,红灯、黄灯、绿灯的显示时间可以根据需要设定。
- 使用数码管显示当前信号灯的状态和剩余时间,方便车辆
和行人了解交通灯变化。
3. 功能设计:
- 根据交通规则,设置交通灯的变换顺序和时间,确保道路
的交通流畅和安全。
- 根据需要加入手动触发信号灯切换的功能,允许人工控制,
例如紧急情况下的交通调节。
- 可以考虑加入流量检测、车辆和行人优先等功能,提高交
通效率和安全性。
- 可以通过串口或无线通信模块,实现与其他设备的联动,
例如与车载导航系统、交通监控系统等的数据交换和协同控制。
以上是一个基本的51单片机交通灯设计方案,可以根据具体
需求进行进一步调整和优化。
基于51单片机交通灯程序完整版

#include<reg52.h>#include <intrins.h>#define uchar unsigned char#define uint unsigned intbit Flag_SN_Yellow; //SN黄灯标志位bit Flag_EW_Yellow;//EW黄灯标志位uchar Time_EW;//东西方向倒计时单元uchar Time_SN;//南北方向倒计时单元uchar EW=15,SN=10,EWL=19,SNL=19; //程序初始化赋值,正常模式uchar EW1=60,SN1=40,EWL1=19,SNL1=19;//用于存放修改值的变量ucharFlag_Moden=1; //模式变量1正常模式 2 禁止南北通东西 3 禁止东西通南北 4 禁止东西南北5 夜间模式ucharFlag_key=0;uchar codetable[10]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F};//1~~~~9段选码sbit HC164_Data =P0^0;sbit HC164_Clk =P0^1;sbitEW_green =P0^2;sbitEW_yellow =P0^3;sbitEW_red =P0^4;sbitSN_red =P0^5;sbitSN_green =P0^7;sbitSN_yellow =P0^6;sbitSN_RXD_red =P2^7;sbitSN_RXD_green =P2^6;sbitEW_RXD_red =P2^5;sbitEW_RXD_green =P2^4;sbit FMQ = P1^0;sbit key1 = P3^3;sbit key2 = P3^4;sbit key3 = P3^5;sbit WEI1 =P2^3; // 东西数码管第一位sbit WEI2 =P2^2; // 东西数码管第二位sbit WEI3 =P2^1; // 南北数码管第一位sbit WEI4 =P2^0; // 南北数码管第二位//ucharew=40;sn=35;//函数 delay(uchar z)//功能能延时void Delay(uchar z){uchara,b;for(a=z;a>0;a--)for(b=200;b>0;b--);}void HC_164_Set_byte(ucharduan) {uchar i;for(i=0;i<8;i++){HC164_Data =duan& 0x80;HC164_Clk =0;HC164_Clk =1;duan =duan<<1;}}void display_smg(ucharwei,ucharnum){switch(wei){case 1:WEI1=0;WEI2=1;WEI3=1;WEI4=1;HC_164_Set_byte(table[num]);break; case 2: WEI1=1;WEI2=0;WEI3=1;WEI4=1;HC_164_Set_byte(table[num]);break; case 3: WEI1=1;WEI2=1;WEI3=0;WEI4=1;HC_164_Set_byte(table[num]);break; case 4: WEI1=1;WEI2=1;WEI3=1;WEI4=0;HC_164_Set_byte(table[num]);break; default: break;}}void Display(void){ucharh,l;h=Time_EW/10;l=Time_EW;display_smg(1,h);Delay(8);display_smg(2,l); Delay(8);h=Time_SN/10;l=Time_SN; display_smg(3,h); Delay(8);display_smg(4,l); Delay(8);}void Key(){if(key1==0){ Delay(10);if(key1==0){ while(!key1); Flag_key++;if(Flag_key==1) {Flag_Moden=2;}if(Flag_key==2) {Flag_Moden=3;}if(Flag_key==3) {Flag_Moden=4;}if(Flag_key==4) {Flag_Moden=5;FMQ=1;TR0=1;}if(Flag_key==5) {Flag_EW_Yellow=0; //SN关黄灯信号位 Flag_SN_Yellow=0; //SN关黄灯信号位 FMQ=1;Flag_Moden=1;TR0=1;//启动定时Flag_key=0;}}}if(key2==0){while(!key2);Flag_Moden=2;}if(key3==0){while(!key3);Flag_Moden=3;}}void timer0(void)interrupt 1 using 1 {static uchar count;TH0=(65536-50000)/256;TL0=(65536-50000)%6;count++;if(count==10){if(Flag_SN_Yellow==1) //测试南北黄灯标志位{SN_yellow=~SN_yellow;}if(Flag_EW_Yellow==1) //测试东西黄灯标志位{EW_yellow=~EW_yellow;}}if(count==20){if(Flag_Moden==1){Time_EW--;Time_SN--;}if(Flag_SN_Yellow==1)//测试南北黄灯标志位{SN_yellow=~SN_yellow;}if(Flag_EW_Yellow==1)//测试东西黄灯标志位{EW_yellow=~EW_yellow;}count=0;}}//模式1void Zc_moshi(){//*******S0状态**********EW_RXD_red=0; //EW人行道禁止EW_RXD_green=1;//EW人行道禁止SN_RXD_red=1; //EW人行道通行SN_RXD_green=0;//SN人行道通行Flag_EW_Yellow=0; //EW关黄灯显示信号 Flag_SN_Yellow=0; //SN关黄灯显示信号Time_EW=EW; //EW=45;SN=40;Time_SN=SN;SN_green =0; //SN通行,EW红灯SN_red =1;EW_red =0;EW_green =1;while(Time_EW>5){if(key1==0 || key2==0||key3==0){//Flag_Moden=1;TR0=0;//启动定时break;}Display();}SN_yellow=0; //SN黄灯亮开始闪烁5秒 SN_green =1; //灭//*******S1状态**********Time_SN=5;while(Time_EW<=5){if(key1==0 || key2==0||key3==0){//Flag_Moden=1;TR0=0;//启动定时break;}Flag_SN_Yellow=1; //SN开黄灯信号位 Display();}//*******S2状态**********Flag_SN_Yellow=0; //SN关黄灯显示信号 SN_yellow=1; EW_RXD_red=1; //EW人行道通行SN_RXD_green=1;//SN人行道禁止EW_RXD_green=0; //EW人行道通行SN_RXD_red=0;//SN人行道禁止Time_EW=SN; //EW=45;SN=40;Time_SN=EW;SN_green=1;//南北绿灯禁止东西通行 SN_red=0; //亮EW_red=1;EW_green=0; //亮while(Time_SN>5){if(key1==0 || key2==0||key3==0){//Flag_Moden=1;TR0=0;//启动定时break;}Display();}//*******S3状态**********EW_green=1;EW_yellow=0;Time_EW=5;while(Time_SN<=5){if(key1==0 || key2==0||key3==0){TR0=0;//启动定时break;}Flag_EW_Yellow=1; //SN开黄灯信号位 Display(); }Flag_EW_Yellow=0;EW_yellow=1;}////模式2 禁止南北通东西蜂鸣器响void Jsn() {EW_green =0;EW_yellow =1;EW_red =1;SN_red =0;SN_green =1;SN_yellow =1;SN_RXD_red =0;SN_RXD_green =1;EW_RXD_red =1;EW_RXD_green =0;FMQ =~ FMQ;Delay(10);WEI1=1;WEI2=1;WEI3=1;WEI4=1;}////模式3 禁止东西通南北蜂鸣器响void Jew() {EW_green =1;EW_yellow =1;EW_red =0;SN_red =1;SN_green =0;SN_yellow =1;SN_RXD_red =1;SN_RXD_green =0;EW_RXD_red =0;EW_RXD_green =1;FMQ =~ FMQ;Delay(10);WEI1=1;WEI2=1;WEI3=1;WEI4=1; }//模式4 禁止东西南北蜂鸣器响void JEwSn(){EW_green =1;EW_yellow =1;EW_red =0;SN_red =0;SN_green =1;SN_yellow =1;SN_RXD_red =0;SN_RXD_green =1;EW_RXD_red =0;EW_RXD_green =1;FMQ =~ FMQ;Delay(10);WEI1=1;WEI2=1;WEI3=1;WEI4=1;}//模式5 夜间模式,东西南北黄灯闪烁void Yejian() {EW_green =1;//EW_yellow =1;EW_red =1;SN_red =1;SN_green =1;//SN_yellow =1;SN_RXD_red =1;SN_RXD_green =1;EW_RXD_red =1;EW_RXD_green =1;Flag_EW_Yellow=1; //SN开黄灯信号位 Flag_SN_Yellow=1; //SN开黄灯信号位}void main (){P1=0xff;P2=0xff ;P3=0xff;P0=0xff;EW_green =1;EW_yellow =1;EW_red =1;SN_red =1;SN_green =1;SN_yellow =1;SN_RXD_red =1;SN_RXD_green =1;EW_RXD_red =1;EW_RXD_green =1;WEI1=1;WEI2=1;WEI3=1;WEI4=1;IT0=1; //INT0负跳变触发TMOD=0x01;//定时器工作于方式1TH0=(65536-50000)/256;//定时器赋初值 TL0=(65536-50000)%6; EA=1; //CPU开中断总允许ET0=1;//开定时中断// EX0=1;//开外部INTO中断TR0=1;//启动定时while(1){switch(Flag_Moden) {case 1:Zc_moshi(); break; case 2:Jsn(); break;case 3: Jew();break;case 4: JEwSn();break; case 5: Yejian();break; default :break;}Key(); }}。
基于51单片机控制交通灯的毕业设计

安徽工商职业学院ANHUI BUSINESS VOCATIONAL COLLEGE毕业设计(论文)基于单片机控制的交通灯毕业设计系别:电子信息系专业班级:10应用电子技术2班学号: ******学生姓名:**指导老师:**二零一二年十月基于单片机控制的交通灯毕业设计摘要十字路口车辆穿梭,行人熙攘,车行车道,人行人道,有条不紊。
那么靠什么来实现这井然秩序呢?靠的是交通信号灯的自动指挥系统。
交通信号灯控制方式很多。
本设计主要分为五大模块输入:控制电路、时钟控制电路、片内外程序切换控制、显示电路。
以MSC-51系列单片机IntelAT89C51为中心器件来设计交通灯控制器,实现了AT89C51芯片的P0口设置红灯、绿灯、黄灯燃亮时间的功能;为了系统稳定可靠采用了74LS14施密特触发器芯片的消抖电路,避免了系统因输入信号抖动产生误操作;显示时间直接通过AT89C51的P2口输出,由CD4511驱动LED数码管显示红灯燃亮时间。
关键字:AT89C51LED显示交通灯The Traffic Light Based On The Single-chip ControlAbstractThe intersections vehicle wears shuttle, pedestrian Xi Rang, garage driveway, person's sidewalk, orderly. So depend what to carry out this well arranged order? What to depend is a traffic sign light of automatic conductor system. The control method of the traffic sign light is a lot of. This design is mainly divided into five greatest molds a piece the electric circuit, clock of the importation control a control outside procedure inside the electric circuit, slice to cut over a control and shows electric circuit. Take single slice the machine IntelAT89 C51 of the serieses MSC-51s as a center spare part to design transportation light controller, carried out the AT89 C51's P's 0 people's constitution of the chips red, the function in bright time of green light, Huang2 Deng Ran2;For the sake of system stability the credibility adopted a 74 LS14 airtight trigger eliminate of machine chip to tremble electric circuit especially, avoided system because of importation the signal tremble movable property to living a mistake operation; The P 2 people who shows that time directly passes the AT89 C51 output, is driven LED figures a tube by the CD4511 to show red-light Ran bright time.Key word: The AT89 C51 LED show transportation light目录摘要 (2)ABSTRACT (3)前言 (5)一、工程简介 (6)(一)、概述 (6)(二)、工艺流程图 (7)二、工程设计 (7)(一)、控制方案的确定 (7)(二)、硬件部分 (8)(1)、交通灯控制系统的硬件设计 (8)(2)、硬件系统的设计具备以下原则 (8)(3)、硬件结构框图(如图3所示) (8)(4)、交通灯控制系统的原理框图(如图4所示) (8)(5)、8279的结构及引脚功能 (12)(三)、软件部分 (16)(1)、延时子程序的计算 (17)(2)、流程图(如图8所示) (17)三、系统的试调运行 (18)(一)、硬件调试 (18)(1)、静态调试 (18)(2)、动态调试 (18)四、系统设计及总结特点 (19)致谢 (20)参考文献 (20)附录A:源程序 (21)附录B:电路图 (27)前言本课程设计是在学完单片机原理及课程之后综合利用所学单片机知识完成一个单片机应用系统设计并在实验室实现。
课程设计---基于51单片机的交通灯设计

单片机原理及系统课程设计专业:电气工程及其动化班级:电气1003姓名:赵斌学号:201009202指导教师:闵永智兰州交通大学自动化与电气工程学院2013 年 3 月 15 日基于51单片机的交通灯设计摘要随着人们社会活动的日益频繁,交通在人们的日常生活中的地位越来越高,而传统的交通灯存在很多缺陷,功能和维护上都不能满足城市交通道路高速发展的要求,因此对交通灯的研究是很有理论与实践的必要性的。
本文主要介绍了一个基于AT89C51单片机的交通灯信号控制系统,详细描述了利用AT89C51单片机实现的硬件连接、软件编程以及系统流程进行了详尽分析,对关键部分的电路也进行了介绍。
该系统利用了单片机的延时电路、按键复位电路、时钟电路等电路,可以方便地实现十字路口交通灯控制器的设计。
仿真结果表明,该系统除了可以显示交通灯各种状态,完成倒计时功能,还可以实时采集车流量相关数据,进行计算与智能化控制,与传统交通灯相比更具有实用性强、操作简单、扩展性强等优点,对于疏导交通流量、提高道路通行能力有明显效果。
关键字:AT89C51 控制系统;实时采集;智能化控制AbstractAs people's social activities have become increasingly frequent, the position of traffic is higher and higher in people's daily life, while the traditional traffic light has many defects, its maintenance can not meet the rapid development of city traffic demand, so the research of the traffic lights is necessary on a rational theory and practice.This paper introduces a traffic signal control system based on AT89C51 microcontroller which detailedly described the use of AT89C51's hardware connection, software programming and system flow, the circuit of key parts were also introduced in this paper. The system uses a delay circuit, SCM button reset circuit and clock circuit designed the crossroads traffic light controller easily.The simulation results show that, except that the system can show the various states of the traffic lights, complete the countdown function, it also can collect traffic data, calculation and intelligent control. Compared with traditional traffic light it has more strong practicability, more simple operation, expansion and stronger advantages, it has obvious effect to ease traffic flow, to improve the traffic capacity of the road.Keywords: AT89C51 control system real-time intelligent control1引言随着生活水平的逐渐提高,汽车进入家庭的步伐也加快了,城市汽车数量的增多,使得城市道路交通问题越来越重要。
基于51单片机的交通信号灯模拟控制系统

基于51单片机的交通信号灯模拟控制系统一、实验目的和要求1.掌握单片机基本资源使用。
2.掌握单片机电路原理图绘制和仿真。
3.掌握单片机C语言软件开发以及联合仿真。
二、实验内容和原理实验内容:1.根据题目绘制单片机电路原理图。
2.绘制程序流程图并编写C语言程序3.在仿真程序中进行联合仿真,最后提交实验报告三、主要仪器设备keilC,proteus。
四、操作方法与实验步骤4.1 题目要求用单片机设计一个十字路口交通灯模拟控制系统,要求东西、南北两个方向都通行20秒,警告3秒,禁止20秒,同时要考虑到东西、南北两个方向出现异常情况,出现异常情况器该方向通行60秒。
4.2 系统设计思路南北的绿红黄发光二极管与单片机AT89C51单片机的P1.0,P1.1,P1.2相连。
东西的绿红黄发光二极管与单片机AT89C51单片机的P1.4,P1.5,P1.6相连。
改变单片机P1口编码控制交通灯。
控制过程中会出现两种异常情况用外中断0和外中断1处理。
时间单位采用500ms信号,由定时/计数器0定时50ms,循环10次产生,定时/计数器0采用查询方式,主程序中设定定时/计数器0的工作方式:方式1。
4.2 电路图绘制(包含详细的参数选定文字和图像叙述)C1=1nF,C2=1nF,C3=1nF,R1=300,R2=300,R3=300,R4=300,R5=300,R6=300,R7=300,R8=300,R9=300,R10=300,R11=300,R12=300,R13=3004.3 C程序编制(包含详细的文字和程序流程图)4.3 仿真分析(包含文字和图像叙述)东西绿灯,南北红灯东西黄灯,南北红灯南北绿灯,东西红灯南北黄灯,东西红灯东西发生异常时,东西通行,南北禁止,东西方向绿灯闪,南北方向红灯闪南北发生异常时,南北通行,东西禁止,南北方向绿灯闪,东西方向红灯闪五、讨论和心得(不少于100字)通过这次对交通灯信号的模拟,了解了交通灯4种正常状态,2种异常状态,它们分别是:状态1,东西方向绿灯,南北方向红灯20秒。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第四章 整体设计
1.交通控制系统总体设计
设在十字路口,分为东西向和南北向,在任一时刻只有一个方向通行,另一方向禁行。共有4种状态,这4种状态如下,周而复始,循环变化。
关键词:电子线路、STC89C52、交通灯
第1章
1.概述
在城镇街道的十字交叉路口,为了保证交通秩序和行人安全,一般在每条道路上各有一组红黄绿信号灯。其中红灯亮,表示该条道路禁止;黄灯亮表示该条道路上未过停车线的车辆停止通行,已过停车线的车辆继续通行;绿灯亮表示该条道路允许通行。交通灯控制电路自动控制十字路口红黄绿交通灯的状态转换,指挥各种车辆和行人安全通行,实现十字路口交通管理的自动化。
2.设计目的
2.1 通过本次课程设计进一步熟悉和掌握单片机的结构及工作原理,巩固和加深“单片机原理与应用”课程的基本知识,Hale Waihona Puke 握电子设计知识在实际中的简单应用。
2.2 综合运用“单片机原理与应用”课程和先修课程的理论及生产实际知识去分析和解决电子设计问题,进行电子设计的训练。
2.3 学习电子设计的一般方法,掌握STC89C52芯片以及简单电子设计过程和运行方式,培养正确的设计思想和分析问题、解决问题的能力,特别是总体设计能力。
师大学
电气工程及自动化
实习报告
姓 名:
班 级:
学 号:
实习科目:单片机实训
指导教师:
实习时间:
智能交通信号灯
摘 要
本设计是在熟练掌握单片机及其仿真系统使用方法基础上,综合应用单片机原理、微机原理等课程方面的知识,设计一个采用STC89C52单片机控制的交通灯控制电路。该设计结合实际情况给出了一种简单低成本城市交通灯控制系统的硬件及软件设计方案、各个路口交通灯的状态循环显示,并对程序流程图进行详细讲解分析。交通在人们的日常生活中占有重要的地位,随着人们社会活动的日益频繁,这点更是体现的淋漓尽致。交通信号灯的出现,使交通得以有效管制,对于疏导交通流量、提高道路通行能力,减少交通事故有明显效果。近年来随着科技的飞速发展,单片机的应用正在不断深入,同时带动传统控制检测技术日益更新。在实时检测和自动控制的单片机应用系统中,单片机往往作为一个核心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件结构软硬件结合,加以完善。根据给出的要求设计交通灯东西、南北两干道交于一个十字路口各干道有一组红、黄、绿三色的指示灯指挥车辆和行人安全通行。红灯亮禁止通行绿灯亮允许通行。黄灯亮提示人们注意红、绿灯的状态即将切换且黄灯亮的时间为东西、南北两干道的公共停车时间。
4.实验原理
4.1 基本原理
主体电路:交通灯自动控制模块。这部分电路主要由80C51单片机的I/O端口、定时计数器等组成。
本设计先是从普通三色灯的指示开始进行设计,用P1口作为输出。程序的初始化是东西南北方向的红灯全亮。然后南北方向红灯亮,东西方向绿灯亮,60秒后东西方向黄灯闪亮5秒后南北方向绿灯亮,东西方向红灯亮。重复执行。倒计时用到定时器T0,用P2口作为LED的显示。二位一体的LED重复执行60秒的倒计时。作为突发事件的处理,本设计主要用到外部中断EX0。用一模拟开关作为中断信号。实际中可以接其它可以产生中断信号的信号源。
第二章芯片与元件
1.MCU:STC89C52是一种低功耗、高性能CMOS8位微控制器,具有8K 系统可编程Flash存储器。高密度非易失性存储器技术制造,与工业80C51 产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使得STC89C52在众多嵌入式控制应用系统中得到广泛应用。
2.4 通过计算和绘制原理图、布线图和流程图,学会运用标准、规、手册、图册和查阅有关技术资料等,培养电子设计的基本技能。
2.5 通过完成一个包括电路设计和程序开发的完整过程,了解开发单片机应用系统全过程,为今后从事的工作打基础。
3.设计要求
3.1 利用单片机的定时器定时,实现道路的红绿灯交替点亮和熄灭。
⑬双数据指针;
⑭掉电标识符。
2.74HC573:74HC573包含八进制3态非反转透明锁存器,是一种高性能硅门CMOS器件。当锁存使能端LE为高时,这些器件的锁存对于数据是透明的(也就是说输出同步)。当锁存使能变低时,符合建立时间和保持时间的数据会被锁存。主要功能:三态总线驱动输出、置数全并行存取、缓冲控制输入、使能输入有改善抗扰度的滞后作用。
3.2 以STC89C52单片机为核心,设计一个十字路口交通灯控制系统。用单片机控制LED灯模拟交通信号灯显示。假定东西、南北方向方向通行(绿灯)时间为30秒,缓冲(黄灯)时间5秒,停止(红灯)时间30秒。
3.3 南北方向、东西方向车道除了有红、黄、绿灯指示外,每一种灯亮的时间都用显示器进行显示(采用倒计时的方法)。
1.单片机最小系统
图3.1 51单片机最小系统版
2. 数码管显示电路:由8位共阴LED数码管即驱动芯片74HC573组成,单片机控制两片锁存器是使能端,通过不停打开关闭使能端达到单片机一个8位I/O口控制8位数码管显示的效果。数码管显示电路如图3.2所示。
图3.2数码管显示电路
3.12位LED灯:由12个LED小灯排列起来,加上限流电阻就组成了12位交通灯。12位流水灯的阴极接在单片机的I/O端口,以灌电流输进单片机从而驱动LED。交通LED灯的原理图如图3.3所示。
3.led数码管:led数码管(LED Segment Displays)由多个发光二极管封装在一起组成“8”字型的器件,引线已在部连接完成,只需引出它们的各个笔划,公共电极。数码管实际上是由七个发光管组成8字形构成的,加上小数点就是8个。这些段分别由字母a,b,c,d,e,f,g,dp来表示。
第三章电路设计
主要性能:
①与MCS-51单片机产品兼容;
②8K字节在系统可编程Flash存储器;
③1000次擦写周期;
④全静态操作:0Hz-33MHz;
⑤三级加密程序存储器;
⑥32个可编程I/O口线;
⑦三个16位定时器/计数器;
⑧8个中断源;
⑨全双工UART串行通道;
⑩低功耗空闲和掉电模式;
⑪掉电后中断可唤醒;
⑫看门狗定时器;