【数字系统】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的顺序组合形成的数据字称为该字符对应的段码,常用字符的段码表如下图。

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

         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;
endcase

你可能感兴趣的:(数字系统设计,fpga,fpga/cpld,verilog,硬件,芯片)