欢迎来到天天文库
浏览记录
ID:39477889
大小:1.06 MB
页数:16页
时间:2019-07-04
《交通灯控制器课程设计》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、目录一课题介绍1.1概述1.2课题要求二设计原理与分析2.1.1红黄绿灯之间状态变换2.1.2计时设置2.1.3紧急情况2.2总体框图2.3分块设计三、原理图四、程序代码4.1M分频器4.2数码管译码器4.3交通灯控制器4.4计时器五、仿真结果及实验分析六、总结14一、课题介绍1.1概述在十字路口,每条道路各有一组红、黄、绿灯和倒计时显示器,用以指挥车辆和行人有序地通行。其中,红灯(R)亮,表示该条道路禁止通行;黄灯(Y)亮,表示停车;绿灯(G)亮,表示可以通行。倒计时显示器是用来显示允许通行和禁止通行地时间。交通灯控制器就是用来自动控制十字路口的交通灯和计时器,指挥
2、各种车辆和行人安全通行。1.2课题要求设计一个十字交叉路口的交通灯控制器,具体要求如下:(1)每条道路设一组信号灯,每组信号灯由红、黄、绿3盏灯组成,绿灯表示允许通行,红灯表示禁止通行,黄灯表示该车道上已过停车线德车辆继续通行,未过停车线的车辆停止通行。(2)设置一组数码管,以倒计时的方式显示允许通行或禁止通行的时间,其中绿灯、黄灯、红灯的持续时间分别是20s、5s和25s。(3)当各条路上任意一条上出现特殊情况时,如当消防车、救护车或其他需要优先放行的车辆通过时,各方向上均是红灯亮,倒计时停止,且显示数字在闪烁。当特殊运行状态结束后,控制器恢复原来状态,继续正常运行
3、。二、设计原理与分析2.1交通灯用以指挥车辆和行人有序地通行,在功能上要实现红黄绿灯之间状态变换、计时设置和紧急情况三大功能。2.1.1红黄绿灯之间状态变换对于十字路口两个方向上的交通灯,要保证一条道路通行另一条禁止,同时还要考虑黄灯到红灯的变换,因此一共有四个状态,即南北红东西绿、南北红东西黄、南北绿东西红、南北黄东西红。2.1.2计时设置根据要求,绿灯、黄灯、红灯的持续时间分别是20s、5s和25s。2.1.3紧急情况当各条路上任意一条上出现特殊情况时,各方向上均是红灯亮,倒计时停止,且显示数字在闪烁。2.2总体框图2.2.1模块示意图14图12.3分块设计要实现
4、交通灯的控制需要5个功能模块,分别为4M分频器,数码管译码器,交通灯控制器以及计时器。2.3.14M分频器由于引脚选用4M时钟,而计时单位为秒,需要对时钟信号进行4M分频处理,编译后生成4M分频器如下图:图24M分频器2.3.2数码管译码器输出时间为16进制数,要在数码管上显示需设计数码管译码器对其进行译码,编译后生成数码管译码器如下图:14图3数码管译码器2.3.3交通灯控制器为完成四个状态之间的循环,需交通灯控制器通过时钟信号的变化来完成状态循环的功能,编译后生成交通灯控制器如下图:图4交通灯控制器2.3.4计时器计时器不仅要完成倒计时功能,还要随状态的变化而改变
5、其倒计时时间,编译后生成计时器如下图:图5计时器三、原理图、代码书写1、交通灯控制的原理图14各个模块代码书写4.1M分频器LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;--运算符重载ENTITYcnt4MISPORT(ena,clr,d_ctr,clk:INSTD_LOGIC;q:OUTSTD_LOGIC_VECTOR(3DOWNTO0);co:outstd_logic);ENDENTITYcnt4M;ARCHITECTUREbhvOFcnt4MISSIGNALq1:STD
6、_LOGIC_VECTOR(3DOWNTO0);BEGINq<=q1;PROCESS(clk,clr,ena,d_ctr)BEGINIFclr='0'THENq1<=(others=>'0');ELSIFclk'EVENTANDclk='1'THENIFena='1'THENIFd_ctr='1'THENIFq1="1111"THENq1<=(others=>'0');ELSEq1<=q1+'1';ENDIF;ELSIFq1="0000"THEN14q1<=(others=>'1');ELSEq1<=q1-'1';ENDIF;ENDIF;ENDIF;ENDPROCES
7、S;PROCESS(q1)BEGINIFq1="1111"THENco<='1';ELSEco<='0';ENDIF;ENDPROCESS;ENDARCHITECTUREbhv;4.2数码管译码器libraryieee;useieee.std_logic_1164.all;useieee.std_logic_arith.all;useieee.std_logic_unsigned.all;entityexp4isport(clk:instd_logic;A,B:instd_logic_vector(7downto0);ledag:outstd_log
此文档下载收益归作者所有