EDA交通灯课程设计_第1页
EDA交通灯课程设计_第2页
EDA交通灯课程设计_第3页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、EDA交通灯课程设计XXX学号:*专业:*学院:电气与信息工程学院1. 1系统功能设计要求东西各设有一个绿、黄、红指示灯;一个2位7段数码管1南北和东西方向各有一组绿,黄,红灯,各白的持续时间分别为20s,5s,25s;2当有特殊情况时,两个方向均为红灯,计时暂停,当特殊情况结束后,控制器恢复原来状态,继续正常工作。3用两组数码管,以倒计时方式显示两个方向允许通行或禁止通行的剩余时间。3.能实现正常的倒计时显示功能。能实现总体清理功能,计数器由初始状态开始计数,对应状态的指示灯亮。2设计原理2.1交通灯控制器的状态转换根据论文题目要求,将红绿灯的状态转换列成如下表工作状态南北方向东西方向so四

2、)绿灯虎红灯亮S1阪)红灯亮S2(20s)红灯亮绿灯亮S3红灯亮上表为交通灯控制器的状态转换表设计方案1、显示模块由两部分组成,一是由七段数码管组成的倒计时显示器,每个方向两个七段数码管;二是由发光二极管代替的交通灯,每个方向3个发光二极管。2、每个方向有一组2位倒计时器模块,用以显示该方向交通灯剩余的点亮时间。3、控制模块是交通灯的核心,主要控制交通灯按工作顺序白动变换,同时控制倒计时模块工作,每当倒计时回零时,控制模块接收到一个计时信号,从而控制交通灯进入下一个工作状态。2.2LED动态显示与频率由于交通灯需要使用2位7段LED数码管指示通行剩余时间,故采用LED动态扫描方式显示当前时间。

3、频率设定CLK1k对应的频率为1024hz3电路符号交通控制器的电路符号如图1.3所示。其中,CLK1K为系统时钟信号输入端,SN为禁止通行信号输入通行信号输入端,light0为东西红灯信号输出端,lightl为东西黄灯信号输出端,light2为东西绿灯信号输出端,light3为南北红灯信号输出端,light4为南北黄灯信号输出端,light5为南北绿灯信号输出端,ledl、led2、led3、led4、为数码管地址选择信号输出端。4设计方法采用文本编辑法,既采用vhdl语言描述交通控制器,代码如下:libraryieee;useieee.std_logic_1164.all;useieee.

4、std_logic_unsigned.all;entitytrafficISport(clk1k,SN:instd_logic;led1,led2,led3,led4:outstd_logic_vector(3downto0);-显示管显示时间用light:outstd_logic_vector(5downto0);-红绿黄灯endtraffic;architecturetraffic1oftrafficISsignalS:std_logic_vector(1downto0);-状态signalDXT:std_logic_vector(7downto0):=X"01”;-东西方向时间

5、signalNBX:std_logic_vector(7downto0):=X"01"-南北方向时间signalART,AGT,AYT,BRT,BGT,BYT:std_logic_vector(7downto0);-红绿黄灯信号signalSL:std_logic;signaltemp:integerrange0to1023;-产生1s计数器时计数signalclk:std_logic;beginsL<='1'-红绿灯时间设定ART<="00100101”;AGT<="00100000”;AYT<="00

6、000100”;BRT<="00100101"BGT<="00100000”;BYT<="00000100”;process(clk1k)-选频率为1024HZbeginif(clk1k'eventandclk1k='1')theniftemp=1023thentemp<=0;clk<=T;elsetemp<=temp+1;clk<='0'endif;endif;endprocess;-进程结束process(clk,DXT,NBX)-状态转换进程beginifclk

7、9;eventandclk='1'thenif(DXT="00000001”)OR(NBX="00000001")thenS<=S+1;elseS<=S;endif;-状态转换结束endif;endprocess;process(clk,SN,S)-倒计时模块beginifSN='1'thenDXT<=DXT;NBX<=NBX;elseifclk'eventandclk='1'thenif(DXT="0000000")OR(NBX="00000000&qu

8、ot;)thencaseSISwhen"00”=>DXT<=ART;NBX<=BGT;-南北红灯、东西绿灯when"01"=>NBX<=BYT;-南北红灯、东西黄灯when"10"=>DXT<=AGT;NBX<=BRT;-南北绿灯、东西红灯when"11"=>DXT<=AYT;-南北黄灯、东西红灯whenothers=>NULL;endcase;endif;ifDXT/="00000000”thenifDXT(3downto0)="0000

9、"thenDXT(3downto0)<="1001”;DXT(7downto4)<=DXT(7downto4)-1;elseDXT(3downto0)<=DXT(3downto0)-1;DXT(7downto4)<=DXT(7downto4);endif;endif;ifNBX/="00000000"thenifNBX(3downto0)="0000"thenNBX(3downto0)<="1001"NBX(7downto4)<=NBX(7downto4)-1;elseNBX(3

10、downto0)<=NBX(3downto0)-1;NBX(7downto4)<=NBX(7downto4);endif;endif;endif;endif;endprocess;-倒计时模块结束process(SL,DXT,NBX,S,SN)-显示模块begincaseSLISwhen'1'=>led1<=NBX(3downto0);led2<=NBX(7downto4);led3<=DXT(3downto0);led4<=DXT(7downto4);whenothers=>NULL;endcase;ifSN=Tthenligh

11、t<="001001”;elsecaseSISwhen"00”=>light<="010001”;when"01"=>light<="100001”;when"10"=>light<="001010"when"11"=>light<="001100"whenothers=>NULL;endcase;endif;endprocess;endtrafficl;5软件仿真2.0msk4.0itgI6.0

12、ms8.0rrSN00I&J1H9号膏I削2H1贸3H4Ied4H2WAlightH11曲tempH34-A世DXTH24WN0XH19盈SH0d?94|dataa1.OH0酣der|dataa10H0Value'Wam0;o_XsIC_lJ"5Y4。X2:15:CJ_X3XC_lJ(0Y9。X2X110。)(25:(_2L123)(X)(21:(20)1900)(2。:(19CJ2J(is:(15)on0n0a时序仿真图6结论数码管动态显示,需要通过位选、段选控制。通过查询手册,将2位位选信号接到试验箱数码管位选端,将7位段选信号连接到试验箱数码管的段选控制端。当送

13、人合适的控制信号后,数码管即可正常工作。通过下载仿真后,能得到预期的实验结果。通过拨动开关控制为高电平,能实现交通灯紧急状态红灯全亮。假设SN为低电平,数码管和主南北的红绿灯能有序亮灭。7收获及感想短短一个星期的EDA课程设计很块就结束了,虽然在之前的学习过程中还存在着没有弄懂的问题,但是通过这次设计,进一步加深了对EDA的了解,让我对它有了更加浓厚的兴趣。在拿到题目后,首先进行了单元模块的设计,将每一个单元模块设计完成后再经行仿真,在波形仿真的过程中,同样遇到了困难,有的时候,由于ENDTIME的时间修改的太大,会出现仿真时间过长的问题,这个时候应该要把ENDTIME的时间相应的改小,或是修改系统时

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论