您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 交通运输 > 西电EDA交通灯报告完整版
交通控制器实验报告2目录交通控制器实验报告......................................1序言....................................................3一、设计任务及设计要求...................................4二、原理分析及方案设计...................................4三、电路设计与调试......................................61.分频器的设计................................................................................................................62.控制器的设计................................................................................................................73.倒计时计数器的设计..................................................................................................144.数码管显示器的设计..................................................................................................175.顶层原理图..................................................................................................................20四、实验仿真波形图.....................................20五.心得体会...........................................21六.参考文献...........................................213序言VHDL的英文全写是:VHSIC(VeryHighSpeedIntegratedCircuit)HardwareDescriptionLanguage.翻译成中文就是超高速集成电路硬件描述语言。因此它的应用主要是应用在数字电路的设计中。VHDL主要用于描述数字系统的结构,行为,功能和接口VHDL的程序结构特点是将一项工程设计,或称设计实体(可以是一个元件,一个电路模块或一个系统)分成外部(或称可视部分,及端口)和内部(或称不可视部分),既涉及实体的内部功能和算法完成部分。随着基于VHDL的EDA技术的发展和应用领域的扩大与深入,EDA技术在电子信息、通信、自动控制用计算机等领域的重要性日益突出。作为一个学电子信息专业的学生,我们必须不断地了解更多的新产品信息,这就更加要求我们对EDA有个全面的认识。本程序设计的是交通灯的设计。采用EDA作为开发工具,VHDL语言为硬件描述语言,quartusII作为程序运行平台,所开发的程序通过调试运行、波形仿真验证,初步实现了设计目标在一个交通繁忙的十字路口,没有交通灯来控制来往车辆和行人的通行,假设也没有交警,那会发生什么事情呢?后果是难以想象的,可能会陷入一片混乱,甚至瘫痪。当然我们每个人都不希望这样。我们作为社会的一员,每人都有责任为它的更加先进和快捷做出力所能及的事情。本程序设计的是交通灯的设计。采用EDA作为开发工具,VHDL语言为硬件描述语言,quartusII作为程序运行平台,所开发的程序通过调试运行、波形仿真验证,实现设计目标。我们设计的这个信号控制系统可以通过交通灯控制东西方向车道和南北方向车道两条交叉道路上的车辆交替运行,每次通行时间都可以根据实际情况预设,用以减少交通事故的发生概率。并且经过些次实验使得我们对电子技术课程内容的理解和掌握有了更深一层的认识,掌握电子电路的基本分析方法和设计方法。4一、设计任务及设计要求设计一个十字路口交通控制系统,要求如下:(1)东西、南北两个方向均有绿灯、黄灯、红灯指示、、,其持续时间分别为40秒、5秒、45秒,交通灯运行的切换示意图如图所示。(2)系统设有时钟,以倒计时的方式显示每一路允许通行的时间。(3)当东西或南北两路中的任一路出现特殊情况,系统可由交警手动控制立即进入特殊运行状态,即红灯全亮,时钟停止计时,东西、南北两路所有车辆停止通行;当特殊运行状态结束后,系统恢复工作,继续正常运行。二、原理分析及方案设计本系统主要由分频器、计数器、控制器、倒计时显示器等电路组成。总体设计框图如下:A绿亮B红亮A黄亮B红亮A红亮B绿亮A红亮B黄亮40s5s40s5s分频器Clk控制器Led灯指示控制信号倒计时计数器CRHold译码电路七段数码管5分频器讲晶振送来的4MHz的信号变为1Hz的时钟信号;计数器实现90秒的技术,90秒也是交通控制系统的一个大循环;控制器控制系统的状态转移和红、黄、绿灯的信号输出;倒计时显示电路实现45秒倒计时功能和显示功能。整个系统的工作时序受控制器控制,它是系统的核心。控制器的整个工作过程用状态机进行描述,其状态转移关系描述如下:S0:A方向绿灯亮,B方向红灯亮,此状态持续40秒;S1:A方向黄灯亮,B方向红灯亮,此状态持续5秒;S2:A方向红灯亮,B方向绿灯亮,此状态持续40秒;S3:A方向红灯亮,B方向红黄灯亮,此状态持续5秒;S4:紧急制动状态,A方向红灯亮,B方向红灯亮,当紧急制动信号有效是进入此状态。交通控制系统的状态转移图如下:当紧急制动信号无效时,状态机按照S0-S1-S2-S3-S0循环;当紧急制动信号有效时,状态机立即转入S4,两个方向红灯全亮,计数器停止计数;当紧急制动信号再恢复无效时,状态机回到原来的状态继续执行。A红亮B红亮S4A绿亮B红亮S040sA黄亮B红亮S15sA红亮B黄亮S05sA红亮B绿亮S240sHold=‘0’Hold=‘0’Hold=‘0’Hold=‘0’Hold=‘1’Hold=‘1’Hold=‘1’Hold=‘1’6三、电路设计与调试1.分频器的设计分频器的逻辑符号如图所示。clk为时钟输入信号,clkout为分频后的时钟输出信号。分频器的VHDL描述文件devide.vhd如下:libraryieee;useieee.std_logic_1164.all;useieee.std_logic_unsigned.all;entitydevideisport(clk:instd_logic;clk_out:outstd_logic);enddevide;architecturearc_devideofdevideissignalcount:std_logic_vector(25downto0);beginprocessbeginwaituntilclk'eventandclk='1';if(count24999999)thencount=count+1;clk_out='0';elsecount=(others='0');clk_out='1';endif;endprocess;endarchitecturearc_devide;7分频器devide的vhd文件仿真波形如下:2.控制器的设计控制器的逻辑符号如图所示:其中,clk为时钟输入信号;hold为紧急制动信号;ared、agreen、ayellow、分别为东西方向驱动红灯、绿灯、黄灯指示的输出信号;bred、bgreen、byellow分别为南北方向驱动红灯、8绿灯、黄灯指示的输出信号。控制器的VHDL描述文件control.vhd如下:libraryieee;useieee.std_logic_1164.all;useieee.std_logic_unsigned.all;entitycontrolisport(clk,hold:instd_logic;ared,agreen,ayellow,bred,bgreen,byellow:outstd_logic);endcontrol;architecturebehaviourofcontrolistypestate_typeis(s0,s1,s2,s3,s4);signalcurrent_state,next_state:state_type;signalcounter:std_logic_vector(6downto0);beginsynch:processbeginwaituntilclk'eventandclk='1';ifhold='0'then--当紧急制动信号有效时,计数器停止计数counter=counter;9else--当紧急制动信号无效时,计数器进行周期90s的计数ifcounter89thencounter=counter+1;elsecounter=(others='0');endif;endif;endprocess;process--状态机的状态转移描述beginwaituntilclk'eventandclk='1';current_state=next_state;endprocess;state_trans:process(current_state)begincasecurrent_stateiswhens0=ifhold='0'thennext_state=s4;else10ifcounter39thennext_state=s0;elsenext_state=s1;endif;endif;whens1=ifhold='0'thennext_state=s4;elseifcounter44thennext_state=s1;elsenext_state=s2;endif;endif;whens2=ifhold='0'thennext_state=s4;elseifcounter84thennext_state=s2;11elsenext_state=s3;endif;endif;whens3=ifhold='0'thennext_state=s4;elseifcounter89thennext_state=s3;elsenext_state=s0;endif;endif;whens4=ifhold='0'thennext_state=s4;elseifcounter39thennext_state=s0;elsifcounter44thennext_state=s1;12elsifcounter84thennext_state=s2;elsifcounter89thennext_state=s3;endif;endif;endcase;endprocess;output:process(current_state)--每种状态下两个路口红绿灯的状态描述begincasecurrent_stateiswhens0=ared='0';agreen='1';ayellow='0';bred='1';bgreen='0';byellow='0';whens1=ared='0';agreen='0';13ayellow='1';bred='1';bgreen='0';byellow='0';whens2=ared='1';agreen='0';ayellow='0';bred='0';bgreen='1';byellow='0';whens3=ared='1';agreen='0';ayellow='0';bred='0';bgre
本文标题:西电EDA交通灯报告完整版
链接地址:https://www.777doc.com/doc-7127714 .html