EDA交通灯课程设计(得过优的哦)
EDA课程设计-----交通灯设计

课程EDA技术课程设计题目交通灯控制器专业电子信息工程姓名学号主要内容、基本要求、主要参考资料等主要内容:设计一个交通信号灯控制器,由一条主干道和一条支干道汇合成十字路口,在每个入口处设置红、绿、黄三色信号灯,红灯亮禁止通行,绿灯亮允许通行,黄灯亮则给行驶中的车辆有时间停在禁行线外。
基本要求:1、红、绿、黄发光二极管作信号灯,用传感器或逻辑开关作检测车辆是否到来的信号,实验电路用逻辑开关代替。
2、主干道处于常允许通行的状态,支干道有车来时才允许通行。
主干道亮绿灯时,支干道亮红灯;支干道亮绿灯时,主干道亮红灯。
3、主、支干道均有车时,两者交替允许通行,主干道每次放行45秒,支干道每次放行25秒,设立45秒、25秒计时、显示电路,选择1HZ时钟脉冲作为系统时钟。
4、在每次由绿灯亮到红灯亮的转换过程中,要亮5秒黄灯作为过渡,使行驶中的车辆有时间停到禁行线外,设立5秒计时、显示电路。
主要参考资料:[1] 潘松著.EDA技术实用教程(第二版). 北京:科学出版社,2005.[2] 康华光主编.电子技术基础模拟部分. 北京:高教出版社,2006.[3] 阎石主编.数字电子技术基础. 北京:高教出版社,2003.完成期限2012.3.2指导教师专业负责人2012年2月27日一、总体设计思想1.基本原理交通灯是城市交通中不可缺少的重要工具,是城市交通秩序的重要保障。
本实例就是实现一个常见的十字路通灯功能。
读者通过学习这个交通灯控制器,可以实现一个更加完整的交通灯。
例如实现实时配置各种灯的时间,手动控制各个灯的状态等。
一个十字路口的交通一般分为两个方向,每个方向具有红灯、绿灯和黄灯3种,另外每个方向还具有左转灯,因此每个方向具有4个灯。
这个交通灯还为每一个灯的状态设计了倒计时数码管显示功能。
可以为每一个灯的状态设置一个初始值,灯状态改变后,开始按照这个初始值倒计时。
倒计时归零后,灯的状态将会改变至下一个状态。
值得注意的是,交通灯两个方向的灯的状态是相关的。
eda交通灯课程设计

eda交通灯课程设计一、教学目标本课程旨在让学生了解和掌握交通灯系统的基本原理和设计方法。
通过本课程的学习,学生将能够:1.知识目标:理解交通灯系统的原理和组成,包括信号灯、控制器、传感器等;掌握交通灯系统的设计和实施方法,包括硬件设计和软件编程。
2.技能目标:能够使用相关工具和软件进行交通灯系统的设计和仿真;具备一定的实际操作能力,能够进行交通灯系统的安装和调试。
3.情感态度价值观目标:培养学生对交通安全和秩序的重视,提高学生的社会责任感和公民意识。
二、教学内容本课程的教学内容主要包括以下几个部分:1.交通灯系统的原理和组成:介绍交通灯系统的工作原理和基本组成,包括信号灯、控制器、传感器等。
2.交通灯系统的设计和实施:讲解交通灯系统的设计方法和步骤,包括硬件设计和软件编程。
3.交通灯系统的仿真和实验:使用相关工具和软件进行交通灯系统的仿真,并进行实际操作和实验。
4.交通安全和秩序的重要性:强调交通安全和秩序对社会的的重要性,培养学生的社会责任感和公民意识。
三、教学方法为了激发学生的学习兴趣和主动性,本课程将采用多种教学方法,包括:1.讲授法:讲解交通灯系统的原理和组成,设计和实施方法等基本知识。
2.讨论法:学生进行小组讨论,分享学习心得和经验,提高学生的思维能力和团队合作能力。
3.案例分析法:分析真实的交通灯系统案例,让学生了解交通灯系统的实际应用和效果。
4.实验法:进行交通灯系统的仿真和实验,让学生亲身体验交通灯系统的设计和实施过程。
四、教学资源为了支持教学内容和教学方法的实施,丰富学生的学习体验,我们将准备以下教学资源:1.教材:选择一本适合学生水平的交通灯系统设计教材,作为学生学习的基本参考资料。
2.参考书:提供一些相关的参考书籍,供学生深入学习和研究。
3.多媒体资料:制作一些教学PPT、视频等多媒体资料,帮助学生更好地理解和掌握交通灯系统的原理和设计方法。
4.实验设备:准备一些实验设备,包括交通灯控制器、传感器等,供学生进行实际操作和实验。
eda交通灯课程设计

eda交通灯课程设计一、课程目标知识目标:1. 学生能理解并掌握交通灯的基本原理及其在现代社会交通管理中的作用。
2. 学生能了解EDA(电子设计自动化)的基本概念,并运用其原理设计简单的交通灯控制系统。
3. 学生掌握交通灯工作周期的计算方法,以及不同交通情况下信号灯变换的逻辑规则。
技能目标:4. 学生能够通过EDA软件进行交通灯电路的设计与仿真,具备基本的电子设计能力。
5. 学生能够运用所学知识分析并解决交通灯控制中的实际问题,具备一定的创新设计思维。
情感态度价值观目标:6. 学生通过设计交通灯控制系统,培养对工程技术的兴趣,增强社会责任感和团队合作意识。
7. 学生能够在项目实践中体验科学探究的乐趣,提高学习科学的积极性,形成良好的学习习惯。
8. 学生通过课程学习,认识到科技在生活中的应用,增强对现代科技改善生活品质的认识,培养创新精神和实践能力。
本课程设计针对的是具有一定电子学基础的中高年级学生,课程性质为实践性强的综合设计课。
在分析课程性质、学生特点和教学要求的基础上,课程目标旨在分解为具体的学习成果,以便通过后续的教学设计和评估,有效提升学生对交通工程和电子设计自动化知识的综合应用能力。
二、教学内容本章节教学内容紧密围绕课程目标,结合课本相关章节,科学系统地组织以下内容:1. 交通灯基本原理:讲解交通灯的功能、结构及工作原理,对应教材第3章“交通信号控制基础”。
2. EDA软件介绍:介绍EDA软件的基本功能、操作方法及其在电子设计中的应用,对应教材第5章“电子设计自动化技术”。
3. 交通灯控制系统设计:a. 设计要求:分析交通灯控制系统的需求,明确设计目标和功能要求。
b. 电路设计:学习并运用EDA软件设计交通灯控制电路,对应教材第6章“数字电路设计”。
c. 仿真测试:利用EDA软件对设计电路进行仿真测试,验证设计方案的可行性。
4. 交通灯控制逻辑:学习并掌握交通灯工作周期的计算方法,以及不同交通情况下的信号灯变换规则,对应教材第3章“交通信号控制策略”。
eda交通灯课程设计

eda交通灯课程设计一、课程目标知识目标:1. 学生能理解并掌握EDA交通灯的基本原理,包括信号灯的工作原理、时序控制等。
2. 学生能够运用所学知识,分析并设计简单的交通灯控制系统。
3. 学生了解交通灯在现实生活中的应用,认识到其在交通安全中的重要性。
技能目标:1. 学生能够运用EDA软件进行交通灯电路的设计与仿真。
2. 学生通过小组合作,提高沟通协调能力和团队协作能力。
3. 学生掌握基本电路调试方法,具备解决实际问题的能力。
情感态度价值观目标:1. 学生培养对电子设计与应用的兴趣,激发创新意识。
2. 学生认识到交通灯在保障交通安全、提高道路通行效率方面的重要性,增强社会责任感。
3. 学生在学习过程中,培养严谨、细致、勇于探索的科学态度。
本课程针对初中年级学生,结合学科特点,注重理论与实践相结合,以提高学生的动手能力和创新能力。
在教学过程中,教师需关注学生的个体差异,激发学生的学习兴趣,鼓励学生积极参与讨论和实践,培养其团队协作能力。
通过本课程的学习,期望学生能够掌握交通灯的基本原理,提高电子设计与应用能力,并树立正确的价值观。
二、教学内容本章节教学内容主要包括以下三个方面:1. 交通灯基本原理:- 介绍交通灯的起源、发展及其在现代交通中的应用。
- 讲解交通灯的信号控制原理,包括红绿灯的切换机制和时序控制。
2. EDA软件应用:- 介绍EDA软件的基本功能和使用方法。
- 结合教材章节,教授如何使用EDA软件进行交通灯电路设计与仿真。
3. 实践操作与小组讨论:- 安排学生进行交通灯电路设计实践,指导学生完成电路搭建、调试与优化。
- 组织小组讨论,让学生分享设计心得,互相学习,提高团队协作能力。
教学大纲安排如下:第一课时:交通灯基本原理介绍,占总课时的1/4。
第二课时:EDA软件应用教学,占总课时的1/4。
第三课时:实践操作与小组讨论,占总课时的1/2。
教学内容与教材紧密关联,确保科学性和系统性。
在教学过程中,教师需关注学生对知识点的掌握情况,及时调整教学进度,确保教学效果。
EDA交通灯控制器课程设计

交通灯控制器课程设计该交通信号控制器控制十字路甲、乙两条道路的红、黄和绿三色灯,指挥车辆和行人安全通行。
功能要求如下:1.只有在小路上发现汽车时,高速公路上的交通灯才可能变成红灯。
2.当汽车行驶在小路上时,小路的交通灯保持为绿灯,但不能超过给定的时间。
(20s)3.高速公路灯转为绿色后,即使小路上有汽车出现,而高速公路上并无汽车,也将在给定的时间内保持绿灯。
(60s)。
设计如下:——1hz分频器library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;use ieee.std_logic_arith.all;entity fen_pin1 isport(clk100hz:in std_logic;clk1hz:out std_logic);end fen_pin1;architecture bhv of fen_pin1 issignal qan:std_logic_vector(3 downto 0); signal qbn:std_logic_vector(3 downto 0); signal cin:std_logic;beginprocess(clk100hz)beginif(clk100hz'event and clk100hz='1')thenif qan="1001"then qan<="0000";cin<='1';else qan<=qan+1;cin<='0';end if;end if;end process;process(clk100hz,cin)beginif(clk100hz'event and clk100hz='1')thenif cin='1' thenif qbn="1001" then qbn<="0000";else qbn<=qbn+1;end if ;end if ;end if ;end process;process(qan,qbn)beginif (qan="1001"and qbn="1001")then clk1hz<='1'; else clk1hz<='0';end if;end process;end bhv;——2hz分频器library ieee;use ieee.std_logic_1164.all;entity fen_pin2 isport (clk100hz:in std_logic;clk2hz:out std_logic);end fen_pin2;architecture bhv of fen_pin2 isbeginprocess(clk100hz)variable cnt:integer range 0 to 24;variable tmp:std_logic;beginif(clk100hz'event and clk100hz='1')thenif cnt=24 thencnt:=0;tmp:=not tmp;elsecnt:=cnt+1;end if;end if;clk2hz<=tmp;end process;end bhv;——主干道控制library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity contralz isport(clk:in std_logic;ra,ga,ya:out std_logic;timeah,timeal:out std_logic_vector(3 downto 0)); end contralz;architecture bhv of contralz istype rg is(green,red,yellow2);beginprocess(clk)variable a:std_logic;variable th,tl:std_logic_vector(3 downto 0);variable state:rg;beginif clk'event and clk='1'thencase state iswhen green=>if a='0'thenth:="0101";tl:="1001";a:='1';ga<='1';ra<='0';ya<='0';elseif not(th="0000"and tl="0001")thenif tl="0000"thentl:="1001";th:=th-1;elsetl:=tl-1;elseth:="0000";tl:="0000";a:='0';state:=red;end if;end if;when red=>if a='0'thenth:="0001";tl:="1001";a:='1';ra<='1';ya<='0';ga<='0';elseif not(th="0000"and tl="0001")then if tl="0000"thentl:="1001";th:=th-1;elsetl:=tl-1;end if;elseth:="0000";tl:="0000";a:='0';ra<='0';ga<='0';state:=yellow2;end if;end if;when yellow2=>if a='0'thenth:="0000";tl:="1001";a:='1';ya<='1';ga<='0';ra<='0';elseif not(th="0000"and tl="0001")then if tl="0000"thentl:="1001";th:=th-1;tl:=tl-1;end if;elseth:="0000";tl:="0000";ga<='0';ra<='0';ya<='0';a:='0';state:=green;end if;end if;end case;end if;timeah<=th;timeal<=tl;end process;end bhv;——支路控制library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity contralx isport(clk:in std_logic;rb,gb,yb,chu:out std_logic;timeah,timeal:out std_logic_vector(3 downto 0)); end contralx;architecture bhv of contralx istype rgy is(red,yellow1,green,yellow2);beginprocess(clk)variable a:std_logic;variable th,tl:std_logic_vector(3 downto 0);variable state:rgy;beginif clk'event and clk='1'thencase state iswhen yellow1=>if a='0'thenth:="0000";tl:="0100";a:='1';yb<='1';gb<='0';chu<='1';elseif not(th="0000"and tl="0001")then if tl="0000"thentl:="1001";th:=th-1;elsetl:=tl-1;end if;elseth:="0000";tl:="0000";a:='0';state:=green;end if;end if;when green=>if a='0'thenth:="0001";tl:="1001";a:='1';gb<='1';rb<='0';yb<='0';chu<='1';elseif not(th="0000"and tl="0001")then if tl="0000"thentl:="1001";th:=th-1;elsetl:=tl-1;end if;elseth:="0000";tl:="0000";a:='0';state:=yellow2;end if;end if;when red=>if a='0'thenth:="0101";tl:="0100";a:='1';yb<='0';chu<='1';elseif not(th="0000"and tl="0001")then if tl="0000"thentl:="1001";th:=th-1;elsetl:=tl-1;end if;elseth:="0000";tl:="0000";a:='0';state:=yellow1;end if;end if;when yellow2=>if a='0'thenth:="0000";tl:="0100";a:='1';yb<='1';gb<='0';rb<='0';chu<='1';elseif not(th="0000"and tl="0001")then if tl="0000"thentl:="1001";th:=th-1;elsetl:=tl-1;end if;elseth:="0000";tl:="0000";a:='0';chu<='0';state:=red;end if;end if;end case;end if;timeah<=th;timeal<=tl;end process;end bhv;——反馈器library ieee;use ieee.std_logic_1164.all;entity smen isport( sm ,re,gr,ye:in std_logic;jinji:out std_logic);end smen;architecture se of smen isbeginprocess isbeginif(sm='1' and re='0' and gr='0' and ye='0') then jinji<='1'; elsejinji<='0';end if;end process;end se;——消抖电路library ieee;use ieee.std_logic_1164.all;entity xiaodou isport(jinji,clk1hz:in std_logic;b:out std_logic);end xiaodou;architecture bhv of xiaodou issignal temp1:std_logic;beginprocess(clk1hz,jinji)variable temp2:std_logic;beginif(clk1hz'event and clk1hz='0')thentemp1<=jinji;temp2:=not temp1;end if;b<=temp1 and temp2 and clk1hz;end process;end bhv;——状态转换library ieee;use ieee.std_logic_1164.all;entity no isport(a:in std_logic;en:out std_logic);end no;architecture no_arc of no isbeginprocess(a)variable tmp:std_logic;beginif(a'event and a='1')thentmp:=not tmp;end if;en<=tmp;end process;end no_arc;——mux4llibrary ieee;use ieee.std_logic_1164.all;entity mux41 isport(sel:in std_logic_vector(2 downto 0);d0,d1,d2,d3:in std_logic_vector(3 downto 0); q:out std_logic_vector(3 downto 0);so:out std_logic_vector(1 downto 0));end mux41;architecture bhv of mux41 isbeginprocess(sel)begincase sel iswhen"100"=>q<=d2;so<="00"; when"101"=>q<=d3;so<="01"; when"000"=>q<=d0;so<="10";when others=>q<=d1;so<="11";end case;end process;end bhv;——译码器library ieee;use ieee.std_logic_1164.all;entity dec7s isport(d:in std_logic_vector(3 downto 0);q0,q1,q2,q3,q4,q5,q6:out std_logic);end dec7s;architecture bhv of dec7s isbeginprocess(d)variable q:std_logic_vector(6 downto 0); begincase d iswhen"0000"=>q:="0111111"; when"0001"=>q:="0000110"; when"0010"=>q:="1011011"; when"0011"=>q:="1001111"; when"0100"=>q:="1100110"; when"0101"=>q:="1101101"; when"0110"=>q:="1111101"; when"0111"=>q:="0100111"; when"1000"=>q:="1111111"; when"1001"=>q:="1101111";when others=>q:="1111001";end case;q0<=q(0);q1<=q(1);q2<=q(2);q3<=q(3);q4<=q(4);q5<=q(5);q6<=q(6);end process;end bhv;--- - . -word 资料- 仿真图如下:Ya,ra,ga 表示主干道黄红绿灯;yb,rb,gb 表示乡村小路黄红绿灯。
毕业设计-EDA技术交通灯控制器(课程设计)

课程设计报告课程设计:交通灯控制器一:实验目的:实现高速公路与乡间小路的交叉路口红绿灯的控制二:功能要求:1.只有在小路上发现汽车时,高速公路上的交通灯才可能变为红灯。
2.当汽车行驶在小路上时、小路的交通灯保持为绿灯,但不能超过给定的延迟时间.〔注;这段时间定义为20S时间)。
3.高速公路灯转为绿灯后,即使小路上有汽车出现,而高速公路上并无汽车,也将在给定的时间内保持高速公路绿灯(注:这段时间定义为60S)。
三:设计思路:五:VHDL源程序:LIBRARY ieee;USE ieee.std_logic_1164.all;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY TrafficLight ISPORT (Clk : IN STD_LOGIC;S,Reset : IN STD_LOGIC;mg,my,mr,cg,cy,cr : OUT STD_LOGIC );END TrafficLight ;ARCHITECTURE rtl OF TrafficLight ISTYPE TrafficState IS (mgcr, mycr, mrcg, mrcy);SIGNAL current_state,next_state : TrafficState ;SIGNAL Count : STD_LOGIC_VECTOR(5 DOWNTO 0);SIGNAL Clrn : STD_LOGIC ;BEGINCounter : PROCESS(clk)BEGINIF Reset = '1' OR (Clrn = '1' AND NOT(Count = "000000")) THEN Count <= "000000";ELSIF clk'EVENT AND clk = '1' THENIF NOT(s='0' AND current_state = mgcr) THEN Count <= Count + 1;END IF;END IF;END PROCESS Counter;StateTransition : PROCESS(clk,Count, current_state)BEGINIF Reset = '1' THEN next_state <= mgcr;Clrn <= '0';ELSIF clk'EVENT AND clk = '1' THENCASE current_state ISWHEN mgcr => mr<='0';mg<='1';my<='0';cr<='1';cg<='0';cy<='0';IF Count >= "111011" AND S = '1' THEN next_state <= mycr;Clrn <= '1';ELSE Clrn <= '0';END IF;WHEN mycr => mr<='0';mg<='0';my<='1';cr<='1';cg<='0';cy<='0';IF Count >= "000100" THEN next_state <= mrcg;Clrn <= '1';ELSE Clrn <= '0';END IF;WHEN mrcg => mr<='1';mg<='0';my<='0';cr<='0';cg<='1';cy<='0';IF Count >= "010011" OR S = '0' THEN next_state <= mrcy;Clrn <= '1';ELSE Clrn <= '0';END IF;WHEN mrcy => mr<='1';mg<='0';my<='0';cr<='0';cg<='0';cy<='1';IF Count >= "000100" THEN next_state <= mgcr;Clrn <= '1';ELSE Clrn <= '0';END IF;WHEN OTHERS => NULL;END CASE;END IF;END PROCESS StateTransition;PROCESS(clk)BEGINIF clk'EVENT AND clk='1' THENcurrent_state <= next_state;END IF;END PROCESS;END rtl;仿真图如下:六:实验心得:通过本次课程设计,使用进一步熟悉了MAX-PLUSLL这种EDA软件工具。
EDA交通灯的课程设计

EDA交通灯的课程设计一、课程目标知识目标:1. 让学生理解EDA交通灯的基本原理,掌握交通灯控制系统的设计方法和步骤。
2. 使学生掌握交通灯控制系统中各模块的功能和相互关系,如时钟模块、控制器模块、显示模块等。
3. 帮助学生了解交通灯控制系统的实际应用,提高对电子设计自动化技术的认识。
技能目标:1. 培养学生运用所学知识,设计并实现一个简单的EDA交通灯控制系统的能力。
2. 培养学生使用相关软件(如Multisim、Protel等)进行电路仿真、绘制和调试的能力。
3. 提高学生的团队协作和沟通能力,培养他们在项目实践中解决问题的能力。
情感态度价值观目标:1. 培养学生对电子设计自动化技术的兴趣,激发他们探索未知、创新实践的热情。
2. 培养学生关注社会问题,认识到交通灯控制系统在提高道路通行效率、保障交通安全方面的重要性。
3. 引导学生树立正确的价值观,认识到科技发展应服务于社会、造福于人类。
课程性质:本课程为实践性较强的电子设计课程,以项目为导向,注重培养学生的实际操作能力和团队协作能力。
学生特点:学生具备一定的电子技术基础知识,具有较强的学习兴趣和动手能力,但对EDA技术及其应用尚不熟悉。
教学要求:结合学生特点,采用讲授与实践相结合的教学方法,注重引导学生主动参与、积极探索,提高他们的实际操作能力和创新能力。
在教学过程中,关注学生的个体差异,给予个性化的指导和支持。
通过本课程的学习,使学生能够达到上述课程目标,为后续相关课程的学习和实践奠定基础。
二、教学内容1. 交通灯控制系统概述:介绍交通灯控制系统的基本概念、分类及其在现实生活中的应用。
相关教材章节:第一章 电子设计自动化概述2. EDA技术基础:讲解EDA技术的基本原理、发展历程和常用软件工具。
相关教材章节:第二章 EDA技术基础3. 交通灯控制器设计:a. 时钟模块设计:介绍时钟电路的原理与设计方法。
b. 控制器模块设计:讲解控制器的工作原理、编程方法。
eda交通灯控制器课程设计

eda交通灯控制器课程设计课程设计:EDA交通灯控制器1. 课程背景和目标:EDA交通灯控制器是使用EDA(电子设计自动化)工具进行交通灯控制系统设计的课程。
学习该课程的目标是使学生能够熟练运用EDA工具进行交通灯控制系统设计,并能够理解交通灯控制系统的原理和设计方法。
2. 课程内容和安排:(1) 交通灯控制系统原理介绍:介绍交通灯控制系统的基本原理,包括信号机、信号控制方法和交通流量检测等。
(2) EDA工具介绍:介绍常用的EDA工具,如Verilog、VHDL等,并讲解其基本使用方法。
(3) 交通灯控制器设计流程:介绍交通灯控制器的设计流程,包括需求分析、功能设计、模块设计和系统集成等。
(4) 交通灯控制器设计实践:学生通过实践项目,使用EDA工具设计交通灯控制器。
项目涵盖设计、仿真、验证和生成等环节,学生需要独立完成设计并提交设计报告。
3. 课程教学方法:(1) 理论讲解:通过课堂讲解,介绍交通灯控制系统的原理和设计方法,以及EDA工具的使用方法。
(2) 实践项目:学生通过实践项目,运用所学知识设计交通灯控制器,并进行仿真、验证和生成等环节。
(3) 讨论和案例分析:通过课堂讨论和案例分析,加深学生对交通灯控制系统的理解和应用能力。
(4) 指导和批评:教师对学生的设计进行指导和批评,帮助学生不断提高设计能力。
4. 评估方式:(1) 实践项目报告:学生独立完成实践项目,并提交设计报告,包括设计过程、仿真结果和验证结果等。
(2) 课堂测试:通过课堂测试检验学生对交通灯控制系统原理和EDA工具的理解程度。
(3) 课堂表现:评估学生的课堂出勤情况、学习态度和参与度等。
5. 参考教材:(1) 《交通信号控制原理与技术》高新泽(2) 《EDA与数字电路设计》陈骏等(3) 《数字电路与系统设计》刘敏衡等(4) 《系统设计自动化技术与EDA工具应用》杨学庆等以上是对EDA交通灯控制器课程设计的简要介绍。
课程内容涵盖了交通灯控制系统的原理和设计方法,以及EDA工具的使用方法。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
EDA交通灯课程设计姓名:XXX学号:*********专业:*******学院:电气与信息工程学院1 系统功能设计要求1. 东西各设有一个绿、黄、红指示灯;一个2位7段数码管(1)南北和东西方向各有一组绿,黄,红灯,各自的持续时间分别为20s,5s,25s;(2)当有特殊情况时,两个方向均为红灯,计时暂停,当特殊情况结束后,控制器恢复原来状态,继续正常工作。
(3)用两组数码管,以倒计时方式显示两个方向允许通行或禁止通行的剩余时间。
3. 能实现正常的倒计时显示功能。
能实现总体清理功能,计数器由初始状态开始计数,对应状态的指示灯亮。
2 设计原理2.1 交通灯控制器的状态转换根据论文题目要求,将红绿灯的状态转换列成如下表上表为交通灯控制器的状态转换表2.2设计方案1、显示模块由两部分组成,一是由七段数码管组成的倒计时显示器,每个方向两个七段数码管;二是由发光二极管代替的交通灯,每个方向3个发光二极管。
2、每个方向有一组2位倒计时器模块,用以显示该方向交通灯剩余的点亮时间。
3、控制模块是交通灯的核心,主要控制交通灯按工作顺序自动变换,同时控制倒计时模块工作,每当倒计时回零时,控制模块接收到一个计时信号,从而控制交通灯进入下一个工作状态。
2.2 LED动态显示与频率由于交通灯需要使用2位7段LED数码管指示通行剩余时间,故采用LED动态扫描方式显示当前时间。
频率设定CLK1k对应的频率为1024hz3 电路符号交通控制器的电路符号如图1.3所示。
其中,CLK1K为系统时钟信号输入端,SN为禁止通行信号输入通行信号输入端,light0为东西红灯信号输出端,light1为东西黄灯信号输出端,light2为东西绿灯信号输出端,light3为南北红灯信号输出端,light4为南北黄灯信号输出端,light5为南北绿灯信号输出端,led1、led2、led3、led4、为数码管地址选择信号输出端。
4 设计方法采用文本编辑法,既采用vhdl语言描述交通控制器,代码如下:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity traffic ISport (clk1k,SN:in std_logic;led1, led2, led3, led4 :out std_logic_vector (3 downto 0);--显示管显示时间用light:out std_logic_vector (5 downto 0)); --红绿黄灯end traffic;architecture traffic1 of traffic ISsignal S:std_logic_vector (1 downto 0); --状态signal DXT:std_logic_vector(7 downto 0):=X"01";--东西方向时间signal NBX:std_logic_vector(7 downto 0):=X"01";--南北方向时间signal ART,AGT,AYT,BRT,BGT,BYT: std_logic_vector(7 downto0);--红绿黄灯信号signal SL: std_logic;signal temp: integer range 0 to 1023; --产生1s计数器时计数signal clk: std_logic;beginsL<='1'; --红绿灯时间设定ART<="00100101";AGT<="00100000";AYT<="00000100";BRT<="00100101";BGT<="00100000";BYT<="00000100";process(clk1k) -- 选频率为1024HZ beginif (clk1k'event and clk1k='1') thenif temp=1023 thentemp<=0;clk<='1';elsetemp<=temp+1;clk<='0';end if;end if;end process; --进程结束process(clk,DXT,NBX) --状态转换进程beginif clk'event and clk ='1' thenif(DXT ="00000001")OR (NBX = "00000001") then S<=S+1;else S<=S;end if; --状态转换结束end if;end process;process (clk,SN,S) --倒计时模块beginif SN = '1' then DXT<=DXT; NBX<=NBX;elseif clk'event and clk='1' thenif (DXT="0000000") OR (NBX="00000000") thencase S ISwhen "00"=>DXT<=ART; NBX<=BGT; --南北红灯、东西绿灯when "01"=> NBX<=BYT; --南北红灯、东西黄灯when "10"=>DXT<=AGT; NBX<=BRT; --南北绿灯、东西红灯when "11"=>DXT<=AYT; --南北黄灯、东西红灯when others=>NULL;end case;end if;if DXT/="00000000" thenif DXT(3 downto 0)= "0000" thenDXT(3 downto 0)<="1001";DXT(7 downto 4)<=DXT(7 downto 4)-1;else DXT(3 downto 0)<=DXT(3 downto 0)-1;DXT(7 downto 4)<=DXT(7 downto 4);end if;end if;if NBX/="00000000" thenif NBX(3 downto 0)="0000" thenNBX(3 downto 0)<="1001";NBX(7 downto 4)<=NBX(7 downto 4)-1;else NBX(3 downto 0)<=NBX(3 downto 0)-1;NBX(7 downto 4)<=NBX(7 downto 4);end if;end if;end if;end if;end process; --倒计时模块结束process(SL,DXT,NBX,S,SN) --显示模块begincase SL ISwhen '1'=>led1<=NBX(3 downto 0); led2<=NBX(7 downto 4);led3<=DXT(3 downto 0);led4<=DXT(7 downto 4);when others=>NULL;end case;if SN ='1' then light<="001001";elsecase S ISwhen "00"=>light<="010001";when "01"=> light <="100001"; when "10"=> light <="001010"; when "11"=> light <="001100"; when others=>NULL;end case;end if;end process;end traffic1;5 软件仿真时序仿真图6 结论数码管动态显示,需要通过位选、段选控制。
通过查询手册,将2位位选信号接到试验箱数码管位选端,将7位段选信号连接到试验箱数码管的段选控制端。
当送人合适的控制信号后,数码管即可正常工作。
通过下载仿真后,能得到预期的实验结果。
通过拨动(开关控制)为高电平,能实现交通灯紧急状态(红灯全亮)。
若SN为低电平,数码管和主南北的红绿灯能有序亮灭。
7收获及感想短短一个星期的EDA课程设计很块就结束了,虽然在之前的学习过程中还存在着没有弄懂的问题,但是通过这次设计,进一步加深了对EDA的了解,让我对它有了更加浓厚的兴趣。
在拿到题目后,首先进行了单元模块的设计,将每一个单元模块设计完成后再经行仿真,在波形仿真的过程中,同样遇到了困难,有的时候,由于END TIME的时间修改的太大,会出现仿真时间过长的问题,这个时候应该要把END TIME的时间相应的改小,或是修改系统时钟的频率。
在设计的过程中还应该多联系下实际情况,要了解实际情况下交通信号灯的工作情况,才能更好的完成此次的课程设计。
在今后的工作和学习中,我们不能仅仅把目光停留在课本上,要多理论联系实际。
有的时候,理论上是正确的东西放到现实中去,可能由于种种因素的制约,并不能达到实际的效果,还需要我们进行相应的修改才能完成要求。
这次的课程设计使我巩固了以前学习到的知识,还使我掌握了以前没有掌握的知识,同时锻炼了自己的能力。