综合电子设计论文基于FPGA的交通灯设计.docx_第1页
综合电子设计论文基于FPGA的交通灯设计.docx_第2页
综合电子设计论文基于FPGA的交通灯设计.docx_第3页
综合电子设计论文基于FPGA的交通灯设计.docx_第4页
综合电子设计论文基于FPGA的交通灯设计.docx_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

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

文档简介

综合电子设计论文基于FPGA的交通灯设计 小组成员:基于FPGA的交通灯设计摘要:随着经济社会的快速发展,交通灯的优化设计成为提高人们生活水平和效率,保障人民安全的重要课题。本论文基于交通灯的基本原理:设计的交通灯由一组红黄绿灯信号控制交通灯。基于quatursII软件的Verilog HDL语言设计交通灯代码,采用Protel 99se软件绘制原理图、PCB布线。实现了交通的实物搭建。关键字:交通灯 分频模块1、引言:交通灯的最重要作用是最优化的形式引导车流、人流,是实现在固定交通资源约束的情况下,满足较多行人、车辆通过该交叉路段,实现城市交通的畅通。交通灯的工作原理是:行人车辆在各自的行走道上绿灯行、红灯停;交通灯以倒计时的方式实现各车道行人、车辆的交互通行。设计的交通灯由一组红黄绿灯信号控制交通灯。1表示灯亮,0表示灯熄。其中绿灯,黄灯,红灯的持续时间分别为25秒,5秒,20秒。从而实现交通灯的高效运行。2、系统构架:交通灯的系统构建是分为时基脉冲发生模块(即秒脉冲发生器)、红绿灯倒计时计数及控制模块(即下图中的定时器、控制器)、译码模块控制器定时器秒脉冲发生器信号灯所设计的交通信号灯控制电路,主要适用于在两条干道汇合点形成的十字交叉路口,路口设计两组红绿灯分别对两个方向上的交通运行状态进行管理。东西方向和南北方向各使用3个LED显示,红黄绿各代表红黄绿灯,绿灯亮同时是人行灯。东西方向和南北方向计时均为2位数,共需要4个LED七段数码管显示。考虑到硬件条件的限制,我们只模拟了其中一组交通灯。Time信号输出显示的内容。Clk1 r Key g t r1 g1 t1 time14.0 time24.0东西向交通灯南北向交通灯数码管显示输入交通灯的基本系统构架图设计方案:方案一:采用Verilog HDL语言直接编写,实现交通灯指挥功能。方案二:采用模块层次化设计,将此设计分为四个模块:计时模块,状态控制模块,信号灯显示模块,数码扫描显示模块。将四个模块再分别用VHDL语言编写成,做成原理图模块,用原理图输入法做整个设计的顶层文件。3 软硬件设计3.1 硬件设计上图中心为EP4CE622C8N芯片,在实物搭建时,利用LED灯作为交通灯,数码管作为倒计时计数显示器。硬件部分为搭建实物电路,即在Quartus软件中Verilog HDL语言编写的交通灯设计与EP4C6E芯片进行引脚一一搭配。实验中,LED灯指示相应的灯是否亮,且能够在相应的持续时间内保持,当计数器倒计时为零时要切换到另一个LED灯。七段数码管的使用需要把BCD码转化为七段码,从而才能进行七段码倒计时。实物演示需要把一直程序烧录入开发板中,并且引脚必须一一对应正确。3.2 软件设计软件部分主要利用protel(Altium Designer也可)软件设计的原理图和PCB图,其中PCB图需布线和铺铜。在相关的交通灯原理图如下:脉冲发生器电路原理图:(应用555芯片进行设计)计数器部分电路、控制器电路原理图如下(分别可以采用两个74LS163芯片联级作为计数倒计时、控制电路用三个74LS153芯片和触发器控制):译码器部分:(主要是把控制器的输出信息转化为LED灯的亮或灭信息)在利用QuartusII.12软件进行Verilog编程,主要程序如下:moduleww(CLK,sm_bit,sm_seg,light);inputCLK;/定义时钟引脚output3:0sm_bit;/定义数码管位选引脚output6:0sm_seg;/定义数码管段选引脚output2:0light;/定义两个方向交通灯reg3:0sm_bit_r;reg6:0sm_seg_r;reg24:0count;/定义计数器寄存器regsec;/定义秒信号寄存器regtim1=0,st1=0;/定义tim1位倒计时是否到达的位标识reg1:0state1,state2,ste;/定义一些状态reg2:0light1;reg3:0num;reg7:0num1,num2;/num1和num2的值为倒计时的值assignsm_bit=sm_bit_r;assignsm_seg=sm_seg_r;always(posedgeclk)begincount=count+1b1;if(count=25d24000000)/时间达到一秒begincount=25d0;sec=sec;endendalways(posedgeclk)begincase(count16:15)3d0:sm_bit_r=num13:0;/秒个位3d1:sm_bit_r=num17:4; /秒十位3d2:sm_bit_r=num23:0; /分个位3d3:sm_bit_r=num27:4; /分十位endcasecase(sm_bit_r) /选择数码管显示位4d0:sm_seg_r=7b0111111; /选择第一个数码管显示4d1:sm_seg_r=7b0000110; /选择第二个数码管显示4d2:sm_seg_r=7b1011011;4d3:sm_seg_r=7b1001111;4d4:sm_seg_r=7b1100110;4d5:sm_seg_r=7b1101101;4d6:sm_seg_r=7b1111101;4d7:sm_seg_r=7b0000111;4d8:sm_seg_r=7b1111111;4d9:sm_seg_r=7b1101111;endcase endalways(posedgesec)beginlight=3b001;num1=8d25;endif(!tim1)begintim1=1;case(state1)2b00:beginnum1=8d25;light=3b110;state1=2b01;end2b01:beginnum1=8d5;light=3b101;state1=2b11;end2b11:beginnum1=8d20;light=3b011;state1=2b10;end2b10:beginnum1=8d5;light=3b101;state1=2b00;end/状态机使三个状态一直循环default:light=3b011;endcaseendelsebeginif(num1=1)tim10)if(num13:0=0)beginnum13:0=4b1001;/倒计时模块num17:4=num17:4-1;endelsenum13:0=num13:0-1;endendmodule4 实验或仿真实验:5 总结本短学期,在老师的指引下,学习电子综合设计,收获匪浅。首先,我们学习了Protel 99se软件绘制电路原理图,并且通过封装绘制的原理图中的元器件,导出了PCB原理图。PCB电路图对指导电路设计的动手能力很有帮助。通过在电脑上学习PCB电路的最佳布线,向实际实践中的人工布线迈进,让我们亲身体验电路图用于生活实际的无穷乐趣。同时,我们学习了QuartusII软件,该软件功能也十分强大,能够绘制原理图、编程后烧录入开发板进行实验。虽然学习的过程充满了困难,但是也从中收获到知识和乐趣!附录利用protel 99se软件根据原理图进行PCB布线如下图:主程序:moduleww(CLK,sm_bit,sm_seg,light);inputCLK;/定义时钟引脚output3:0sm_bit;/定义数码管位选引脚output6:0sm_seg;/定义数码管段选引脚inout2:0light;/定义两个方向交通灯reg3:0sm_bit_r;reg6:0sm_seg_r;reg24:0count;/定义计数器寄存器regsec;/定义秒信号寄存器regtim1=0,st1=0;/定义tim1位倒计时是否到达的位标识reg1:0state1,state2,ste;/定义一些状态reg2:0light1;reg3:0num;reg7:0num1,num2;/num1和num2的值为倒计时的值assignsm_bit=sm_bit_r;assignsm_seg=sm_seg_r;always(posedgeCLK)begincount=count+1b1;if(count=25d24000000)/时间达到一秒begincount=25d0;sec=sec;endendalways(posedgeCLK)begincase(count16:15)3d0:sm_bit_r=num13:0;/秒个位3d1:sm_bit_r=num17:4; /秒十位3d2:sm_bit_r=num23:0; /分个位3d3:sm_bit_r=num27:4; /分十位endcasecase(sm_bit_r) /选择数码管显示位4d0:sm_seg_r=7b0111111; /选择第一个数码管显示4d1:sm_seg_r=7b0000110; /选择第二个数码管显示4d2:sm_seg_r=7b1011011;4d3:sm_seg_r=7b1001111;4d4:sm_seg_r=7b1100110;4d5:sm_seg_r=7b1101101;4d6:sm_seg_r=7b1111101;4d7:sm_seg_r=7b0000111;4d8:sm_seg_r=7b1111111;4d9:sm_seg_r=7b1101111;endcase endreg2:0re_light;always(posedgesec)beginre_light=3b001;num1=8d25;if(!tim1)begintim1=1;case(state1)2b00:beginnum1=8d25;re_light=3b110;state1=2b01;end2b01:beginnum1=8d5;re_light=3b101;state1=2b11;end2b11:beginnum1=8d20;re_light=3b011;state1=2b10;end2b10:beginnum1=8d5;r

温馨提示

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

评论

0/150

提交评论