• 方案介绍
  • 附件下载
  • 相关推荐
申请入驻 产业图谱

十字路口交通控制系统设计VHDL代码Quartus仿真

08/20 11:24
594
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

2-240Z31T92JX.doc

共1个文件

名称:十字路口交通控制系统设计VHDL代码Quartus仿真

软件:Quartus

语言:VHDL

代码功能:

十字路口交通控制系统

设计一个十字路口交通控制系统,其东西,南北两个方向除了有红、黄、绿灯指示是否允许通行外,还设有时钟,以倒计时方式显示每一路允许通行的时间,绿灯,黄灯,红灯的持续时间分别是40、5和45秒。

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

演示视频:

设计文档:

1. 流程图

2. 工程文件

3. 程序文件

4. 程序编译

5. RTL图

6. 仿真图

整体仿真图

分频模块

红绿灯控制模块

数码管显示模块

部分代码展示:

LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
USE IEEE.STD_LOGIC_UNSIGNED.ALL;
--分频模块
ENTITY CLOCK IS-- Divide 50MHz to 1Hz
GENERIC(D : INTEGER := 50);--50000000--仿真时减小为500,实际为50000000
PORT(CLK: IN STD_LOGIC;
      DAV: OUT STD_LOGIC);
END;
ARCHITECTURE BHV OF CLOCK IS
SIGNAL S : STD_LOGIC:='0';
SIGNAL C : STD_LOGIC_VECTOR(25 DOWNTO 0):="00000000000000000000000000";
BEGIN
PROCESS(CLK)
--VARIABLE CNT: STD_LOGIC_VECTOR(25 DOWNTO 0);
BEGIN
IF CLK'EVENT AND CLK='1' THEN
IF C = (D-1) THEN--清零
C <= "00000000000000000000000000";
S <= '1';
ELSIF C >= D/2 THEN
C <= C + 1;--计数
S <= '1';
ELSE 
C <= C + 1;--计数
S <= '0';
END IF;
END IF;
END PROCESS;
DAV <= S;--分频到1Hz
END;

点击链接获取代码文件:http://www.hdlcode.com/index.php?m=home&c=View&a=index&aid=1025

  • 2-240Z31T92JX.doc
    下载

相关推荐