基于FPGA的十字路口交通灯控制器设计.doc

上传人:h**** 文档编号:131053 上传时间:2018-07-09 格式:DOC 页数:12 大小:519.50KB
下载 相关 举报
基于FPGA的十字路口交通灯控制器设计.doc_第1页
第1页 / 共12页
基于FPGA的十字路口交通灯控制器设计.doc_第2页
第2页 / 共12页
基于FPGA的十字路口交通灯控制器设计.doc_第3页
第3页 / 共12页
基于FPGA的十字路口交通灯控制器设计.doc_第4页
第4页 / 共12页
基于FPGA的十字路口交通灯控制器设计.doc_第5页
第5页 / 共12页
点击查看更多>>
资源描述

1、基于 FPGA 的十字路口交通灯控制器设计 石河子大学信息科学与技术学院 草鱼 成 草鱼绩 草鱼存 草鱼档 草鱼 草 鱼草鱼 草鱼 草鱼 学期 : p ork 草鱼2014 草鱼至 草鱼2015 学年 草鱼第 草鱼一 草鱼 草鱼学期 草鱼 草鱼 考试科目 : p ork电子 EDA 技术课程设计 草鱼 草鱼 草 鱼草鱼 草鱼 专 草鱼 草鱼 草鱼 草鱼业 : p ork电子信息工程 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 班 草鱼 草鱼 草鱼 草鱼级 : p ork2012 草鱼( 1)班 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼

2、草鱼 草 鱼草鱼 姓 草鱼 草鱼 草鱼 草鱼名 : p ork 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草 鱼草鱼 草鱼 学 草鱼 草鱼 草鱼 草鱼号 : p ork 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草 鱼草鱼 草鱼 任课教师 : p ork钟 草鱼 草鱼 草鱼福 草鱼 草鱼 草鱼如 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 目录 草鱼 草鱼 一 、 pork 实验目的 1 草鱼 基于 FPGA 的十字路口交通灯控制器设计 二 、 pork 测试方法

3、1 草鱼 三 、 pork 总 的 设 计 流程 1 草鱼 四 、 pork 草鱼 交 通 灯 控 制 器 的 具 体 设 计 方案 1 草鱼 五 、 pork 主 要 功 能 设 计 与 仿真 2 草鱼 草鱼 草鱼 草鱼 1 、 pork 时 钟 分 频 模块 2 草鱼 草鱼 草鱼 草鱼 2 、 pork 交通灯控制模块 3 草鱼 六 、 pork 顶层文件 8 草鱼 七 、 pork 心得体会 9 草鱼 八 、 pork 参考文献 10 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 基于 FPGA 的十字路口交通灯控制器设计 草鱼 草鱼 草鱼 基于 FPGA 的十字路口

4、交通灯控制器设计 草鱼 草鱼 草鱼 草鱼 草鱼 一 、 p ork实验目的 : pork 草鱼草鱼 弄懂交通灯的控制逻辑 , 鲤鱼 注意是十字路口 , 鲤鱼 分人行道与车道 。草鱼 车道分别有直行 、 pork左转 、 pork右转指示 , 鲤鱼 且每个指 示三种颜色 : pork红绿黄 , 鲤鱼 红绿转换时间设定 2 分钟 , 鲤鱼 红与绿之间转换之前有30 秒黄灯的闪烁 ; pork人行道有红 、 pork绿灯指示 , 鲤鱼 红绿转换时间间隔 2 分钟 , 鲤鱼 且在红绿转换之间有 30 秒的黄灯闪烁 草鱼草鱼 草鱼 二 、 p o rk测试方法 :草鱼 输入技术脉冲信号 ,仿真波形的输出

5、端的交通指示灯能按题目要求变化 .草鱼 草鱼 三 、 p o rk总的设计流程 草鱼 首先根据交通灯控制器的功能要求 , 鲤鱼 将功能要求转化成系统流程图 , 鲤鱼 然后对系统进行模块的划分 、 pork定义各个模块的具体功能 。草鱼 再开始对各个模块用 VHDL语 言编程 , 鲤鱼 并在 Quartus 草鱼 II 环境下进行编译及功能仿真 。 草鱼草鱼 草鱼 草鱼 草鱼 四 、 p o rk交通灯控制器的具体设计方案 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼

6、草鱼 主干道 草鱼 草鱼 基于 FPGA 的十字路口交通灯控制器设计 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 人行道 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 数 绿黄红 草鱼 草鱼 草鱼 草鱼 草鱼 绿 草鱼 草鱼 草鱼 草鱼 草鱼 支 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 人 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 码 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草

7、鱼 草鱼 草鱼 草鱼 红 草鱼 草鱼 草鱼 草鱼 人 草鱼 草鱼 草鱼 草鱼 草鱼 干 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 行 草鱼 草 鱼 草鱼 草鱼 草鱼 草鱼 管 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 行 草鱼 草鱼 草鱼 草鱼 草鱼 道 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 道 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 显 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 道 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草

8、鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 示 草鱼 草鱼 草 鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 人行道 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 数码显示管 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 主干线 草鱼 草鱼 草鱼 图 1 草鱼 十字路口交通灯控制器的平面图 草鱼 草鱼 实现红黄绿灯的自动指挥 。 草鱼 通过交通灯控制器要能够使用于一条由主干

9、道和支干道交汇处的十字路口(假设东西方向为主干道 , 鲤鱼 南北方向为支干道) 。 草鱼 且遵循“主干道优先考虑”原则 ,鲤鱼 主 、 pork支干道红 、 pork绿灯亮的时间不完全一致 , 鲤鱼 在正常情况下主干道允许车辆通行的时间更长 。 草鱼 在绿灯转换为红灯的过程中有黄灯进行 , 鲤鱼 使车辆有足够的时间停下来 。 草鱼 另外由 VHDL 语言合理设计交通灯控制器的功能 , 鲤鱼 以使绿 、 pork黄 、 pork红灯的转换有一个准确的转换顺序和时间间隔 。 草鱼 依据设计要求 , 鲤鱼 最终画出如图所示的系统框图 。 草鱼 (图 1) 草鱼草鱼 草鱼 五 、 p o rk主要功能

10、模块设 计与仿真 草鱼 1、 pork时钟分频模块 草鱼 分频模块的作用是为系统提供所需的计时脉冲 。 草鱼 FPGA 器件基于 FPGA 的十字路口交通灯控制器设计 FLEX 草鱼 EPF10K10LC84 上时钟源频率为 4MHZ, 鲤鱼 而系统的时钟计时模块需要 1HZ 的脉冲 。 草鱼 因此需要对 4MHZ的时钟信号进行分频 ,鲤鱼 产生 1S 的方波 , 鲤鱼 作为系统的计时脉冲 。 草鱼草鱼 其电路符号如图 2 所示 : pork 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草

11、鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼草鱼 草鱼 图 2 时钟分频模块的电路符号 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 在模块中 , 鲤鱼 clkin 分频器产生的 1hz的输出脉冲

12、 。 草鱼 其控制程序如下所示 : pork草鱼 LIBRARY 草鱼 IEEE;pork草鱼 USE 草鱼 IEEE.STD_LOGIC_1164.ALL;pork草鱼 USE 草鱼 IEEE.STD_LOGIC_UNSIGNED.ALL;pork草鱼 ENTITY 草鱼 FENPINGI 草鱼 IS 草鱼 PORT( 草鱼 CLKIN 草鱼 : 草鱼 IN 草鱼 STD_LOGIC;pork草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 CLKOUT 草鱼 : 草鱼 OUT 草鱼 STD_LOGIC 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 );p

13、ork草鱼 END 草鱼 FENPINGI;pork草鱼 草鱼 ARCHITECTURE 草鱼 BEV 草鱼 OF 草鱼 FENPINGI 草鱼 IS 草鱼 CONSTANT 草鱼 N: 草鱼 INTEGER:=499;pork草鱼 基于 FPGA 的十字路口交通灯控制器设计 SIGNAL 草鱼 COUNTER 草鱼 : 草鱼 INTEGER 草鱼 RANGE 草鱼 0 草鱼 TO 草鱼 N;pork草鱼 SIGNAL 草鱼 CLK 草鱼 : 草鱼 STD_LOGIC;pork草鱼 BEGIN 草鱼 PROCESS(CLKIN)草鱼 BEGIN 草鱼 IF 草鱼 RISING_EDGE(CLK

14、IN) 草鱼 THEN 草鱼 IF 草鱼 COUNTER=N 草鱼 THEN 草鱼 COUNTER=0;porkCLK=NOT 草鱼 CLK;pork草鱼 ELSE 草鱼 COUNTER=COUNTER+1;porkCLKOUT=CLK;pork草鱼 END 草鱼 IF;pork草鱼 END 草鱼 IF;pork草鱼 End 草鱼 PROCESS;pork草鱼 END;pork草鱼 草鱼 分频模块的仿真图 3所示 : pork草鱼 草鱼 图 3 草鱼 时钟分频模块仿真图 草鱼 为方便观看波形 , 鲤鱼 时钟信号的周期并未严格按要求设置 。 草鱼 从图中可以看出该模块完成了分频功能 。 草鱼草鱼

15、 草鱼 2、 pork交通灯控制模块 草鱼 控制模块依据外部输入输出信号 , 鲤鱼 来控制交通灯其他部分协调基于 FPGA 的十字路口交通灯控制器设计 工作 。 草鱼草鱼 执行程序如下 : pork草鱼 LIBRARY 草鱼 IEEE;pork草鱼 USE 草鱼 IEEE.STD_LOGIC_1164.ALL;pork草鱼 USE 草鱼 IEEE.STD_LOGIC_UNSIGNED.ALL;pork草鱼 ENTITY 草鱼 CONTROL 草鱼 IS 草鱼 port(CLK:in 草鱼 std_logic;pork草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 mr_g_y_z_p:out 草鱼 std

16、_logic_VECTOR(4 草鱼 downto 草鱼 0);pork草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 sr_g_y_z_p:out 草 鱼std_logic_VECTOR(4 草鱼 downto 草鱼 0);pork草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 end;pork草鱼 草鱼 草鱼 ARCHITECTURE 草鱼 ONE 草鱼 OF 草鱼 CONTROL 草鱼 IS 草鱼 草鱼草鱼 草鱼 SIGNAL 草鱼 T:INTEGER:=0;pork草鱼 草鱼 begin 草鱼 草鱼 process(clk)草鱼 草鱼 BEGIN 草鱼 草鱼 草鱼 IF 草鱼 CLKEVENT 草鱼 AND

17、草鱼 CLK=1THEN 草鱼 草鱼 草鱼 IF 草鱼 T=0 草鱼 THEN 草鱼 草鱼 草鱼 草鱼 草鱼 mr_g_y_z_p=“10011“;pork 草鱼 草鱼 草鱼 草鱼sr_g_y_z_p=“10001“;pork草鱼 ELSIF 草鱼 T=25 草鱼 THEN 草鱼 草鱼 草鱼 mr_g_y_z_p=“01000“;pork 草鱼 草鱼 草鱼sr_g_y_z_p=“10000“;pork 草鱼草鱼 ELSIF 草鱼 T=30 草鱼 THEN 草鱼 草鱼 草鱼 mr_g_y_z_p=“00100“;pork 草鱼 草鱼 草鱼 sr_g_y_z_p 草鱼=“10000“;pork 草

18、鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼草鱼 基于 FPGA 的十字路口交通灯控制器设计 ELSIF 草鱼 T=60 草鱼 THEN 草鱼 草鱼 草鱼 sr_g_y_z_p=“10011“;pork 草鱼 草鱼 草鱼mr_g_y_z_p=“10001“;pork 草鱼 草鱼草鱼 ELSIF 草鱼 T=85 草鱼 THEN 草鱼 草鱼 草鱼 sr_g_y_z_p=“01000“;pork 草鱼 草鱼 草鱼mr_g_y_z_p=“10000“;pork草鱼 ELSIF 草鱼 T=90 草鱼 THEN 草鱼 草鱼 草鱼 sr_g_y_z_p=

19、“00100“;pork 草鱼 草鱼 草鱼 mr_g_y_z_p 草鱼=“10000“;pork草鱼 END 草鱼 IF;pork草鱼 T=T+1;pork草鱼 END 草鱼 IF;pork草鱼 IF 草鱼 T=120 草鱼 THEN 草鱼 T=0;pork草鱼 end 草鱼 if;pork草鱼 end 草鱼 process;pork草鱼 end;pork草鱼 草鱼 草鱼 其电路符号如图 4所示 : pork草鱼 草鱼 图 4 控制模块的电路符号 草鱼 1、 porkCLK为分频器产生的 1hz时钟脉冲 。 草鱼草鱼 mg-r-y-z-p4.0分别代表主干道的绿 、 pork红 、 pork黄

20、左拐人行道指示灯 , 鲤鱼 sg-r-y-z-p4.0分别代表支干道的绿 、 pork红 、 pork黄左拐人行道指示灯 , 鲤鱼 其中绿灯亮表示允许通行 , 鲤鱼 红灯亮表示禁止通行 。基于 FPGA 的十字路口交通灯控制器设计 草鱼草鱼 通过程序的编译仿真可以知道 , 鲤鱼 车道实现分别有直行 、 pork左转 、pork右转指示 , 鲤鱼 且每个指示三种颜色 : pork红绿黄 , 鲤鱼 红绿转换时间设定2 分钟 , 鲤鱼 红与绿之间转换之前有 30 秒黄灯的闪烁 ; pork人行道有红 、 pork绿灯指示 , 鲤鱼 红绿转换时间间隔 2 分钟 , 鲤鱼 且在红绿转换之间有 30 秒的

21、黄灯闪烁 。 草鱼 转弯方向均一致 。 草鱼草鱼 草鱼 草鱼 仿真图如图 5 所示 : pork草鱼 草鱼 图 5 控制电路模块仿真图波形 草鱼 草鱼 草鱼 六 、 p o rk顶层文件 草鱼 将以上各个模块仿真成功后 , 鲤鱼 再编写顶层文件 , 鲤鱼 将各个单元模块连 接起来 , 鲤鱼 统一调配 , 鲤鱼 得到顶层文件的原理图如下图 : pork(图6) 草鱼 草鱼 基于 FPGA 的十字路口交通灯控制器设计 图 6 草鱼 顶层文件的原理图 草鱼 由图 7 可以看出 , 鲤鱼 交通灯控制器分为两个模块 , 鲤鱼 分别是分频模块 、 pork控制模块 ; pork草鱼 其综合仿真波形图如下所

22、示 : pork草鱼 草鱼 图 7 原理图仿真出来的波形图 草鱼 草鱼 草鱼 草鱼 七 、 p o rk心得体会 : pork草鱼 通过这次设计 , 鲤鱼 让 我对 VHDL 有了更深入的理解 , 鲤鱼 熟悉了Quartus 草鱼 II 基本的使用方法 。 草鱼 我学会了 VHDL 语言的一些基本用法 , 鲤鱼 如进程语句 , 鲤鱼 if 语句等 ; pork也学会了一些基本 功能的实现方法 , 鲤鱼 如状态控制等 ; pork这次设计遇到的问题不少 , 鲤鱼 尤其是开始时对 Quartus 一无所知 , 鲤鱼 但是在老师以及同学的帮助下 , 鲤鱼加上通过百度文库的教程 , 鲤鱼 慢慢的明白一些操作 。 草鱼 通过经常和同学交流 , 鲤鱼 指导下 发现自己 许多的的纰漏和不足 。 草鱼 编写的程序也是到处有错 , 鲤鱼 后面在一边查资料一边 将每个单 元模块完成之后再进行仿真 。 草鱼草鱼 程序调试最为重要 , 鲤鱼 在编译完程序后 , 鲤鱼 编译查错最初有很多错误 , 鲤鱼 有输入错误 , 鲤鱼 语法错误 , 鲤鱼 通过反复的查错修改最终通过了

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文资料库 > 毕业论文

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。