基于EDA的VHDL语言设计的交通灯综述_第1页
基于EDA的VHDL语言设计的交通灯综述_第2页
基于EDA的VHDL语言设计的交通灯综述_第3页
基于EDA的VHDL语言设计的交通灯综述_第4页
基于EDA的VHDL语言设计的交通灯综述_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

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

文档简介

1、玉林师范学院本科生课程设计论文基于Verilog HDL的RS编码器设计院系电子与通信工程学院专业通信工程学生班级通信111班姓名韦仁良学号201108402123指导教师单位电子与通信工程学院指导教师姓名陈宇宁【摘要】随着社会上特别是城市中机动车辆保有量的不断增加 ,在现代城市的日常 运行控制中,车辆的交通控制越来越重要,在十字交叉路口,越来越多的使用 红绿灯进行交通指挥和管理。本文以VHD硬件描述语言为设计手段,完成了交 通信号灯控制电路的设计,其中交通信号灯控制电路的开发目的是设计一个适 用于主、支干道十字交叉路口的红黄绿交通灯的控制系统,通过合理设计系统 功能,使红黄绿灯的转换有一个准

2、确的时间间隔和转换顺序。所设计的交通信号灯控制电路经过在Quartus n软件下进行模拟仿真,观察其波形,证明所设 计的交通信号灯控制电路完全可以实现预定的功能,并有一定的实用性。【关键词】VHDL; Quartus n ;交通灯【题目要求】用有限状态机设计一个交通灯控制器,设计要求: A路和B路,每路都有 红、黄、绿三种灯,持续时间为:红灯 45s、黄灯5s、绿灯40s。A、B路交 通灯的转换状态是:(1) A红、B绿(2) A红、B黄(3) A绿、B红(4) A黄、B红(持续时间40s);(持续时间5);(持续时间40s);(持续时间5s);【系统总体设计原理】该系统主要由分频模块fen5

3、0m_1s、控制模块traffic_control、转换模块bin2bcd以及显示模块display电路构成。其中分频模块fen50m_1s主要将 系统输入的基准时钟信号转换为1Hz的激励信号,驱动控制模块工作。控制模 块traffic_control根据计数情况对交通灯的亮灭及持续时间进行控制。转换模块bin2bcd将控制模块设计的亮灯时间的二进制转换为bcd码。显示模块display主要将亮灯时间以倒计时的形式通过数码显示出来【时钟分频模块】系统时钟脉冲为50MHz为满足各个模块脉冲需求,需要分频成2Hz和4000Hz的脉冲。fen50m_1s 模块设计,实现频率由50MHz到2Hz的转变

4、,达到我们需要的 1s的要求,模块如下图:P0rn_ls$ d rdtin c*(0utj-J r !:E iwi2分频器一端口说明:clkin:输入50MHz寸钟脉冲clkout:输出2Hz脉冲fen50m_1s实现Verilog 语言描述如下: module fen 50m_1s(clk in ,clkout);in put clk in;output clkout;reg clkout;reg 24:0 q;always (posedge clk in)begi nif (q=24999999)begi nq=0; clkout=clkout;endelse q=q+1;enden dm

5、odule编译结果:Flow StatusSuccessful - Mon Juti 23Quar tus II Versi on9 1 Build 222 10/21/2006Kevi si on N则仗tr&ffic_controlTop-level Entity Nameen50m_lsFamilyCycloneDevi ceEHC6Q2WC8Timing ModelsFinalMet timing requirementsYesTotal logic elements53 / 5,980 ( 1 % )Totial. pins2 / 135 CIS)Tottl virtual pins

6、0T口memory bits0 / 92,160 0 验)0/2 ( 0 % )10.49:38 2014SJ Full Version分频器二fen50m_4000模块设计,实现频率由 50MHz到4000Hz的转变ckin dkout:anstl分频器二端口说明:clkin:输入50MHZ时钟脉冲clkout:输出 4000Hz脉冲分频器fen50m_4000模块实现程序:module fen 50m_4000(clki n,clkout);in put clk in;output clkout;reg clkout;reg 24:0 q;always (posedge clk in)be

7、gi nif (q=12499)begi nq=0;clkout=clkout;endelse q=q+1;enden dmodule编译结果:Fl o* StatusGuartuE 工工 VersionR&vi silUm电Successful - M皿 Jun 23 13:03:18 20149.1 Euild 222 10/21/2009 SJ Full Version traffi c_controlfen50m_4000CycloneEF1C6Q240C8FinalTS52 / 5, 980 t tl2端口说明:Clock :输入时钟信号,上升沿有效。Reset :复位信号,高电平有

8、效。Redl yellowl、green1 :分别表示A路的红灯、黄灯、绿灯显示信号,高电 平有效。Red2 yellow2、green2 :分别表示B路的红灯、黄灯、绿灯显示信号,高电 平有效。Timea: A路绿灯亮时间,高电平有效。Timeb: B路红灯亮时间,高电平有效。Alarm :倒计时信号输出实现程序:moduletraffic_c on trol(clock,reset,red1,yellow1,gree n1,red2,yellow2,gree n2,timea,timeb,alarm);in put clock,reset;output red1,yellow1,gree

9、n1,red2,yellow2,gree n2,alarm;output 7:0 timea,timeb;reg 1:0 state=2b00;reg 7:0 timea=40; A路绿灯亮时间reg 7:0 timeb=45; B路红灯亮时间reg red1=1b0,yellow1=1b0,gree n1=1b1; /A绿灯亮reg red2=1b1,yellow2=1b0,gree n2=1b0; B红灯亮reg alarm=1b0;always (posedge clock or posedge reset)beg inif (reset) begi nstate=2b00; timea

10、=40; timeb=45; endelse begi n case (state) 2b00:beg inif (timea=0) /A绿灯亮时间40S结束beg intimea=5; /A 黄灯亮时间5Sred1=1b0; yellow1=1b1; green1=1b0; /A 黄灯亮 red2=1b1; yellow2=1b0; green 2=1b0; /B红灯继续亮state=2b01; / end转到A黄灯,B红灯else绿灯亮时间40S-红灯亮时间45S-beg intimea=timea-1; /Atimeb=timeb-1; /B state=2b00;endend2b01:

11、beg inif (timea=0) /A黄灯亮5S时间结束beg intimea=45; /A 红灯亮时间 45S红灯亮绿灯亮timeb=40; /B 绿灯亮时间 40S red1=1b1; yellow1=1b0; gree n1=1b0; /A red2=1b0; yellow2=1b0; green 2=1b1; /B alarm=1b0;state=2b10; / 转到A红灯,B绿灯endelsebeg intimea=timea-1; /A 黄灯亮时间 3S- timeb=timeb-1; /B 红灯亮时间 3S- alarm=alarm; yellow1=yellow1;ends

12、tate=2b01;end 2b10:beg inif (timeb=0) B绿灯亮40S时间结束beg intimeb=5; B灯黄亮时间5S/A红灯亮黄灯亮red1=1b1; yellow1=1b0; gree n1=1b0; red2=1b0; yellow2=1b1; green 2=1b0; B state=2b11; / 转到A红灯,B黄灯 endelsebeg intimea=timea-1; A 红灯亮时间- timeb=timeb-1; B 绿灯亮时间- state=2b10;endend 2b11:beg inif (timeb=0) B黄灯亮5S时间结束beg intim

13、ea=40; /A 绿灯亮时间 40S/A绿灯亮红灯亮timeb=45; B绿灯亮时间45Sred1=1b0; yellow1=1b0; gree n1=1b1;red2=1b1; yellow2=1b0; green 2=1b0; B alarm=1b0;state=2b00; / 转到A绿灯,B红灯endelsebeg intimea=timea-1; /A 红灯亮时间- timeb=timeb-1; /B 黄灯亮时间- alarm=alarm; yellow2=yellow2; state=90) beg in nu ma=9; numb=numin-90; endelse if (nu

14、min=80) beg in nu ma=8; numb=numin-80; endelse if (numin=70) beg in nu ma=7; numb=numin-70; endelse if (numin=60) beg in nu ma=6; numb=numin-60; endelse if (numin=50) beg in nu ma=5; numb=numin-50; end else if (numin=40) beg in nu ma=4; numb=numin-40; end else if (numin=30) beg in nu ma=3; numb=numi

15、n-30; end else if (numin=20) beg in nu ma=2; numb=numin-20; end else if (numin=10) beg in nu ma=1; numb=numin-10; end else beg in nu ma=0; numb=numin; endenden dmodule编译结果:Fl艸 StatusQuartuw II VersicnRevi si on NamGTop*level Entity NameF amilyEvi cTiming fflcdelsMet timing reiuirmentsTotal logi c el

16、ementsTotal pinsTotal virtual pinwTotal memory ti tsTotal PLLmSuccfissful - Nsn Jun 23 13:52:22 20140. 1 Build 222 10/21/2009 SJ Full Vision tr iffi c_coiktrollin2lclCycloneEP1C6Q240C8FirulYes40 / geo ( 1 % )1& / 105 ( 9 % )00 z 92, 160 ( 0 % i0/2 ( 0 )【数码管显示译码和扫描模块】驱动交通信号LED灯以及倒计时器数码管的显示,模块如下图:spay

17、 Ecirclkledout6.0 zh【3.q tedwi3. .q el3.05nhJ. OJzn1. .0端口说明:Scan elk: 4000Hz 时钟脉冲Ewh,smh:输入高4位BCD码Ewl,sml:输入高4位BCD码Ledout:数码管段选Ledsel :数码管位选Verilog语言描述如下:module display(sca nclk,ewh,ewl,s nh,s nl,ledout,ledsel);in put sca nclk;in put 3:0 ewh,ewl,s nh,s nl;output 6:0 ledout;output 3:0 ledsel;reg 6:0

18、 ledout;reg 3:0 ledsel;reg 3:0 bcd;reg 2:0 q;always (posedge sca nclk)beg inqv=q+1;case(q)3b000:begin Iedsel=4b0111;bcd=ewh;e nd3b001:begin ledsel=4b1011;bcd=ewl;e nd3b010:begin ledsel=4b1101;bcd=s nh;e nd3b011:begin ledsel=4b1110;bcd=s nl;end default:begin Iedsel=8b11111111;bcd=4bzzzz;e nd endcasee

19、ndalways (bcd)beg incase(bcd)4b0000:ledout=7b0111111;4b0001:ledout=7b0000110;4b0010:ledout=7b1011011;4b0011:ledout=7b1001111;4b0100:ledout=7b1100110;4b0101:ledout=7b1101101;4b0110:ledout=7b1111101;4b0111:ledout=7b0000111;4b1000:ledout=7b1111111;4b1001:ledout=7b1101111;default:ledout=7b0000000;endcas

20、eenden dmodule编译结果:Flow StatusQuartus IT VersionRevi皿 KamTop_l*val Entity Nam电 FamilyEtviceTiming ModelsMet timing requirementsTotal logi c *1 ementsTotd. pgTotal virtual pinsTotal memory LitsTotal PLLxSuccftssfuL - Wlon Jun 23 10:5416 20149.1 Euild 222 10/21/C09 SJ FiAl Version tr affi c_controldi

21、splayCyvlcxiEP106Q24DCeFinalTes22 / 5, 9S0 ( redlOutputPIN_.1791QQ red2OutputPIN 19411P resetInputPIN_4112 selout6OutputPIN 23713O selout5IOutputPIN_238山O selout 可OutputPIN 236153 selout3OutputPIN_235160 seloutl2OutputPIN_23417seloutlOutputPIN 24013 5elout0OutputPIN 23919dyelowlOutputPIN 17820 yeloZ

22、OutputPIN_19521Q tinnea3UnknownEDGEeCTTOM22令 dout6UnknownVREFG 罠 OUP-B%NQ23C dout5UnknownTOEFGROUP e4 N224O dout4UnknownVREFGR.QLP B3 N225Q dout3UnknownVREFGROUP_B3_N026 doutUnknownVREFGRQUP B4 N0276 doutlUnknownVREFGROUP_B4_N1Q dout0UnknownVREraROUP 02 N2加4 jmUnknownPIN 2t30Q sdoutMUnknownPIN_2O831奇 ledee7jUnknownPIN 22232 ledeee6UnknownPIN 2193O

温馨提示

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

评论

0/150

提交评论