【数字系统】LED动态显示模块设计:数据输入/动态显示/按键信号转换 Quartus II 环境/Verilog HDL语言/编程+仿真+开发板/FPGA/CPLD/EDA

本文主要是介绍【数字系统】LED动态显示模块设计:数据输入/动态显示/按键信号转换 Quartus II 环境/Verilog HDL语言/编程+仿真+开发板/FPGA/CPLD/EDA,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、 实验目的

1. 学习理解LED动态显示的工作原理

2. 进一步掌握Verilog HDL层次化的设计方法。

3. 掌握Verilog HDL行为级描述与结构化描述方法。

4. 显示数值的数据输入模块、数据动态显示模块、信息可调整的动态显示顶层模块的设计与仿真。

二、 实验过程步骤

1、设计模块1:显示数值的数据输入display_decode

        a.模块功能要求

        八段数码管有两种不同的形式:一种是八个发光二极管的阳极都连在一起的,称之为共阳极八段数码管;另一种是八个发光二极管的阴极都连在一起的,称之为共阴极八段数码管。

        以共阳极八段数码管为例,当控制某段发光二极管的信号为低电平时,对应的发光二极管点亮,当需要显示某字符时,就将该字符对应的所有二极管点亮;共阴极二极管则相反,控制信号为高电平时点亮。电平信号按照dp,g,e…a的顺序组合形成的数据字称为该字符对应的段码,常用字符的段码表如下图。

         b.实验步骤

        (1)利用wizard新建项目,所选器件为MAX II 系列型号为EPM1270T144C5N的器件。

        (2)新建Verilog文件,名称与模块名一致,保存为display_decode.v。程序内容如下:

module display_decode(bd,y);
input [3:0]bd;
output [7:0]y;reg [7:0]y;always@(bd)
case(bd)4'b0000: y=8'b00111111;4'b0001: y=8'b00000110;4'b0010: y=8'b01011011;4'b0011: y=8'b01001111;4'b0100: y=8'b01100110;4'b0101: y=8'b01101101;4'b0110: y=8'b01111101;4'b0111: y=8'b00000111;4'b1000: y=8'b01111111;4'b1001: y=8'b01101111;default:y=8'b00000000;
endcaseendmodule

        (3)将display_decode.v设为顶层实

这篇关于【数字系统】LED动态显示模块设计:数据输入/动态显示/按键信号转换 Quartus II 环境/Verilog HDL语言/编程+仿真+开发板/FPGA/CPLD/EDA的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/683362

相关文章

Linux使用dd命令来复制和转换数据的操作方法

《Linux使用dd命令来复制和转换数据的操作方法》Linux中的dd命令是一个功能强大的数据复制和转换实用程序,它以较低级别运行,通常用于创建可启动的USB驱动器、克隆磁盘和生成随机数据等任务,本文... 目录简介功能和能力语法常用选项示例用法基础用法创建可启动www.chinasem.cn的 USB 驱动

使用SQL语言查询多个Excel表格的操作方法

《使用SQL语言查询多个Excel表格的操作方法》本文介绍了如何使用SQL语言查询多个Excel表格,通过将所有Excel表格放入一个.xlsx文件中,并使用pandas和pandasql库进行读取和... 目录如何用SQL语言查询多个Excel表格如何使用sql查询excel内容1. 简介2. 实现思路3

Go语言实现将中文转化为拼音功能

《Go语言实现将中文转化为拼音功能》这篇文章主要为大家详细介绍了Go语言中如何实现将中文转化为拼音功能,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 有这么一个需求:新用户入职 创建一系列账号比较麻烦,打算通过接口传入姓名进行初始化。想把姓名转化成拼音。因为有些账号即需要中文也需要英

Go语言使用Buffer实现高性能处理字节和字符

《Go语言使用Buffer实现高性能处理字节和字符》在Go中,bytes.Buffer是一个非常高效的类型,用于处理字节数据的读写操作,本文将详细介绍一下如何使用Buffer实现高性能处理字节和... 目录1. bytes.Buffer 的基本用法1.1. 创建和初始化 Buffer1.2. 使用 Writ

深入理解C语言的void*

《深入理解C语言的void*》本文主要介绍了C语言的void*,包括它的任意性、编译器对void*的类型检查以及需要显式类型转换的规则,具有一定的参考价值,感兴趣的可以了解一下... 目录一、void* 的类型任意性二、编译器对 void* 的类型检查三、需要显式类型转换占用的字节四、总结一、void* 的

Python中的可视化设计与UI界面实现

《Python中的可视化设计与UI界面实现》本文介绍了如何使用Python创建用户界面(UI),包括使用Tkinter、PyQt、Kivy等库进行基本窗口、动态图表和动画效果的实现,通过示例代码,展示... 目录从像素到界面:python带你玩转UI设计示例:使用Tkinter创建一个简单的窗口绘图魔法:用

Python 标准库time时间的访问和转换问题小结

《Python标准库time时间的访问和转换问题小结》time模块为Python提供了处理时间和日期的多种功能,适用于多种与时间相关的场景,包括获取当前时间、格式化时间、暂停程序执行、计算程序运行时... 目录模块介绍使用场景主要类主要函数 - time()- sleep()- localtime()- g

多模块的springboot项目发布指定模块的脚本方式

《多模块的springboot项目发布指定模块的脚本方式》该文章主要介绍了如何在多模块的SpringBoot项目中发布指定模块的脚本,作者原先的脚本会清理并编译所有模块,导致发布时间过长,通过简化脚本... 目录多模块的springboot项目发布指定模块的脚本1、不计成本地全部发布2、指定模块发布总结多模

JAVA中整型数组、字符串数组、整型数和字符串 的创建与转换的方法

《JAVA中整型数组、字符串数组、整型数和字符串的创建与转换的方法》本文介绍了Java中字符串、字符数组和整型数组的创建方法,以及它们之间的转换方法,还详细讲解了字符串中的一些常用方法,如index... 目录一、字符串、字符数组和整型数组的创建1、字符串的创建方法1.1 通过引用字符数组来创建字符串1.2

Python中构建终端应用界面利器Blessed模块的使用

《Python中构建终端应用界面利器Blessed模块的使用》Blessed库作为一个轻量级且功能强大的解决方案,开始在开发者中赢得口碑,今天,我们就一起来探索一下它是如何让终端UI开发变得轻松而高... 目录一、安装与配置:简单、快速、无障碍二、基本功能:从彩色文本到动态交互1. 显示基本内容2. 创建链