交通信号灯模拟控制系统课程设计报告书
单片机课程报告设计--交通信号灯模拟控制系统设计
单片机课程报告设计题目:交通信号灯模拟控制系统设计专业:电子信息科学与技术班级:学号:姓名:指导老师:年月日※※※※※※前言※※※※※※本课程设计的目的和意义本课程设计是在学完单片机原理及课程之后综合利用所学单片机知识完成一个单片机应用系统设计并在实验室实现。
该课程设计的主要任务是通过解决一、两个实际问题,巩固和加深“单片机原理与应用”课程中所学的理论知识和实验能力,基本掌握单片机应用电路的一般设计方法,提高电子电路的设计和实验能力,加深对单片机软硬知识的理解,获得初步的应用经验,为以后从事生产和科研工作打下一定的基础。
*******目录*******一、设计要求二、设计内容三、交通信号灯模拟控制系统设计程序流程图四、交通信号灯模拟控制系统原理图五、交通信号灯模拟控制系统主程序六、运行步骤七、检测与调试八、课程设计体会九、参考文献十、说明一、设计要求:交通信号灯模拟控制系统设计利用单片机的定时器定时,令十字路口的红绿灯交替点亮和熄灭,并且用LED数码管显示时间。
用8051做输出口,控制十二个发光二极管燃灭,模拟交通灯管理。
二、设计内容:因为本课程设计是交通灯的控制设计,所以要了解实际交通灯的变化情况和规律。
假设一个十字路口为东西南北走向。
初始状态0为东西红灯,南北红灯。
然后转状态1东西红灯,南北绿灯通车,。
过一段时间转状态2南北绿灯灭,黄灯闪烁几次,东西仍然红灯。
再转状态3,东西绿灯通车,南北红灯。
过一段时间转状态4,东西绿灯灭,闪几次黄灯,南北仍然红灯。
最后循环至状态1。
注意:.双色LED是由一个红色LED管芯和一个绿色LED管芯封装在一起,公用负端。
当红色正端加高电平,绿色正端加低电平时,红灯亮;红色正端加低电平,绿色正端加高电平时,绿灯亮;两端都加高电平时,黄灯亮。
三、交通信号灯模拟控制系统设计程序流程图四、交通信号灯模拟控制系统主程序ORG 0000HSJMP A3ORG 0030HA3: MOV SP,#60H ;设栈指针初值MOV A, #24HMOV P1, ASETB P3.2CLR P3.3CLR P3.4SETB P3.5 ;全部红灯亮MOV R4,#00H ;显示0秒MOV R7,#00H ;显示0秒MOV R2,#03HLCALL XI ;调用子程序A2 : MOV A,#0CHMOV P1,ASETB P3.2SETB P3.3CLR P3.4CLR P3.5 ;东西红灯,南北绿灯MOV R4,#14H ; 显示20秒LOOP2 : MOV R2,#03HLCALL XIDJNZ R4,LOOP2 ;判断20秒显示时间到否MOV R2,#03HLCALL XILOOP8: MOV R2,#03H ;南北黄灯闪3次LCALL XIMOV R4,#05H ;设南北黄灯亮长显示5秒SETB P3.2CLR P3.3A1: MOV A,#14HMOV P1 ,ASETB P3.4CLR P3.5 ;东西红灯,南北黄灯MOV R2,#01H ;定时LCALL DELAY ;调用延时子程序MOV A ,#04HMOV P1 ,ACLR P3.4CLR P3.5 ;东西红灯,南北不亮即意思要南北黄灯闪烁MOV R2 ,#01H ;定时LCALL DELAYDJNZ R4,LOOP8 ;判断南北黄灯闪烁,显示5秒到否?MOV A, #61HMOV P1,ACLR P3.2CLR P3.3CLR P3.4SETB P3.5 ;东西绿灯,南北红灯MOV R4,#14H ;显示20秒LOOP3:MOV R2,#03HLCALL XIDJNZ R4,LOOP3 ;判断20秒显示时间到否MOV R7,#05H ;设东西黄灯亮长显示5秒SETB P3.5A0: MOV A,#0A2HMOV P1,ACLR P3.2CLR P3.3CLR P3.4 ;东西黄灯,南北红灯MOV R2,#01H ;定时LCALL DELAYMOV A,#20H ;MOV P1,ACLR P3.2CLR P3.3CLR P3.4 ;南北红灯,东西不亮即意思要东西黄灯闪烁MOV R2,#01H ;定时LCALL DELAYDJNZ R7,A0 ;判断东西黄灯闪烁,显示5秒到否?LJMP A2 ;循环回状态1,即东西红灯,南北黄灯DELAY: PUSH 2PUSH 1PUSH 0 ;进栈DELAY1: MOV 1,#00HDELAY2:MOV 0,#0B2HDJNZ 0,$ ;判断是否运行完0B2HDJNZ 1,DELAY2DJNZ 2,DELAY1POP 0POP 1POP 2 ;出栈DJNZ R2 ,DELAY ;判断R2是否运行完RET ;返回主程序XI: MOV A,R4MOV B,#10DIV ABMOV R6,AMOV DPTR,#TABMOV A,BMOVC A,@A+DPTRMOV SBUF,AMOV R7,#0FHH55S: DJNZ R7,H55SMOV A,R6MOVC A,@A+DPTRMOV SBUF,AMOV R7,#0FHH55S1: DJNZ R7,H55S1LCALL DELAYRETTAB:DB 0fch,60h,0dah,0f2h,66h,0b6h,0beh,0e0hDB 0feh,0f6h,0eeh,3eh,9ch,7ah,9eh,8ehEND五、交通信号灯模拟控制系统原理图设计的连线图提示:(1) 完整的DVCC实验箱面板(2)硬件电路连接说明六、运行步骤:①8051 P1.0—P1.7、P3.2—P3.5依次接发光二极管L1—L12。
交通信号灯控制器课程设计报告
交通信号灯控制器课程设计报交通信号灯控制器课程报告一.设计要求1、设计一个交通信号灯控制器,由一条主干道和一条支干道汇合成十字路口,在每个入口处设置红、绿、黄三色信号灯,红灯亮禁止通行, 绿灯亮允许通行,黄灯亮则给行驶中的车辆有时间停在禁行线外。
2、主、支干道交替允许通行,主干道每次放行45秒,支干道每次放行25秒,设立45秒、25 秒计时、显示电路。
3、在每次由绿灯亮到红灯亮的转换过程中,要亮5秒黄灯作为过渡。
提示:选择1HZ时钟脉冲作为系统时钟。
45秒、25秒、5秒定时信号用倒计时,计控制。
根据交通灯的亮的规则,在初始状态下四个方向的都为红灯亮启,进入正常工作状态后,当主干道上绿灯亮时,支干道上红灯亮,持续45S后,主干道和支干道上的黄灯都亮启,持续5S后,主干道上红灯亮启,支干道上绿灯亮启持续25S,之后主干道和支干道上的黄灯都亮启5s, 一个循环完成。
循环往复的执行这个过程。
设计中用两组红黄绿LED模拟两个方向上的交通灯,用4个7段数码管分别显示两个方向上的交通灯剩余时间,控制时钟由试验箱上频率信号1、2、时起始信号由主控电路给出,每当计满所需时间,计数器清零,由主控电路启、闭三色信号灯或启动另一计时电路。
二.设计思路本设计针对一条主干道和一条支干道汇合成的十字路口,进行南北和东西直行情况下交通灯提供。
根据状态机的设计规范,本次设计了四个状态之间的循环转化,其真值表及状态转化图如下所示三.程序说明1 •各输入输出变量说明:elk:计数时钟qclk:扫描显示时钟rst:复位信号,当rst为1时,控制器和计数器回到初始状态en:使能信号,当en为1时控制器开始工作,en为0时hold:特殊情况控制信号,hold为1时,主、支干道方向无条件显示为红灯seg:用于数码管的译码输出dig:用于选择显示的数码管(片选)numl:用于主干道方向灯的时间显示num2:用于支干道方向灯的时间显示light 1:控制主干道方向四盏灯的亮灭,其中,lightl[O卜lightl[2]分别控制主干道方向的绿灯、黄灯和红灯Hght2;控制支干道方向四盏灯的亮灭,其中,Hght2[0]-light2[2]分别控制支干道方向的绿灯、黄灯和红灯2 •输入输出及中间变量设置:module traffic(en,clk9qclk,rst,hold,numl,num2Jightl Jig ht2,seg,dig;input en,clk,qclk,rst9hold;output [5:0]dig;output[7:0] numl9num2;output[6:0]seg;output[2:0]lightl,light2;reg timl,tim2;reg [3:0]disp_dat;reg[6:0]seg;reg[7:0]numl,num2;reg [7:0] red 1 ,red2,green 1 ,green2,y ello wl ,y ello w2 reg[5:0]dig;reg [l:0]count;reg [ 1: OJstate 1 ,state2;reg [2: OJlight 1 Jight2;always @(en)if(!en) begingreenl<=8*b01000101;redl<=8fb00100101; yellow 1 <=8' bOOOOO 101; green2<=8*b00100101; red2<=8f b01000101; yellow2<=8,b00000101; end4 •主干道方向点亮顺序:always @ (posedge elk) //主干道 begin if(rst) beginlightl<=3f b001; numl<=greenl; end else if(hold) begin3 •初始状态设flightl<=3fbl00; numl<=greenl; end else if(en)begin if(!timl) begin case(statel)2fb00:begin numl<=greenl; statel<=2f b01; end2f b01: begin num 1 <=yellowl; statel<=2f bll; end 2'bll:b£gin numl<=redl; statel<=2f bl0; end2' b 10: begin num 1 <=yellow 1;statel<=2f b00; end default:lightl<=3,bl00; endcase endelse 〃主干道倒数计时 begin if(numl>0)if(numl[3:0]==0) begin numl[3:0]<=4,bl001; numl[7:4]<=numl[7:4]-l;lightl<=3,b001; lightlv=3'b010; lightl<=3f bl00;lightl<=3f b0X0;endelse numl[3:0]<=numl[3:0]-l;if(numl==l)timl<=0;endendelsebegin lightl<=3,b010; numl=2T b00; timl<=0; endend5 •支干道方向点亮顺序:always @ (posedge elk) //支干道beginif(rst)beginlight2v=3'bl00;num2<=red2;endelse if(hold)beginlight2v=3'bl00; num2<=red2; endelse if(en)beginif(!tim2)begintim2<=l;case(statel)2!b00:begin num2<=red2; state2<=2 f b01; end 2f b01: beginnum2<=yellow2; state2<=2f bll; end 2f bll: begin num2<=green2;state2<=2 *blO; end2' b 10: begin num2<=yellow2; state2<=2' bOO; end light2<=3f bl00; light2<=3,b010; light2<=3f b001; light2<=3f b010;default:light2<=3,bl00;endcaseendelse 〃支干道倒数计时beginif(num2>0)if(num2 [3:0]==0)beginnum2[3:0]<=4,bl001;num2 [7:4] <=num2 [7:4]-l; end else num2[3:0]<=num2[3:0] -1; if(num2==l)tim2<=0;end endelsebeginlight2<=3f b010; state2v=2'b00; tim2<=0;endend6 •数码管译码及显示:always @(posedge qclk) 〃定义上升沿触发进程begincount <= count +l T bl;end always @ (count) begincase(count)〃选择扫描显示数据2'dO : disp_dat <= numl[3:0]; 〃第一个数码管2'dl : disp_dat <= numl[7:4]; 〃第二个数码管2'd2 : disp_dat <= num2[3:0]; 〃第三个数码管2'd3 : disp_dat <= num2[7:4]; 〃第四default: disp_dat <= 0; endcaseendalways @ (count) begin case(count)数码管显示位2f d0 : dig<= 6P011111;//选择第一个数码 管显示 2f dl : dig<= 6P101111;//选择第二个数码 管显示 2P2 : dig <= 6P110111;//选择第三个数码 管显示2P3 : dig<= 6P111011;//选择第四个数码管显示default: dig<= 6^111111;endcase endalw 町s @ (disp_dat) begincase (disp_dat)〃七段译码个数码管〃选择4f b0000 : seg<= 7^0111111;〃显示” (T4'b0001 : seg <= 7^0000110; //显示T”4'b0010 : seg<= 7^1011011;〃显示”2”4f b0011 : seg<= 7^1001111;〃显示'3'4'b0100 : seg <=7^1100110; 〃显示”4”4^0101 : seg<= 7^1101101;〃显示”5”4^0110 : seg<= 7^1111101;〃显示”6”4'b0111 : seg<= 7^0000111;〃显示”7”4'bl000 : seg <= 7^1111111;4'bl001 seg <=g 曲*CW ulaion Kg LeC«l Hoti<Sxwiai Jlc XU*Sirrdat^rSatlioxiO Situldli (Brer w 釘| ◎ Ccrrc45boftRew!•... | 色 Ek.w* >•・ V«vef«r»sS>«ol*l i ・e ・od« TiaincI E *:.w7^1101111; // 显示”9”default:7P0111111;//不显示endcaseend endmodule三.仿真波形图IT - D;/t fic2/traffic - traffic 一 (Siaiolat ion Report - Sivulst ion曹 Z>Lo RdiQ vier "ojce, £s5i«rr-an« I«ol5 J>r 如生”seg<=1041kYiooiLin 1】10】1】 1】IO 】LomulOllll J10H1COO(01ICC010D 」I1UI0JumocjijuuvwuuuumifinwiRnjuinmfuuuiiifinnwuuuinjinmnjuu ififimuuuuuinnnjvuuuiJiG BOil Mil=3to 订“co 贩no»3 nca2 QClk r»t rst]38 <j>?TMoslcs Trr^Bar271邛 StatIcteivd 1205 m272MQ licl.il Q ltxhiz9:fl四.实物图。
交通灯控制系统设计报告
交通信号灯控制系统设计一、设计目的1、学习LED数码管的原理及编程方法。
2、学习键盘的原理及编程方法。
3、掌握51单片机定时器与中断的使用。
4、掌握交通信号灯控制系统的原理和实现方法。
二、设计内容设计一个交通信号灯控制系统,要求:初始状态为两个方向的红灯全亮,时间6秒。
主干道绿灯亮,支干道红灯亮,主干道通车,时间为20秒。
主干道黄灯闪烁,支干道红灯亮,时间为6秒。
主干道红灯亮,支干道绿灯亮,支干道通车,时间为15秒。
主干道红灯亮,支干道黄灯闪烁,时间为6秒。
循环显示。
三、基本原理在车辆通行繁忙的十字交叉路口设置的交通灯控制系统,其特点是:道路较窄而车流量较大,主干道,支干道的车辆通行时间不等,,同时设有道路应急控制。
具体的情况是:在正常的情况下,东西支干道通行时间为20秒,南北主干道通行时间为15秒,每个方向在绿灯转为红灯时,要求黄灯先亮6秒钟,才能变换运行车道。
并且能够在人工监控状态下,如果一道有车而另一道无车,交通灯控制系统能立即让有车道放行。
而且有紧急车辆要求通过时,系统要能禁止普通车辆通行。
国内的交通灯一般设在十字路门,在醒目位置用红、绿、黄三种颜色的指示灯。
加上一个倒计时的显示计时器来控制行车。
对于一般情况下的安全行车,车辆分流尚能发挥作用,但根据实际行车过程中出现的情况,还存在以下缺点:1.两车道的车辆轮流放行时间相同且固定,在十字路口,经常一个车道为主干道,车辆较多,放行时间应该长些;另一车道为副干道,车辆较少,放行时间应该短些。
2.没有考虑紧急车通过时,两车道应采取的措施,臂如,消防车执行紧急任务通过时,两车道的车都应停止,让紧急车通过。
基于传统交通灯控制系统设计过于死板,红绿灯交替是间过于程式化的缺点,智能交通灯控制系统的设计就更显示出了它的研究意义,它能根据道路交通拥护,交叉路口经常出现拥堵的情况。
利用单片机控制技术.提出了软件和硬件设计方案,能够实现道路的最大通行效率。
1.芯片的选择与简单介绍主控芯片采用AT89C52单片机。
交通信号灯课程设计报告
交通信号灯课程设计报告交通信号灯自动控制系统*******目录*******一、设计内容二、设计要求三、交通信号灯模拟控制系统设计程序流程图四、交通信号灯模拟控制系统原理图五、交通信号灯模拟控制系统主程序六、运行步骤七、检测与调试八、课程设计体会九、参考文献十、说明一、设计内容:设计并制作一个如上图所示的十字路口交通信号自动控制模拟指示系统。
设该路口由A、B两条通行干道相交而成,四个路口各设一组红、黄、绿三色信号灯,用两位数码管作倒计时显示。
二、设计要求:1.系统基本功能要求(1)以秒为计时单位,两位数码管以十进制递减计数形式作定时显示,在递减计数回零瞬间完成换灯操作。
(2)通过键盘红、黄、绿三色信号灯所亮时间在0~99秒内任意设定。
(3)十字路口的通行起始状态可人工设定,运行中可通过人工干预使十字路口通行状况固定于任何一种工作模式。
2.发挥部分(1)具有时间控制功能,交通信号灯工作时间:05:00~23:00;其余时间两个干道上的黄色信号灯闪烁显示;(2)绿色信号灯倒计时最后3秒和黄色信号灯显示时闪烁显示。
(闪烁频率:1Hz);(3)其它功能。
三、交通信号灯模拟控制系统设计程序流程图1、主程序流程图:开始东西和南北黄灯亮,进入倒计时,打开数码管显示东西红灯亮,南北绿灯亮,进入倒计时,打开数码管显示图5 2、中断服务程序流程图:按键按下按键按下转去中断服务子程序转去中断服务子程序设置个位计数值设置十位计数值中断返回中断返回确定按键按下转去中断服务子程序分别进行三组灯的组合状态的时间倒计数并进入此三种状态的一下死循环中断返回图8 3、交通灯工作换灯流程:否是是否四、交通信号灯模拟控制系统原理图1.直流电源图:南北红灯亮,R0=#0东西和南北南北绿灯亮,R0=#02.交通信号灯模拟控制系统原理图:五、交通信号灯模拟控制系统主程序#include <reg51.h>#include<stdio.h>#define uint unsigned int#define ucher unsigned charucher codetable[]={0x40,0x40,0xf9,0x24,0x30,0x19,0x12,0x02,0x78,0x00 ,0x10};sbit k0=P3^0;sbit k1=P3^1;sbit k2=P3^2;sbit k3=P3^3;sbit k4=P3^4;sbit k5=P3^5;sbit k6=P3^6;sbit k7=P3^7;ucher tt,tt1,tt2,sec,min,shi; //初始定义void time1();void delay(uint z);void main (){int i,j,num1,num2,l,n,m,h1,h2,h3;ucher aa,bb,dd,ee;EA=1;TMOD=0x01;TH0=(65536-50000)/256;TL0=(65536-50000)%256; //中断定义ET0=1;EX0=1;EX1=1;num1=1;num2=1;P3=0xef;aa=0xb6;bb=0x96;dd=0x6b;ee=0x69;shi=8;P0=0xf2;if(k0==1)delay(5);if(k0==1)while(k0){if(k7==0){delay(5);if(k7==0)num1++;while(!k7);if(num1==11) //交通灯初值及工作状态设置num1=1;}if(k6==0){delay(5);if(k6==0)num2++;while(!k6);if(num2==11)num2=1;}P1=table[num1];P2=table[num2];if(k1==0){delay(5);if(k1==0)aa=0x6b;bb=0x69;dd=0xb6;ee=0x96;}}}}else{num1=4;num2=1;}m=num1;n=num2;if(k0==0) //调节当前时间(即对时){delay(5);if(k0==0){while(!k0){if(k7==0){delay(5);if(k7==0)shi++;if(shi==24)shi=0; //调时h1=shi;h2=h1/10+1;h3=h1%10+1;P2=table[h3];P1=table[h2];while(!k7);}}if(k6==0){delay(5);if(k6==0){min++;if(min==60)min=0;h1=min;h2=h1/10+1;h3=h1%10+1; //调分P2=table[h3];P1=table[h2];while(!k6);}}if(k1==0){delay(5);if(k1==0){sec++;if(sec==60)sec=0;h1=sec;h2=h1/10+1;h3=h1%10+1; //调秒P2=table[h3];P1=table[h2];while(!k1);}}}}}TR0=1; //开启定时器中断if(num1==1)while(1){j=n;i=m; //工作循环程序for(j=n;j>0;j--)if(j<5){l=j;break;}P0=aa;P1=table[i];P2=table[j];delay(1000);if((shi>22)||(shi<5)) time1();}if(j==l)for(j=l;j>0;j--){P1=table[i];P2=table[j];P0=bb;delay(500);P0=aa;delay(500);}for(j=n;j>0;j--){if(j<5){l=j;break;}P0=dd;if((shi>22)||(shi<5)) time1();P1=table[i];P2=table[j];delay(1000);}if(j==l)for(j=l;j>0;j--){P1=table[i];P2=table[j];P0=ee;delay(500);P0=dd;delay(500);}}while(1){num2=n;num1=m;for(j=n;j>0;j--){i=m;P0=aa;P1=table[i];P2=table[j];delay(1000);if((shi>22)||(shi<5)) time1();}num1--;for(i=num1;i>0;i--) {for(j=10;j>0;j--){if((shi>22)||(shi<5)) time1();if(i==1)if(j<5)break;P0=aa;P1=table[i];P2=table[j];delay(1000);}if(i==1)for(j=4;j>0;j--){P1=table[i];P2=table[j];P0=bb;delay(500);P0=aa;delay(500);}}num1=m;for(j=n;j>0;j--){i=m;P0=dd;P1=table[i];P2=table[j];delay(1000);if((shi>22)||(shi<5)) time1();}num1--;for(i=num1;i>0;i--) {for(j=10;j>0;j--){if((shi>22)||(shi<5)) time1();if(i==1)if(j<5)break;P0=dd;P1=table[i];P2=table[j];delay(1000);}if(i==1)for(j=4;j>0;j--){P1=table[i];P2=table[j];P0=ee;delay(500);P0=dd;delay(500);}}}}void delay(uint z){uint t1,y; // 延时函数for(t1=z;t1>0;t1--)for(y=125;y>0;y--);}void time1(){for(;(shi>22)||(shi<5);){P0=0xdd;delay(500);P0=0xff;delay(500); //23点到5点的工作函数P1=table[1];P2=table[1];}}void enter0() interrupt 0{delay(5);if(k2==0){ //外部中断0 函数P1=0x00;P2=0x00;P0=0xb6;}}void enter1() interrupt 2{delay(5);if(k3==0){ //外部中断1 函数P1=0x40;P2=0x40;P0=0x6b;}}void enter2() interrupt 1{TH0=(65536-50000)/256;TL0=(65536-50000)%256;tt++;if(tt==20){sec++;tt=0; //外部中断0 函数}if(sec==60){min++;sec=0;}if(min==60){min=0;shi++;}if(shi==24)shi=0;}六、运行步骤①给单片机(交通灯系统)上电(或者已上电按复位键)。
交通信号灯控制系统设计实验报告
交通信号灯控制系统设计实验报告设计目的:本设计旨在创建一个交通信号灯控制系统,该系统可以掌控红、绿、黄三种交通信号灯的工作,使其形成一种规律的交替、循环、节奏,使车辆和行人得以安全通行。
设计原理:在实际的交通灯系统中,通过交通灯控制器控制交通灯的工作。
一般采用计时器或微电脑控制器来完成,其中微电脑控制器可以方便地集成多种控制模式,并且灵活易于升级。
在本设计中,我们采用了基于Atmega16微控制器的交通信号灯控制系统。
该系统通过定时器中断、串口通信等技术来实现。
由于控制的是三个信号灯的交替,流程如下:绿灯亮:红灯和黄灯熄灭绿灯由亮到灭的时间为10秒黄灯亮:红灯和绿灯熄灭黄灯由亮到灭的时间为3秒红灯亮:绿灯和黄灯熄灭红灯由亮到灭的时间为7秒重复以上过程硬件设计:整个系统硬件设计包含ATmega16控制器、射频芯片、电源模块和4个灯组件。
ATmega16控制器采用DIP封装,作为主要的控制模块。
由于需要串口通信和遥控器控制,因此添加了RF24L01射频芯片。
该射频芯片可以很方便地实现无线通信和小型无线网络。
4个灯组件采用红、绿、黄三色LED灯与对应300Ω电阻并连。
电源模块采用5V稳压电源芯片和电容滤波,确保整个系统稳定可靠。
软件设计:通过ATmega16控制器来实现交通信号灯控制系统的功能。
控制器开始执行时进行初始化,然后进入主循环。
在主循环中,首先进行红灯亮的操作,接着在计时时间到达后执行黄灯亮的过程,然后执行绿灯亮的过程,再到计时时间到的时候执行红灯亮的过程。
每个灯持续时间的计时采用了定时器的方式实现,在亮灯过程中,每秒钟进行一次计数,到达相应的计数值后,切换到下一步灯的操作。
在RF24L01射频芯片的支持下,可以使用无线遥控器来对交通信号灯的控制进行远程控制。
在系统初始化完成后,通过串口通信对RF24L01进行初始化,然后进入控制循环。
在这个控制循环中,接收到遥控器的指令后,进行相应的控制操作,如开、关灯等。
电子技术课程设计报告--交通灯控制系统
交通信号灯控制系统设计报告一.实验目的1.掌握综合应用数电理论知识和中规模集成电路设计方法2.掌握调试及电路主要技术指标的测试方法。
3 了解交通灯管理的基本工作原理。
二、交通灯控制器任务及要求1、能显示十字路口东西、南北两个方向的红、黄、绿的指示状态用两组红、黄、绿三色灯作为两个方向的红、黄、绿灯。
2、能实现正常的到计时功能用两组数码管作为东西和南北方向的到计时显示,主干道每次放行(绿灯)60秒,支干道每次放行(绿灯)45秒,在每次由绿灯变成红灯的转换过程中,要亮黄灯5秒作为过渡。
3、能实现特殊状态的功能(选做)(1〉按sl键后,能实现特殊状态功能:(2)显示到计时的两组数码管闪烁;(3)计数器停止计数并保持在原来的状态:(4)东西、南北、路口均显示红灯状态:(5)特殊状态解除后能继续计数。
4、能实现总体清零功能:按下该键后,系统实现总清零,计数器由初始状态计数,对应状态的指示灯亮。
5、完成电路全部设计后,通过实验箱验证设计课题的正确性。
三.比较和优选设计方案1.方案1:利用单片机来设计1)显示界面该系统要求完成倒计时、状态灯等功能。
完全采用数码管显示。
这种方案虽只显示有限的符号和数码字苻,但是完全胜任题目要求。
2)输入:题目要求系统能手动设灯亮时间、紧急情况处理。
直接在IO口线上接上按键开关。
因为设计时精简和优化了电路,所以剩余的口资源还比较多,我们使用四个按键,分别是K1、K2、K3、K4。
由于该系统对于交通灯及数码管的控制,只用单片机本身的I/O 口就可实现,且本身的计数器及RAM已经够用。
3)输出:控制发光二极管,来表示红绿灯的亮灭,及山烁。
系统由单片机系统、键盘、LED 显示、交通灯演示系统组成。
方案2:利用中规模集成芯片来实现。
其中信号灯的亮灭有三种可选方案:1)利用74LS161:2)利用存储器:3)利用扭环循环控制。
方案选择:由于这次实验是电工电子实验。
利用方案1不太满足要求。
方案2中利用扭环循环控制信号灯的亮灭,不容易实现特殊功能状态;利用存储器需要对芯片编码,有时会出现编码混乱的情况,这样会造成电路检测的不便。
交通灯控制系统课程设计报告(参考)
衢州学院微机原理及应用课程设计报告交通灯控制系统姓名:学号:专业班级:指导老师:所在学院:年月日摘要关键词:单片机,交通灯本设计是在熟练掌握单片机及其仿真系统使用方法基础上,综合应用单片机原理、微机原理、电子技术等课程方面的知识,设计一个采用AT89S52单片机控制的交通灯控制电路。
该设计给出了一种简单低成本交通灯控制系统的硬件和软件设计方案、及其各个路口交通灯的状态循环显示,并通过程序流程图详细进行讲解与分析。
十字路口车辆穿梭,行人熙攘,车行车道,人行人道,有条不紊。
那么靠什么来实现这井然秩序呢?靠的就是交通信号灯的自动指挥系统。
交通信号灯控制方式很多。
本系统采用MSC-51系列单片机ATS89S52设计交通灯控制器,红绿灯循环点亮,倒计时剩5秒时黄灯闪烁警示,红绿灯信号通过P2口输出,显示时间直接通过单片机P0口和选择端送至双位数码管,通过扫描程序实现东西和南北方向数据的显示,同时能用控制按键设置红、绿灯点亮时间,当遇到特殊情况时,可设置仅南北方向通行或东西方向上通行,或者两个方向上都为红灯,在此情况下,报警器会发出报警,提醒过往行人。
本系统实用性强、操作简单。
本设计是模仿交通灯控制系统设计的一个交通灯控制电路。
系统硬件的设计部分采用AT89S52单片机为核心器件,加以复位电路,时序电路构成最小系统,并通过驱动电路、数码管及晶体管构成显示部分。
通过中断扩展实现交通灯系统特殊情况的转换。
系统软件的设计部分分为一个主程序和两个中断子程序,一个用于有紧急车辆通过时,系统要能禁止普通车辆通行,实行中断可使A(东西道)、B(南北道)两道均亮红灯;另一个用于一道有车而另一道无车时,通过控制交通灯系统能立即让有车道放行,假如A道有车B道无车,按一下K0可以控制交通灯系统能立即让东西道放行,再按恢复;假如南北道有车东西道无车,按一下K1可以控制交通灯系统能立即南北道放行,再按恢复。
目录1.概述 (3)1.1本次课程设计的意义 (3)1.2本次课程设计的任务及要求 (3)2 系统总体方案及硬件设计 (4)2.1总体设计方案 (4)2.2系统硬件电路设计 (4)3.软件设计 (8)3.1系统分析 (8)3.2参数计算 (8)3.3程序设计 (9)4.课程设计的体会 (14)参考文献 (15)附1:源程序代码 (15)附2:系统原理图 (23)1.概述1.1本次课程设计的意义在现代社会,单片机已经广泛深入应用到工业控制、智能仪表、机械、航空、家电、金融等各个领域。
交通灯课程设计报告
交通灯课程设计报告1. 引言本报告旨在介绍交通灯课程的设计过程和结果。
交通灯是城市交通管理中非常重要的一部分,对交通安全和交通流畅起着至关重要的作用。
通过设计一个交通灯系统,我们可以更好地理解交通灯的工作原理,并且通过编程实现其自动控制。
2. 设计目标本次交通灯课程设计的目标是设计一个能够模拟真实交通灯工作的系统。
设计要求如下:•实现交通流量检测功能,能够根据交通状况自动调整信号灯。
•设计交通灯的工作模式,包括红灯、黄灯和绿灯。
•使用合适的数据结构存储和管理交通灯的状态和参数。
•利用合适的算法控制交通灯的状态转换和时序。
3. 设计过程本次课程设计的主要步骤如下:3.1 系统结构设计首先,我们需要通过分析交通流量检测原理,设计一个合适的系统结构。
我们决定使用传感器来检测车辆和行人的存在。
传感器将向系统发送信号,并根据信号判断交通状况。
根据交通状况,系统将控制信号灯的状态切换和时序。
3.2 数据结构设计为了存储和管理交通灯的状态和参数,我们设计了以下数据结构:- Light- id: 交通灯的唯一标识符- state: 当前交通灯的状态,包括红灯、黄灯和绿灯- timer: 交通灯状态持续的时间- next_light: 下一个要切换的交通灯我们使用一个列表来存储所有的交通灯,并利用该数据结构对交通灯进行状态管理和控制。
3.3 算法设计为了实现交通流量检测和交通灯状态切换的功能,我们设计了以下算法:1. 获取传感器信号2. 根据传感器信号判断交通状况3. 根据交通状况决定是否进行交通灯状态切换4. 如果需要切换状态,则根据当前交通灯状态和时序计算下一个状态和下一个要切换的交通灯5. 更新交通灯的状态和时序6. 回到步骤1,进行下一轮状态切换4. 设计实现基于以上设计过程,我们使用Python编程语言实现了一个简单的交通灯系统。
具体实现细节可以参考以下代码片段:```python class Light: def init(self, id): self.id = id self.state =。
交通信号灯实训报告书
一、实验目的1. 了解交通信号灯的基本组成和工作原理。
2. 掌握交通信号灯控制系统的设计方法。
3. 熟悉交通信号灯控制系统的调试和测试过程。
4. 提高动手能力和实际应用能力。
二、实验器材1. 交通信号灯控制器2. 交通信号灯(红、黄、绿)3. 电源4. 导线5. 单片机开发板6. 相关软件(如Keil、Proteus等)三、实验原理交通信号灯控制系统是利用单片机等电子设备实现对交通信号灯的自动控制。
其基本原理如下:1. 传感器检测车辆和行人的数量,将信号传输给单片机。
2. 单片机根据预设的程序和传感器信号,控制交通信号灯的亮灭。
3. 交通信号灯按照预设的时间顺序依次变换,实现交通指挥。
四、实验步骤1. 电路连接:按照实验电路图连接交通信号灯控制器、交通信号灯、电源、导线等器材。
2. 程序编写:使用单片机编程软件(如Keil)编写交通信号灯控制程序。
程序主要包括以下几个部分:- 初始化:设置单片机的端口、定时器等。
- 主循环:检测传感器信号,控制交通信号灯的亮灭。
- 中断服务程序:处理紧急情况,如行人闯红灯等。
3. 仿真调试:使用仿真软件(如Proteus)对程序进行仿真调试,观察交通信号灯的控制效果。
4. 实际测试:将单片机开发板与实际交通信号灯连接,进行实际测试,观察交通信号灯的控制效果。
五、实验结果与分析1. 实验结果:通过实验,成功实现了交通信号灯的自动控制,交通信号灯按照预设的时间顺序依次变换,实现了交通指挥。
2. 分析:- 程序编写过程中,需要根据实际情况调整程序参数,如传感器阈值、信号灯变换时间等。
- 实际测试过程中,需要考虑多种因素,如天气、车流量、行人流量等,以保证交通信号灯的控制效果。
六、实验总结1. 通过本次实验,掌握了交通信号灯控制系统的设计方法,提高了动手能力和实际应用能力。
2. 熟悉了单片机编程和仿真调试方法,为以后的学习和工作打下了基础。
3. 认识到交通信号灯控制系统在实际应用中的重要性,为以后从事相关领域的工作积累了经验。
交通信号灯控制系统_课程设计报告
单片机原理及应用课程设计报告设计题目:交通信号灯控制系统班级:11级电气三班指导教师:曹琳琳学生姓名:张杰哈尔滨远东理工学院机器人科学与技术学院2013年5月30日交通信号灯控制系统[摘要]: 随着经济发展, 汽车数量急剧增加, 城市道路日渐拥挤, 交通拥塞已成为一个国际性地问题. 因此, 设计可靠、安全、便捷地多功能交通灯控制系统有极大地现实必要性.设计中包括硬件电路地设计和程序设计两大步骤,对单片机学习中地几个重要内容都有涉足.对单片机初学者一定地帮助, 同时, 设计也可运用于简单地实时交通灯控制, 具有一定地现实意义.特别是街道各十字路倒计时显示通行时间, 并有急车强行通过、交通异常状况判别及处理等功能, 该系统具有设计周期短、可靠性高、维护方便、使用简单等优点.更是成为交通网中通行能力地“隘口”和交通事故地“多发源”.为保证交通安全, 防止交通阻塞, 使城市交通井然有序, 交通信号灯在大多数城市得到了广泛应用.传统地交通信号灯控制一般采用电子线路和继电器控制, 结构复杂, 可靠性低, 故障率高, 因此研究计算机与自动控制技术, 设计新型地交通灯控制系统, 对缓解交通阻塞, 提高畅通率具有十分现实地意义.以下通过介绍一种基于8 0 51地交通灯控制系统, 东西、南北地通行时间可调, 能倒计时显示通行时间, 并有急车强行通过、交通异常状况判别及处理等功能, 该系统具有设计周期短、可靠性高、维护方便、使用简单等优点.[关键词]: 交通灯。
单片机。
自动控制。
程序设计;倒计时。
急车强通控制。
异常状况判别及处理.1、交通灯系统工作原理及设计方案1.1交通灯工作原理采用单片机I/ O口P1直接和交通灯连接, 控制程序放在8051单片机ROM中.十字路口4组红、黄、绿交通灯中, 东西方向地交通灯工作状态相同, 可以用同一组I/O控制。
南北方向地交通灯工作状态也相同,也可以用同一组I/O控制,所以只需要用到单片机地P1.0到P1. 5控制.由于交通灯为发光二极管且阳极通过限流电阻和电源正极连接, 因此I/O输出低电平时与之相连接地相应指示灯会亮,I/O口输出高电平时相应指示灯会灭. 紧急车请求通过地信号由人工控制, 以中断方式输入单片机.无紧急车通过时,中断引脚INT0(P3.2)通过电阻和电源正极连接为高电平,不产生中断,单片机执行主程序。
交通信号灯控制系统课程设计
交通信号灯控制系统课程设计一、引言交通信号灯控制系统是城市交通管理中非常重要的一环。
合理的交通信号灯控制可以提高交通流量,减少交通拥堵,提高道路通行效率,确保交通安全。
本文将以交通信号灯控制系统课程设计为题,对该系统的设计进行详细讨论。
二、系统需求分析交通信号灯控制系统主要用于控制路口交通信号灯的开关以及信号灯的亮灭时长。
系统的需求主要包括以下几个方面:1. 能够根据交通流量和道路状况自动调整信号灯的时长,以实现最优的交通流控制;2. 能够监测交通信号灯的工作状态,及时发现故障并进行报警;3. 能够通过远程控制或本地操作对信号灯进行手动调整;4. 具备数据存储和分析功能,能够对交通流量进行统计和分析。
三、系统设计1. 硬件设计交通信号灯控制系统的硬件设计主要包括信号灯控制器、传感器、通信模块和显示屏等组成部分。
信号灯控制器负责控制信号灯的开关和时长,传感器用于检测交通流量和道路状况,通信模块用于远程控制和数据传输,显示屏用于显示交通信号和系统状态。
2. 软件设计交通信号灯控制系统的软件设计主要包括信号灯控制算法、故障检测和报警系统以及数据存储和分析模块。
信号灯控制算法根据传感器检测到的交通流量和道路状况,自动调整信号灯的开关和时长,以实现最优的交通流控制。
故障检测和报警系统能够监测信号灯的工作状态,及时发现故障并进行报警。
数据存储和分析模块用于对交通流量进行统计和分析,为交通管理部门提供决策支持。
四、系统实施交通信号灯控制系统的实施包括系统的安装和调试、系统的运行和监控以及数据的存储和分析。
在系统安装和调试阶段,需要将硬件设备安装到路口,并进行相应的连接和配置;在系统运行和监控阶段,需要对系统进行实时监控,及时发现和处理故障;在数据存储和分析阶段,需要对采集到的数据进行存储和分析,生成相关的报表和图表。
五、系统评估交通信号灯控制系统的评估主要包括系统的性能评估和应用效果评估。
系统的性能评估主要包括系统的稳定性、可靠性、响应时间等指标的评估;应用效果评估主要包括交通流量的变化、道路通行效率的提高以及交通事故的减少等指标的评估。
交通灯控制系统设计-实验报告
交通灯控制系统设计-实验报告
实验目的:设计一个交通灯控制系统,实现对交通灯的自动控制。
实验材料:
1. Arduino UNO开发板
2. 红绿黄LED灯各1个
3. 杜邦线若干
实验原理:
交通灯系统的控制主要是通过控制LED灯的亮灭来实现。
红
色LED灯表示停止,绿色LED灯表示通行,黄色LED灯表
示警示。
通过控制不同LED灯的亮灭状态,可以模拟交通灯
的不同信号。
实验步骤:
1. 将红色LED灯连接到Arduino开发板的数字输出引脚13,
绿色LED灯连接到数字输出引脚12,黄色LED灯连接到数
字输出引脚11。
2. 在Arduino开发环境中编写控制交通灯的程序。
3. 将Arduino开发板与计算机连接,将程序上传到Arduino开
发板中。
4. 接通Arduino开发板的电源,观察交通灯的亮灭状态。
实验结果:
根据程序编写的逻辑,交通灯会按照规定的时间间隔进行变换,实现红绿灯的循环。
实验总结:
通过本次实验,我们设计并实现了一个简单的交通灯控制系统。
掌握了Arduino编程和控制LED灯的方法,加深了对控制系
统的理解。
通过实验,我们发现了交通灯控制系统的重要性和意义,为今后的交通控制提供了一种可行的解决方案。
交通信号灯控制课程设计报告(全)
1设计任务描述1.1设计题目交通信号灯设计21.2设计内容利用微机原理试验箱,采两组红,黄,绿发光二极管来模拟A,B 两路交差路口的信号灯控制。
1.2.1设计目的通过课程设计使学生更进一步掌握微机原理及应用课程的有关知识,提高应用微机解决问题的能力,加深对微机应用的理解。
通过查阅资料,结合所学知识进行软、硬件的设计,使学生初步掌握应用微机解决问题的步骤及方法。
为以后学生结合专业从事微机应用设计奠定基础。
1.2.2设计要求(1)按实际交通灯控制规程控制。
(2)当路口发生交通事故时,能强制A、B两路禁行。
1.2.3设计发挥根据现场情况不同,使A、B两路分别放行。
2设计思路设计思路为:根据实际交通灯控制规程控制路口红、黄、绿交通灯的亮灭。
设计程序流程图,首先从东西方向亮绿交通灯南北方向亮红交通灯开始,大约15秒后,东西方向黄灯闪烁3次,大约3秒钟,此时南北方向保持亮红灯。
东西方向黄灯闪烁3次后东西方向亮红灯,南北方向亮绿灯。
同样,南北方向亮绿灯大约15秒后,南北方向黄灯闪烁3次,大约3秒钟,如此往复循环。
本次设计的延时部分我们是通过控制循环的次数以及调用延时程序实现的。
根据实际情况,在模拟交通事故时我们设计了三种可能的情况:1、路口出现交通事故或东西、南北同时出现事故,2、只有南北方向出现事故,3、只有东西方向出现事故。
当路口发生事故或东西、南北同时发生事故设置东西、南北方向红灯都亮;当只有东西方向的某处发生事故设置东西方向亮红灯,南北方向亮绿灯,即实现南北方向放行;当只有南北方向发生事故设置南北方向亮红灯,东西方向亮绿灯,即实现东西方向放行。
这三种可能的事故我们设置分别由开关K0、K1、K2控制,且开关为1为出现事故。
经过讨论我们设计用6个LED灯。
0号灯代表东西方向绿灯,1号代表南北方向绿灯,2号代表东西方向黄灯,3号代表南北方向黄灯,4号代表东西方向红灯,5号代表南北方向红灯。
由8255A口控制东西、南北方向灯的正常亮灭,C口控制紧急事故。
交通灯课程设计报告(必备5篇)
交通灯课程设计报告篇1正常红绿灯运行分有四个模式1.南北方向绿灯通行,东西方向红灯2.南北方向黄灯通行,东西方向红灯3.东西方向绿灯通行,南北方向红灯4.东西方向黄灯通行,南北方向红灯5.执行第一步交通灯课程设计报告篇2本设计主要是介绍了单片机控制下的交通灯控制系统,详细介绍了其硬件和软件设计,并对其各功能模块做了详细介绍,其主要功能和指标如下:东西、南北两干道交于十字路口,各干道有一组红、绿、黄三个指示灯,指挥车辆和行人安全通行。
南北方向为主干道,通行时间为12秒;东西方向为支干道,通行时间为9秒。
通行时间最后3秒,绿灯灭,黄灯闪烁,黄灯闪烁完毕变更通行车道。
通行时间由数字显示器显示。
交通灯课程设计报告篇3状态1:南北方向绿灯通行12秒,东西红灯禁止通行15秒,分别倒计时;状态2:南北方向黄灯提醒3秒,东西继续红灯倒计时;状态3:东西方向绿灯通行9秒,南北方向禁止通行12秒;状态4:东西方向黄灯提醒3秒,南北继续红灯倒计时;状态5:执行状态1,反复循环交通灯课程设计报告篇4记住这个点就可以设计软件了。
首先要有时间基础,倒计时从哪来呢?1,延时通过死循环卡主软件的运行来达到延时效果,程序执行效率极低,不可取。
2,定时通过定时器产生时基。
软件设置50ms产生一次定时中断,在中断执行函数中做计数。
50ms执行一次中断函数,通过one_sec_flag累加到20判断时间过去了一秒。
设置一秒标志位scan_flag置一。
在主函数while循环里判断标志位,如果是1,则倒计时计数值减一,即完成了倒计时的软件设计思路交通灯课程设计报告篇5随着时代的进步和发展,单片机技术已经普及到我们生活、工作、科研、各个领域,已经成为一种比较成熟的技术。
本交通灯控制系统利用单片机AT89C51作为核心元件,实现了通过信号灯对路面状况的智能控制。
从一定程度上解决了交通路口堵塞、车辆停车等待时间不合理、急车强通等问题。
系统具有结构简单、可靠性高、成本低、实时性好、安装维护方便等优点,有广泛的应用前景。
交通信号灯模拟控制系统课程设计报告书
课程设计报告书课程名称:交通信号灯模拟控制系统目录一、设计概述 (1)(一)交通灯的应用前景及现状 (1)(二)课程设计的性质和目的 (1)二、设计任务 (1)三、方案简介 (2)四、设计详解 (4)(一)显示子程序 (4)(二)定时子程序 (4)(三)总体程序流程 (4)五、元件清单及主要元件说明 (5)(一)AT89S51单片机 (6)(二)共阴极数码管 (8)(三)发光二极管(红绿黄三色) (8)六、系统硬件设计 (8)(一)单片机主电路 (8)(二)交通灯接口电路 (9)(三)LED数码管显示电路 (10)(四)键盘口电路 (10)七、系统软件设计 (11)(一)初始化程序 (11)(二)显示子程序 (11)(三)定时中断处理程序 (12)(四)紧急中断处理程序 (13)(五)延迟程序 (14)八、设计心得 (14)九、参考文献 (15)十、附录 (15)交通信号灯模拟控制系统一、设计概述(一)交通灯的应用前景及现状随着社会经济的发展,城市交通问题越来越引起人们的关注。
人、车、路三者关系的协调,已成为交通管理部门需要解决的重要问题之一。
城市交通控制系统是用于城市交通数据监测、交通信号灯控制与交通疏导的计算机综合管理系统,它是现代城市交通监控指挥系统中最重要的组成部分。
所以,如何采用合适的控制方法,最大限度利用好耗费巨资修建的城市高速道路,缓解主干道与匝道、城区同周边地区的交通拥堵状况,越来越成为交通运输管理和城市规划部门亟待解决的主要问题。
在大、中城市,十字道口的红绿灯是交通法规的无声命令,是司机和行人的行为准则。
十字道口的交通红绿灯控制是保证交通安全和道路畅通的关键。
当前,国内大多数城市正在采用“自动”红绿交通灯,它具有固定的“红灯—绿灯”转换间隔,并自动切换。
它们一般由“通行与禁止时间控制显示、红黄绿三色信号灯和方向指示灯”三部分组成。
在交通灯的通行与禁止时间控制显示中,通常根据交通规律设置红绿黄三色信号的时间,时间控制都是固定的。
交通信号灯课程设计报告
交通信号灯课程设计报告交通信号灯课程设计报告一、引言随着城市化进程的加速和汽车数量的不断增加,交通拥堵问题日益严重。
为了解决这一问题,交通信号灯成为了城市交通管理中不可或缺的一部分。
本课程设计旨在通过学习交通信号灯的原理和应用,培养学生对于城市交通管理的认知和实践能力。
二、课程目标1.掌握交通信号灯的基本原理和工作方式;2.了解不同类型的交通信号灯及其在实际应用中的差异;3.学习如何设计一个有效的交通信号灯系统;4.通过实践操作,提高学生对于城市交通管理的实际操作能力。
三、教学内容1. 交通信号灯基本原理:讲解电路原理、控制方式等;2. 交通信号灯类型及应用:讲解不同类型信号灯及其在不同场景下的应用;3. 交通信号灯系统设计:讲解如何根据道路情况和车流量等因素进行合理设计;4. 实践操作:使用Arduino等开发板进行实际搭建并调试。
四、教学方法1. 讲授法:通过课堂讲解,向学生介绍交通信号灯的基本原理和应用;2. 实验法:通过实际操作,让学生亲自搭建交通信号灯系统并进行调试;3. 讨论法:通过小组讨论或班级讨论,加深学生对于交通信号灯的理解和应用。
五、教材及参考书目1. 《交通信号灯原理及应用》(张三等编著);2. 《Arduino编程从入门到实践》(韩顺平著)。
六、实验器材及软件1. Arduino开发板;2. 交通信号灯模块;3. LED灯;4. 杜邦线等相关配件;5. Arduino IDE开发环境。
七、教学进度安排第一周:交通信号灯基本原理第二周:交通信号灯类型及应用第三周:交通信号灯系统设计第四周至第六周:实践操作八、评价方式1. 实验报告评分;2. 实际操作成果评分;3. 课堂参与度评分。
九、总结通过本课程设计,学生将能够掌握交通信号灯的基本原理和应用,并能够进行实际操作和设计。
这不仅有助于提高学生对于城市交通管理的认知和实践能力,也为未来的职业发展打下了基础。
交通灯控制系统设计报告
交通灯控制系统设计报告一、引言二、设计目标1.提高交通状况:通过合理的信号配时和交通流量控制,缓解交通堵塞,减少交通拥堵现象。
2.保障交通安全:确保行人和车辆能够按规定时间通行,减少交通事故的发生。
3.提高道路利用率:根据道路情况和交通流量,合理调整信号配时,提高道路通行效率。
三、设计原理1.信号配时根据不同时段的交通流量需求,采用动态信号配时方案,实现信号随交通流量变化而变化。
2.检测系统通过传感器等设备对交通流量、车辆行驶速度等进行检测,实时获取交通状况。
3.系统控制根据检测到的交通状况和预设的预案,对交通灯进行实时控制,优化信号配时。
四、设计方案1.信号配时方案根据平峰期、高峰期和低峰期的交通流量,采取不同的信号配时策略。
低峰期信号配时较短,高峰期信号配时较长,平峰期则根据实时交通流量进行动态调整。
2.检测系统设计搭建检测系统,采用传感器等设备对交通流量、行驶速度进行实时监测,将数据传输给控制系统,为信号配时提供依据。
3.控制系统设计设计控制系统,将检测到的数据进行分析和处理,根据预设的算法和策略,实现实时调整交通灯的信号配时。
五、实施计划1.设计和搭建检测系统,选择合适的传感器和设备,进行安装和调试。
预计完成时间为一个月。
2.设计和开发控制系统,包括信号配时算法和策略,并进行功能测试和调整。
预计完成时间为两个月。
3.将检测系统和控制系统进行整合,并进行联调测试和性能优化。
预计完成时间为一个月。
4.在交叉口或拥堵较为严重的路段进行试运行,并根据实际情况调整信号配时参数。
预计试运行时间为一个月。
5.完成系统的正式发布,并进行长期监测和调优,根据实时交通状况和用户反馈进行优化和改进。
六、总结通过本次交通灯控制系统的设计和实施,能够有效改善城市交通状况,提高道路利用率和交通安全性。
本设计方案将根据实际情况进行实施,确保系统的高效可靠运行,并根据实时数据进行调整和优化。
希望本报告能够为交通管理部门提供有价值的参考,并为城市交通发展做出贡献。
“智能”交通信号灯模拟控制系统设计报告
“智能”交通信号灯模拟控制系统设计报告1.在DVCC实验箱上,学习模拟交通灯控制的实现方法。
2.熟练掌握用定时器来控制时间。
3.掌握数码管的显示“智能”交通信号灯模拟控制系统设计报告一、课程设计的目的:1.在DVCC实验箱上,学习模拟交通灯控制的实现方法。
2.熟练掌握用定时器来控制时间。
3.掌握数码管的显示二、元件、器件1. DVCC系列单片机防真实验系统2. PC机3. WD-5V稳压电源三、内容描述1. 分析交通管理十字路口为南北走向与东西走向。
需用到4组灯,每组要有红黄绿各一盏。
初状态0为东西红灯,南北红灯。
然后状态1东西绿灯通车,同时南北红灯暂停。
延时一段时间之后,东西红灯、南北绿灯灭,同时黄灯闪几下。
再转状态3,南北绿灯通车,东西红灯。
过一段时间转状态4,南北绿灯、东西红灯灭,黄灯闪几秒。
最后循环到状态1。
(但由于实验箱上的端口有限,本实验只用了两组灯——东、南方向)2.本实验同时用了数码管显示红灯的时间倒计时。
在红黄绿灯转换是用了黄灯闪烁来提示。
3.智能控制为了实现智能控制,本实验这增加了一个功能,即在任何时候有外部环境影响一定时间时(本程序设计成5秒)时东西方向自动切换成红灯,而南北方向则切换成绿灯,或者反之。
而这里的外部环境是如果南北方向绿灯,但没人通过‘1’,而此时东西为红灯但等待通过的人很多‘0’,如果这种状态保持一定时间(本程序设计成5秒)则两通行方向状态自动转换,由于实验设备有限本实验用两个开关来作为外不状态的控制。
3.资源的分配东、南方向的绿黄红灯分别接单片机的p1.0~p1.5。
显示部分是串行输出,所以接单片机的串行口p3.0、p3.1。
另外外部影响的开关接p3.2、p3.2。
四、硬件电路设计及描述:硬件部分直接利用DVCC仿真系统实现,本设计应用电路如下:五、软件设计流程及描述:六、实验程序:;====================================== =================;作者:郭晶荣.何文烨;时间:2006.03.22;项目:交通灯智能控制;功能简介:包括显示倒计绿灯和黄灯的时间,时间的延时完; 全应用了定时器控制,还有自动切换红绿灯的功能; r0控制绿灯时间,r6控制黄灯闪烁的次数及时间; 闪一次为1秒,默认的r0为20秒,r6为3秒;应用的端口:p1.0~~p1.6(控制交通灯); p3.0,p3.1 (串行口数据传送口); p3.2,p3.3 (外部干扰,一高一低时自动切换状态);========================================= ===============org 0000hajmp startorg 000bhajmp tt0org 0030hstart:mov scon, #00h ;设定串行通信的模式为0mov tmod,#01h ;设定定时器为工做方式1setb ea ;打开中断setb et0mov th0,#3ch ;设定时器初直,定时0。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
课程设计报告书课程名称:交通信号灯模拟控制系统目录一、设计概述 (1)(一)交通灯的应用前景及现状 (1)(二)课程设计的性质和目的 (1)二、设计任务 (1)三、方案简介 (2)四、设计详解 (4)(一)显示子程序 (4)(二)定时子程序 (4)(三)总体程序流程 (4)五、元件清单及主要元件说明 (5)(一)AT89S51单片机 (6)(二)共阴极数码管 (8)(三)发光二极管(红绿黄三色) (8)六、系统硬件设计 (8)(一)单片机主电路 (8)(二)交通灯接口电路 (9)(三)LED数码管显示电路 (10)(四)键盘口电路 (10)七、系统软件设计 (11)(一)初始化程序 (11)(二)显示子程序 (11)(三)定时中断处理程序 (12)(四)紧急中断处理程序 (13)(五)延迟程序 (14)八、设计心得 (14)九、参考文献 (15)十、附录 (15)交通信号灯模拟控制系统一、设计概述(一)交通灯的应用前景及现状随着社会经济的发展,城市交通问题越来越引起人们的关注。
人、车、路三者关系的协调,已成为交通管理部门需要解决的重要问题之一。
城市交通控制系统是用于城市交通数据监测、交通信号灯控制与交通疏导的计算机综合管理系统,它是现代城市交通监控指挥系统中最重要的组成部分。
所以,如何采用合适的控制方法,最大限度利用好耗费巨资修建的城市高速道路,缓解主干道与匝道、城区同周边地区的交通拥堵状况,越来越成为交通运输管理和城市规划部门亟待解决的主要问题。
在大、中城市,十字道口的红绿灯是交通法规的无声命令,是司机和行人的行为准则。
十字道口的交通红绿灯控制是保证交通安全和道路畅通的关键。
当前,国内大多数城市正在采用“自动”红绿交通灯,它具有固定的“红灯—绿灯”转换间隔,并自动切换。
它们一般由“通行与禁止时间控制显示、红黄绿三色信号灯和方向指示灯”三部分组成。
在交通灯的通行与禁止时间控制显示中,通常根据交通规律设置红绿黄三色信号的时间,时间控制都是固定的。
交通灯的时间控制显示,以固定时间值预先设置在单片机中,每次以一定周期交替变化。
(二)课程设计的性质和目的本课程设计的主要目的是通过对电子技术及单片机原理的学习,综合掌握电子电路综合设计的过程,设计要求和具体的设计方法。
通过设计更好的复习、理解模拟电子、数字电子和单片机等课程内容,使理论和实际相结合,加强学生的动手能力以及查阅相关资料解决实际问题的能力,培养学生从事设计工作的整体观念。
二、设计任务1、完成交通灯的变化规律,即一个十字路口为东西方向和南北方向,四个路口均有红黄绿三灯和两个LED数码管。
交通灯上电后进入初始状态即东西南北均为红灯亮。
5秒后转状态1:南北绿灯亮通车,东西红灯亮,禁止通行,持续30秒;30秒后转状态2:南北绿灯灭转黄灯闪亮,延时5秒,东西仍红灯亮;5秒后转状态3:东西绿灯亮通车,南北转红灯,持续30秒;30秒后转状态4:东西绿灯灭转黄灯闪,延时5秒,南北仍红灯。
最后循环至状态1 。
2、用8个LED 数码管(各方向均两个,分别表示个位和十位),显示倒计时。
倒计时用于提醒驾驶员或行人信号灯发生改变的时间,以便他们在“停止”和“通行”两者作出合适的选择。
3、在紧急状态下,通过K1键手动设置,将所有路口的灯变为红灯;再次按下此键后进入状态1,然后依次循环。
三、 方案简介通过网上查阅资料,最终确定以下几种方案:(一)方案一采用74HC573锁存器控制数码管显示,使用动态扫描方法,控制数码管位选和段选的通断来使数码管依次显示相应数值;交通灯则可通过单片机的I/O 口来直接控制其关断;按键可通过对外部中断标志位的查询来控制紧急情况的相应动作。
此方案框图如下:状态3:南北红灯,东西绿灯状态4:南北红灯,东西黄灯状态2:南北黄灯,东西红灯状态1:南北绿灯,东西红灯图1 状态示意图(二)方案二为使数码管的控制简单、显示稳定,可以采用静态显示方法,使用CD4511译码器来控制数码管显示;根据要求,显示部分为两位数,因此可将数码管分为四组:南北个位,南北十位,东西个位,东西十位; CD4511输入四位,输出七位,因此需16个I/O 口便可控制四组数码管,再用4个I/O 口控制数码管的公共极,其余I/O 口足够交通灯和按键使用。
此方案的整体框图如下:(三)方案三在方案一、二的基础上,进一步简化电路,数码管采用静态显示方法,且将其分组减少到两组,十位为一组,个位为一组,使用共阴极数码管,将所有数码管位选通端接地,我们只需给十位组和个位组送不同的段选信号就行了,I/O 口控制采用低电平灌电流方式,这样便会有足够电流驱动数码管显示;此种方案既不需要再扩展I/O 口,直接用单片机控制数码管显示和交通灯的亮灭,电路较为简单。
方案框图如下:图3 方案二框图图2 方案一框图方案比较以上三种方案各有利弊,但综合考虑,方案三的电路较为简单,使用器件少,成本低,且能完成设计要求的全部功能,因此其性价比较高,所以最终选择方案三进行设计。
四、设计详解本方案使用AT89S51单片机,P0口和P1口控制数码管的段选,采用静态显示方法;P2口和P3口的个别位用来控制交通灯(发光二极管)的亮灭;定时采用定时器0的方式一,外接12MHz的晶振;按键接INT0/P3.2(外部中断0),并设为高优先级中断,中断方式为电平中断,一旦有紧急情况发生,便按下按键进行中断,中断子程序便是使所有路口红灯亮,断开按键进入状态1。
(一)显示子程序数码管显示数字为0—9,可以利用查表方式显示相应数字,将编辑好的数字显示代码存入表中,代码显示内容与其在表中位置相对应({0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}),将表中相应位置的代码送进数码管段选控制I/O口(P0,P1)便可使数码管显示相应数字。
(二)定时子程序定时采用定时器0的方式一,外接12MHz的晶振,通过计算给定时器装入合适初值,为方便计算,可设定时器一次中断为50ms,这样中断20次即为1s,然后每个5s或30s便执行相应动作。
(三)总体程序流程(分块流程图见“七、软件原理”)图4 总体程序流程图五、元件清单及主要元件说明(一)AT89S51单片机1)本次设计主要用到I/O口P0口、P1口、P2口和P3口,P3口的P3.2即外部中断0引脚,XTAL1和XTAL2两端口接12MHz晶振,选用定时器0的方式一进行定时,若有紧急情况,可通过按键(接P3.2)进行中断处理。
·VCC:电源电压·GND:接地·P0口:P0口是一组8位双向I/0口。
P0口即可作地址/数据总线使用,又可以作为通用的I/O口使用。
当CPU访问片外存储器时,P0口分时低8位地址总线,后作双向数据总线,此时,P0口就不能再作I/O 口使用了。
在访问期间激活要使用上拉电阻。
单片机·P1口:Pl 是一个带内部上拉电阻的8准位双向I/O口,P1作为通用的I/O口使用。
·P2 口:P2 是一个带有内部上拉电阻的8 位准双向I/O 口,P2即可作为通用的I/O口使用,也可以作为片外存储器的高8位地址总线,与P0口配合,组成16位片外存储器单元地址。
· P3 口:P3 口是一组带有内部上拉电阻的8 位准双向I/0 口。
P3 口除了作为通用的I/O口使用之外,每个引脚还具有第二功能,具体分配如表2·RST :复位输入。
当振荡器工作时,RST 引脚出现两个机器周期以上高电平将使单片机复位。
WDT 溢出将使该引脚输出高电平,设置SFR AUXR 的DISRT0 位(地址8EH )可打开或关闭该功能。
DISRT0位缺省为RESET 输出高电平打开状态。
·ALE /PROG ————:当访问外部程序存储器或数据存储器时,ALE (地址锁存允许)输出脉冲用于锁存地址的低8位字节。
即使不访问外部存储器,ALE 仍以时钟振荡频率的1/6 输出固定的正脉冲信号,因此它可对外输出时钟或用于定时目的。
要注意的是:每当访问外部数据存储器时将跳过一个ALE 脉冲。
对F1ash 存储器编程期间,该引脚还用于输入编程脉冲(PROG )。
如有必要,可通过对特殊功能寄存器(SFR )区中的8EH 单元的D0 位置位,可禁止ALE 操作。
该位置位后,只有一条M0VX 和M0VC 指令ALE 才会被激活。
此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ALE 无效。
·PSEN ————程序储存允许(PSEN ————)输出是外部程序存储器的读选通信号,当AT89S51 由外部程序存储器取指令(或数据)时,每个机器周期两次PSEN ————有效,即输出两个脉冲。
当访问外部数据存储器,没有两次有效的PSEN ————信号。
·EA ——/VPP :外部访问允许。
欲使CPU 仅访问外部程序存储器(地址为0000H -FFFFH ),EA 端必须保持低电平(接地)。
需注意的是:如果加密位LB1被编程,复位时内部会锁存EA 端状态。
如EA 端为高电平(接VCC 端),CPU 则执行内部程序存储器中的指令。
F1ash 存储器编程时,该引脚加上+12V 的编程电压Vcc 。
·XTAL1:振荡器反相放大器及内部时钟发生器的输入端。
·5个中断源,它们是两个外中断INT0(P3.2)和INT1(P3.3)、两个片内定时/计数器溢出中断TF0和TF1,一个是片内串行口中断TI 或RI ,程序入口地址如表3:表3 中断源程序入口七、系统软件设计(一)初始化程序初始化,设定标志位初值,选择定时器及工作方式,装入定时器初值,开总中断,开定时器中断和外部中断0。
void init(){flag=0;flag1=0;num=5;tt=0;P0=0x00;P1=0x00;TMOD=0x10;TH1=(65536-50000)/256;TL1=(65536-50000)%256;EA=1;ET1=1;TR1=1;EX0=1;IT0=1;}(二)显示子程序LED计时每1秒都要刷新1次,采用的是静态显示,首先将时间(num)除以10,将整数对应的十位组显示转换为字节赋值给P0口,余数对应的个位组显示转换为字节赋值给P1口。
if(num>0){P0=table[num/10];P1=table[num%10];num--; } else {P0=table[0]; P1=table[0]; num=5; flag=2; }(三)定时中断处理程序定时器工作的基本原理其实就是给初值,让它不断加1直至减完为模值,这个初值是送到TH 和TL 中的。