当前位置: 首页 > news >正文

DE0开发板交通灯十字路口红绿灯VHDL

名称:基于DE0开发板的交通灯十字路口红绿灯

软件:Quartus

语言:VHDL

要求:

设计一个十字路口交通信号灯的控制电路。分为两种情况,正常状态和报警状态。

1.正常状态:要求红、绿灯按一定的规律亮和灭,并在亮灯期间进行倒计时,且将运行时间用数码管显示出来。

绿灯亮时,为该车道允许通行信号,红灯亮时,为该车道禁止通行信号。

要求主干道每次通行时间为 60秒,支干道每次通行时间为 30 秒。

每次变换运行车道前绿灯闪烁,持续时间为 5 秒。

即车道要由 X转换为 Y时,X在通行时间只剩下 5 秒钟时,绿灯闪烁显示, Y仍为红灯。

2.报警状态:亮黄灯,蜂鸣器响起。(蜂鸣器高电平触发)

外接键盘:三种模式的切换:高峰,正常,夜晚

高峰:x:绿灯 35S 红灯25S;y:绿灯 25S 红灯35S。

夜晚:x:绿灯 45S 红灯45S;y:绿灯 45S红灯45S

本代码已在DE0-CV开发板验证,板子资料如下:

FPGA_DE0-CV.pdf

代码下载:DE0开发板交通灯十字路口红绿灯_Verilog/VHDL资源下载

代码网:hdlcode.com

部分代码展示

LIBRARY ieee;USE ieee.std_logic_1164.all;
ENTITY Traffic_Light_Control ISPORT (clk     : IN STD_LOGIC;--50Mhz
reset          : IN STD_LOGIC;--复位key_1          : IN STD_LOGIC;--正常状态按键key_2          : IN STD_LOGIC;--高峰状态按键key_3          : IN STD_LOGIC;--夜晚状态按键sw1            : IN STD_LOGIC;--主路报警开关sw2            : IN STD_LOGIC;--支路报警开关beep            : OUT STD_LOGIC;--报警蜂鸣器red_1          : OUT STD_LOGIC;--主路灯green_1        : OUT STD_LOGIC;--主路灯yellow_1       : OUT STD_LOGIC;--主路灯red_2          : OUT STD_LOGIC;--支路灯green_2        : OUT STD_LOGIC;--支路灯yellow_2       : OUT STD_LOGIC;--支路灯HEX0    : OUT STD_LOGIC_VECTOR(6 DOWNTO 0);--数码管0HEX1    : OUT STD_LOGIC_VECTOR(6 DOWNTO 0);--数码管1HEX2    : OUT STD_LOGIC_VECTOR(6 DOWNTO 0);--数码管2HEX3    : OUT STD_LOGIC_VECTOR(6 DOWNTO 0)--数码管3);
END Traffic_Light_Control;
ARCHITECTURE behave OF Traffic_Light_Control IS
--分频模块
COMPONENT CLOCK IS-- Divide 50MHz to 1Hz
GENERIC(D : INTEGER := 50000000);--仿真时改小为50加快仿真速度,实际上板验证时改为50000000PORT(CLK: IN STD_LOGIC;DAV: OUT STD_LOGIC);END COMPONENT;
--交通灯控制模块
COMPONENT Traffic_Light_ctrl ISPORT (clk            : IN STD_LOGIC;reset          : IN STD_LOGIC;clk_1Hz        : IN STD_LOGIC;--1Hz信号key_1          : IN STD_LOGIC;--正常状态按键key_2          : IN STD_LOGIC;--高峰状态按键key_3          : IN STD_LOGIC;--夜晚状态按键sw1            : IN STD_LOGIC;--主路报警开关sw2            : IN STD_LOGIC;--支路报警开关
beep            : OUT STD_LOGIC;--报警蜂鸣器red_1          : OUT STD_LOGIC;--主路灯green_1        : OUT STD_LOGIC;--主路灯yellow_1       : OUT STD_LOGIC;--主路灯red_2          : OUT STD_LOGIC;--支路灯green_2        : OUT STD_LOGIC;--支路灯yellow_2       : OUT STD_LOGIC;--支路灯main_time      : OUT STD_LOGIC_VECTOR(7 DOWNTO 0);--主路倒计时branch_time    : OUT STD_LOGIC_VECTOR(7 DOWNTO 0)--支路倒计时);
END COMPONENT;
--显示模块COMPONENT HEX ISPORT (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;SIGNAL clk_1      : STD_LOGIC;SIGNAL main_time    : STD_LOGIC_VECTOR(7 DOWNTO 0);SIGNAL branch_time    : STD_LOGIC_VECTOR(7 DOWNTO 0);

设计文档(文档可下载):

设计文档.doc

1. 工程文件

2. 程序文件

3. 程序编译

4. RTL图

5. 管脚分配

6. Testbench

7. 仿真图

相关文章:

DE0开发板交通灯十字路口红绿灯VHDL

名称:基于DE0开发板的交通灯十字路口红绿灯 软件:Quartus 语言:VHDL 要求: 设计一个十字路口交通信号灯的控制电路。分为两种情况,正常状态和报警状态。 1.正常状态:要求红、绿灯按一定的规律亮和灭&a…...

华为云云耀云服务器L实例评测使用 | 通过程序实现直播流自动分段录制

华为云云耀云服务器L实例评测使用 | 通过程序实现直播流自动分段录制 1. 准备工作2. 环境搭建3. 心得总结 1. 准备工作 随着云计算时代的进一步深入,越来越多的中小企业企业与开发者需要一款简单易用、高能高效的云计算基础设施产品来支撑自身业务运营和创新开发。基…...

前端教程-webpack

官网 webpack webpack基础 视频教程 尚硅谷Webpack5入门到原理(面试开发一条龙)...

white-space几种属性的用法(处理空格)

white-space:normal 文首的空格忽略,文本内部的换行符自动转成了空格。 white-space:nowrap 不换行,即使超出容器宽度 white-space:pre 与原文本一致,空格和换行符保留 white-space:pre-…...

Linux的历史

Linux的历史 前言: 关于Linux,你可能只是听说过它是一款操作系统,也许你还知道它是开源的,但在日常生活中,你更熟悉的是Windows。 那么我们为什么要了解、学习Linux,看完这一篇,你也许可以从…...

软考高级系统架构设计师系列论文真题八:论企业集成平台的技术与应用

软考高级系统架构设计师系列论文真题八:论企业集成平台的技术与应用 一、论企业集成平台的技术与应用二、找准核心论点三、理论素材准备四、精品范文赏析1.摘要2.正文3.总结软考高级系统架构设计师系列论文之:百篇软考高级架构设计师论文范文软考高级系统架构设计师系列之:论…...

[H5动画制作系列] 路径引导动画 Demo

代码参考1: <!DOCTYPE html> <html lang="en"><head><meta charset="UTF-8" /><meta name="viewport" content="width=device-width, initial-scale=1.0" /><title>路径引导动画 Demo1</tit…...

[React] Context上下文的使用

文章目录 1.Context的介绍2.为什么需要Context3.Context的使用 1.Context的介绍 Context旨在为React复杂嵌套的各个组件提供一个生命周期内的统一属性访问对象&#xff0c;从而避免我们出现当出现复杂嵌套结构的组件需要一层层通过属性传递值得问题。 Context是为了提供一个组…...

高云FPGA系列教程(9):cmd-parser串口命令解析器移植

文章目录 @[toc]cmd-parser库简介cmd-parser库源码获取GW1NSR-4C移植cmd-parser实际测试cmd-parse命令解析器优化本文是高云FPGA系列教程的第9篇文章。 上一篇文章介绍片上ARM Cortex-M3硬核处理器串口外设的使用,演示轮询方式和中断方式接收串口数据,并进行回环测试。 本文…...

PHP8的静态变量和方法-PHP8知识详解

我们在上一课程讲到了public、private、protected这3个关键字&#xff0c;今天我们来讲解static关键字&#xff0c;明天再讲解final关键字。 如果不想通过创建对象来调用变量或方法&#xff0c;则可以将该变量或方法创建为静态变量或方法&#xff0c;也就是在变量或方法的前面…...

用AI写文章被百家号封禁

我是卢松松&#xff0c;点点上面的头像&#xff0c;欢迎关注我哦&#xff01; 千万不要用AI创作&#xff0c;尤其是原文照搬!不要用ai,不要用&#xff0c;不要用!重要的事情说三遍。 近日ID名为“爸爸在家赚钱”用AI写了4-5篇文章投稿在百家号&#xff0c;随后百度就把他帐号…...

JVM--Java类加载器笔记

Java类加载器 代码经过编译变成了字节码打包成 Jar 文件。让 JVM 去加载需要的字节码&#xff0c;变成持久代/元数据区上的 Class 对象&#xff0c;接着执行程序逻辑。 类声明周期和加载过程 步骤&#xff1a;加载->链接&#xff08;校验->准备->解析&#xff09;-…...

【在Ubuntu部署Docker项目】— PROJECT#1

一、说明 让我们深入了解 Docker。用docker构建web服务器。我们正在计划开发JavaScript API&#xff0c;建立MySQL数据库&#xff0c;并创建一个 PHP 网站使用 API 服务。Php Node.js Mysql — DockerSeries — Episode#1 二、系统架构概述 我们要构建的容器&#xff0c;是三…...

【学习笔记】LOJ #6240. 仙人掌

毒瘤题&#x1f605; 简单版本 CF235D Graph Game 首先&#xff0c;考虑建立圆方树&#xff0c;然后对于一个点双&#xff08;简单环&#xff09;上的两个点&#xff0c;有两条路径可以到达 和简单版本类似&#xff0c;考虑容斥。即枚举点对 i , j i,j i,j之间 哪些路径是联…...

java通过接口转发文件(上传下载)

java接口转发上传的文件 RequestMapping(value "/XXXX/fileUpload", method RequestMethod.POST) public String getFileUpload2(RequestParam("file") MultipartFile file, HttpServletRequest request) public static String hotMapPost3(String ur…...

Docker-部署docker-compose以及管理服务

部署docker-compose以及管理服务 文章目录 部署docker-compose以及管理服务[TOC] 前言一、docker-compose是什么&#xff1f;1、介绍2、 功能 二、安装docker-compose1.yum直接安装2.二进制安装3.pip安装 三、docker-compose部署服务1.编写docker-compose.yml文件 总结 前言 D…...

Android - Monkey 测试应用出现Crash报错IllegalStateException

问题描述 平时使用Lottie动画都是正常的&#xff0c;没出过这个crash问题&#xff0c;看下的报错信息&#xff0c;代码中文件夹也设置了&#xff0c;没看出来问题。 AndroidRuntime: java.lang.IllegalStateException: You must set an images folder before loading an imag…...

Spring源码分析 事务 实现原理

文章目录 什么是事务Spring事务管理Spring事务实现原理事务管理器事务定义事务的开启事务核心方法业务代码使用事务TransactionInterceptor 什么是事务 一般所指的事务是数据库事务&#xff0c;是指一批不可分割的数据库操作序列&#xff0c;也是数据库并发控制的基本单位。其…...

ADS-B及雷达显示终端8.3

新版本功能升级主要有如下: 1、地图更新 在上一版本8.2中使用的高程地图为由SRTM经过地形晕渲后&#xff0c;生成地形图片&#xff0c;然后对图片进行贴图&#xff0c;一一按规定位置、大小将地形图贴至底图上&#xff0c;而后在底图上进行二维矢量地图的绘制&#xff0c;包括…...

第二章:最新版零基础学习 PYTHON 教程(第二节 - Python 输入/输出–从 Python 控制台获取输入)

目录 Python 中的控制台是什么? 接受来自控制台的输入: 1. 将输入类型转换为整数:...

linux安装配置 flume

目录 一 解压安装包 二 配置部署 &#xff08;1&#xff09;修改配置 &#xff08;2&#xff09;下载工具 &#xff08;3&#xff09;创建配置文件 &#xff08;4&#xff09;启动监听测试 &#xff08;5&#xff09;flume监控文件 一 解压安装包 这里提供了网盘资源 链…...

SSM - Springboot - MyBatis-Plus 全栈体系(十五)

第三章 MyBatis 二、MyBatis 基本使用 4. CRUD 强化练习 4.1 准备数据库数据 首先&#xff0c;我们需要准备一张名为 user 的表。该表包含字段 id&#xff08;主键&#xff09;、username、password。创建SQL如下&#xff1a; CREATE TABLE user (id INT(11) NOT NULL AUT…...

win10默认浏览器改不了怎么办,解决方法详解

win10默认浏览器改不了怎么办&#xff0c;解决方法详解_蓝天网络 在使用Windows 10操作系统时&#xff0c;你可能会遇到无法更改默认浏览器的情况。这可能是因为其他程序或设置正在干扰更改。如果你也遇到了这个问题&#xff0c;不要担心&#xff0c;本文将为你提供详细的解决…...

C语言连接MySQL并执行SQL语句(hello world)

1.新建一个控制台项目 参考【VS2022 和 VS2010 C语言控制台输出 Hello World】VS2022 和 VS2010 C语言控制台输出 Hello World_vs2022源文件在哪_西晋的no1的博客-CSDN博客 2.安装MySQL 参考【MySQL 8.0.34安装教程】MySQL 8.0.34安装教程_西晋的no1的博客-CSDN博客 3.复制MySQ…...

react实现动态递增展示数字特效

在可视化展示界面时有一种场景&#xff0c;就是页面在初始化的时候&#xff0c;有些数字展示想要从某个值开始动态递增到实际值&#xff0c;形成一种动画效果。例如&#xff1a; 写一个数字递增的组件&#xff0c;有两种方式&#xff1a;1.固定步长&#xff0c;代码如下&#x…...

读取.nrrd和.dcm文件格式医学图片可视化与预处理

nrrd数据格式 MITK默认会将医学图像保存为格式为NRRD的图像&#xff0c;在这个数据格式中包含&#xff1a; 1、一个单个的数据头文件&#xff1a;为科学可视化和医学图像处理准确地表示N维度的栅格信息。 2、既能分开又能合并的图像文件。 nrrd_options输出 {u’dimension’:…...

VS CODE中的筛选器如何打开?

最近更新了vscode1.82版本&#xff0c;发现在git管理界面有一个“筛选器”功能&#xff0c;十分好用&#xff0c;后来关掉了&#xff0c;找了好久都没有找到办法打开这个筛选器功能&#xff0c;今天无意中不知道按到了哪个快捷键&#xff0c;打开了&#xff0c;就是下图这个&am…...

vue 多环境文件配置(开发,测试,生产)

1.经常我们在开发时候会有不同环境&#xff0c;要代理的路由等等都会出现不同 配置一下三个文件打包的时候&#xff0c;执行三个不同的指令就会打包不同的环境 npm run build:dev npm run build:test npm run build:prodpackage.json 中配置scripts 指令 以,env.development…...

在服务器上搭建pulseaudio的运行环境,指定其运行目录、状态目录和模块目录

如果想在搭建 PulseAudio 的服务器上指定其运行目录、状态目录和模块目录&#xff0c;可以通过修改 PulseAudio 的配置文件来实现。一般情况下所涉及的配置文件和相关选项如下所示&#xff1a; 1、配置文件路径&#xff1a;通常情况下&#xff0c;PulseAudio 的配置文件位于 /…...

[Qt]QListView 重绘实例之一:背景重绘

0 环境 Windows 11Qt 5.15.2 MinGW x64 1 系列文章 简介&#xff1a;本系列文章&#xff0c;是以纯代码方式实现 Qt 控件的重构&#xff0c;尽量不使用 Qss 方式。 《[Qt]QListView 重绘实例之一&#xff1a;背景重绘》 《[Qt]QListView 重绘实例之二&#xff1a;列表项覆…...

高端定制网站开发建站教程详解/厦门seo排名公司

Android 个人记账程序源码 http://download.csdn.net/download/yucf1988/3419544 自定义控件ListView [复制链接] http://www.apkbus.com/android-43747-1-1.html android中webservce获取soapObject数据的解析问题 http://topic.csdn.net/u/20120221/14/27adf0e2-8f90-4784…...

下沙做网站/体验营销策略有哪些

2022-2028年中国口腔清洁用品市场品牌竞争态势与营销战略研究报告 【报告目录】: 第一章 2019-2021年口腔清洁用品行业分析 第二章 2019-2021年牙膏行业发展分析 2.1 牙膏行业相关概述 2.1.1 牙膏定义及历史 2.1.2 牙膏的分类 2.1.3 牙膏的生产工艺 2.1.4 中国牙…...

长春电商网站建设公司排名/百度网站推广一年多少钱

本人为C初学者&#xff0c;使用的是Linux C一站式学习&#xff0c;打算把课后习题中自己写的代码都记下来&#xff0c;本打算在论坛里盖楼的&#xff0c;但是发现论坛太麻烦了&#xff0c;不能连续回复三次&#xff0c;看到max_min_ 同学的回复决定来博客记录吧&#xff0c;这里…...

怎么宣传自己的网站推广/提高关键词排名的软文案例

我想在crontab中执行一个php函数,就像在URL中一样&#xff1a;yourdomain.com/yourphp.php?functionpwdTimeout我尝试过类似的东西,但它不起作用* * * * * /var/..../webpage/yourphp.php?functionpwdTimeout如何在crontab的帮助下执行php函数.非常感谢帮助.我的php-File看起…...

惠州建设工程造价管理协会网站/英文网站推广

iPad 加 iOS 11&#xff0c;为十分强大再加一分。一直以来&#xff0c;iPad 都是高效工作方式、畅快娱乐体验和强大学习工具的代表。而 iOS 11 还将其带到了一个新境界。众多新特性和新功能将帮你更高效快捷地处理事务&#xff0c;为你带来更强大、更个性化的 iPad 使用体验。而…...

花生棒做网站/如何推广app更高效

老电脑要装什么系统比较好&#xff1f;电脑更新换代速度非常快&#xff0c;现在买的新电脑没几天就变成“老电脑”了&#xff0c;电脑目前已经普及十几年&#xff0c;最开始的老旧电脑硬件配置惨不忍睹&#xff0c;不过在那个年代算很牛逼了&#xff0c;毕竟技术有限。那么老旧…...