文档详情

基于FPGA交通灯设计.doc

发布:2025-05-18约8.02千字共16页下载文档
文本预览下载声明

河南科技学院新科学院

数字系统课程设计报告书

课题名称

基于FPGA的交通灯设计

院系

新科学院

姓名学号

夏文平、2013280218

专业班级

通信工程、通信132

指导教师

刘艳昌、雷进辉

设计时间

2014-2015学年第2学期12、13周

2015年6月5日

TOC\o1-3\h\u19278摘要 1

30400关键词 1

541Ⅰ课程设计目的 1

7129Ⅱ设计任务及要求 1

11357Ⅲ系统设计总体方案 2

28183Ⅳ各模块具体实现 2

27077㈠分频模块 2

9241㈡倒计时模块 3

23860㈢转码模块 5

26900㈣交通控制模块 6

4497Ⅴ系统仿真及硬件下载 10

7854Ⅵ遇到的问题及分析 12

25285Ⅶ结论与心得 12

5798参考文献 13

摘要

交通灯信号控制器通常要实现自动控制和手动控制其红绿灯的变化,基于FPGA设计的交通灯信号控制器电路简单、可靠性好。本设计可控制2个路口的红、黄、绿三盏灯.让其按特定的规律进行变化。利用QuartusⅡ对设计结果进行仿真,发现系统工作性能良好。据此设计而成的硬件电路,也实现了控制要求。

关键词:交通灯自动控制手动控制

Ⅰ课程设计目的。

巩固加深所学电子技术课程的基本知识,提高综合运用所学知识的能力。同时培养学生选用参考书、查阅手册、图表和文献资料的能力,提高解决实际问题的能力。并且,在设计方案分析比较、设计计算、电路安装等缓解掌握使用电路的设计方法。然后提高学生的动手能力,掌握仪器设备的正确使用方法。最后了解与课题有关的电路以及元器件的工程技术规范,能按课程设计任务数的要求编写设计说明书,可以正确反映设计和实验成果,能正确绘制电路图等。

Ⅱ设计任务及要求。

设计一个十字路口的交通灯控制电路,要求甲车道和乙车道两条交叉道路上的车辆交替运行,每次的通行时间都设为25秒。要求黄灯先亮5秒,才能变换运行车道并且黄灯亮时另一干道的红灯按1Hz的频率闪烁。要求通行时间及黄灯亮的时间均可在60秒内任意设定。要求交通灯控制电路可以手动控制立即进入特殊运行状态,即两条道上红灯全亮,时钟停止计时。当特殊运行状态结束后,系统复原,继续正常运行。

Ⅲ系统设计总体方案。

由设计要求可得如下交通控制器的状态转换表:

甲车道

乙车道

时间

绿灯

红灯

6S

黄灯

红灯

5S

红灯

绿灯

11S

红灯(闪烁)

黄灯

5S

Ⅳ各模块具体实现。

分频模块。

如图为分频模块。

模块功能:

实现分频功能,输入50MHz的时钟信号,对上升沿进行计数,每50M个脉冲的上升沿输出一次高电平脉冲信号,从而实现分频。

模块程序如下:

moduleone_second_clk(reset,clk,cout);

inputreset,clk;

integercount;

outputregcout;

always@(posedgeclk)

if(reset)begincount=0;cout=0;end

elseif(count=1)begincount=0;cout=1;end

elsebegincount=count+1;cout=0;end

endmodule

moduletimer_NS(clk,reset,set,ld,en,state,q_NS,done_NS);

inputclk,reset,set,ld,en;

input[3:0]state;

output[7:0]q_NS;

outputdone_NS;

reg[7:0]q_NS;

parameterred_NS=8d10,green_NS=8d5,yellow_NS=8h04;

parameterst0=4b0001,st1=4b0010,st2=4b0100,st3=4b1000;

assigndone_NS=~(|q_NS)en;

always@(posedgeclk)

if(reset)q_NS=green_NS;

elseif(ld)

case(state)

st0:q_NS=yellow_NS;

st1:q_NS=red_NS;

st2:q_NS=8h00;

st3:q_NS=green_NS;

default:q_NS=8h00;

endcase

elseif(en~set)

begin

q_NS=q_NS-1;

end

endmodule

倒计时模块。

由于是东西南北两条道路,固有两个倒计时器。

模块功能:

在相应状态

显示全部
相似文档