十字交叉路口的交通灯设计VHDL代码Quartus仿真

名称:十字交叉路口的交通灯设计VHDL代码Quartus仿真

软件:Quartus

语言:VHDL

代码功能:

设计一个由一条主干道和一条支干道的汇合点形成的十字交叉路口的交通灯控制系统,具体要求如下:

  (1) 主、支干道各设有一个绿、黄、红指示灯,两个显示数码管。

  (2) 主、支道交替允许通行,主干道每次放行60s,支干道每次放行30 s,在每次由亮绿灯变成亮红灯的转换过程中,要亮5 s的黄灯作为过渡,并进行减计时显示。 

二、要求

1、用状态机实现

2、用8段数码管分别显示两个干道的交通计时。

3、能够正常实现红、黄、绿灯的切换。


FPGA代码Verilog/VHDL代码资源下载:www.hdlcode.com


演示视频:

设计文档:

设计文档.doc

1. 工程文件

Quartus9.0版本


2. 程序文件


3. 程序编译


4. RTL图


5. 仿真文件



6. 仿真图


部分代码展示:

LIBRARY ieee;
   USE ieee.std_logic_1164.all;
ENTITY Traffic_Light_Control IS
   PORT (
      clk     : IN STD_LOGIC;--64hz
      enable  : IN STD_LOGIC;--hold,按下高电平
      R1      : OUT STD_LOGIC;--高电平亮
      G1      : OUT STD_LOGIC;--高电平亮
      Y1      : OUT STD_LOGIC;--高电平亮
      R2      : OUT STD_LOGIC;--高电平亮
      G2      : OUT STD_LOGIC;--高电平亮
      Y2      : OUT STD_LOGIC;--高电平亮
      HEX0    : OUT STD_LOGIC_VECTOR(6 DOWNTO 0);--数码管0
      HEX1    : OUT STD_LOGIC_VECTOR(6 DOWNTO 0);--数码管1
      HEX2    : OUT STD_LOGIC_VECTOR(6 DOWNTO 0);--数码管2
      HEX3    : OUT STD_LOGIC_VECTOR(6 DOWNTO 0)--数码管3
   );
END Traffic_Light_Control;
ARCHITECTURE trans OF Traffic_Light_Control IS
COMPONENT CLOCK IS-- Divide 64Hz to 1Hz
GENERIC(D : INTEGER := 64);
   PORT(CLK: IN STD_LOGIC;
         DAV: OUT STD_LOGIC);
   END COMPONENT;
   COMPONENT HEX IS
      PORT (
         clk     : IN STD_LOGIC;
         SMG_1   : IN STD_LOGIC_VECTOR(7 DOWNTO 0);
         SMG_2   : IN STD_LOGIC_VECTOR(7 DOWNTO 0);
         HEX0    : OUT STD_LOGIC_VECTOR(6 DOWNTO 0);
         HEX1    : OUT STD_LOGIC_VECTOR(6 DOWNTO 0);
         HEX2    : OUT STD_LOGIC_VECTOR(6 DOWNTO 0);
         HEX3    : OUT STD_LOGIC_VECTOR(6 DOWNTO 0)
      );
   END COMPONENT;

代码文件(付费下载):



1、代码文件需要付费后才可见。
2、支付问题请联系微信公众号客服。
3、优质Verilog/VHDL代码资源,所见即所得。
Verilog/VHDL资源下载 » 十字交叉路口的交通灯设计VHDL代码Quartus仿真

注册为本站会员,充值100得150,详情咨询客服

目前为止共有 *** 位优秀的会员加入! 立刻加入会员