名称:八位数码管动态显示控制电路设计VHDL代码Quartus开发板
软件:Quartus
语言:VHDL
代码功能:
设计内容
运用EDA技术,设计一个八位数码管动态显示控制电路,该控制器能够按照控制要求进行显示。
主要任务:
(1)确定总体方案。
(2)运用EDA技术完成各模块的软件设计,运用所学的电路及电子技术知识完成硬件模块设计仿真。
(3)完成全部流程:设计规范文档、模块设计、代码输入、功能仿真、约束与综合、布局布线、时序仿真、下载验证等。
拟达到的要求:
(1)恰当地运用所学理论知识,对总体方案进行必要的技术、经济比较,然后选定较佳的设计方案。
(2)编写各模块VDL源程序,绘制原理框图、顶层电路模块划分图。
系统总原理图电路图、流程图釆用规范的标准绘制,要求设计参数正确布局合理。
技术指标:
1、数码管为8个共阴数码管组成,初始值设置为20221903。
2、设置一个左移按键,每按一次左移按钮(KEY)数码管显示的内容。
FPGA代码Verilog/VHDL代码资源下载:www.hdlcode.com
本代码已在开发板验证,开发板如下,其他开发板可以修改管脚适配:
演示视频:
设计文档:
1. 工程文件
2. 程序文件
3. 程序编译
4. 管脚分配
5. 仿真图
整体仿真图
按键检测模块
移位显示模块
部分代码展示:
LIBRARY?ieee; ???USE?ieee.std_logic_1164.all; --移位显示模块 ENTITY?segment_dis?IS ???PORT?( ??????clk??????:?IN?STD_LOGIC;--时钟 ??????rst??????:?IN?STD_LOGIC;--复位 ??????shift_p??:?IN?STD_LOGIC;--移位信号 ??????data0????:?OUT?STD_LOGIC_VECTOR(3?DOWNTO?0);--第0位数字 ??????data1????:?OUT?STD_LOGIC_VECTOR(3?DOWNTO?0);--第1位数字 ??????data2????:?OUT?STD_LOGIC_VECTOR(3?DOWNTO?0);--第2位数字 ??????data3????:?OUT?STD_LOGIC_VECTOR(3?DOWNTO?0);--第3位数字 ??????data4????:?OUT?STD_LOGIC_VECTOR(3?DOWNTO?0);--第4位数字 ??????data5????:?OUT?STD_LOGIC_VECTOR(3?DOWNTO?0);--第5位数字 ??????data6????:?OUT?STD_LOGIC_VECTOR(3?DOWNTO?0);--第6位数字 ??????data7????:?OUT?STD_LOGIC_VECTOR(3?DOWNTO?0)?--第7位数字 ???); END?segment_dis; ARCHITECTURE?behave?OF?segment_dis?IS ???--定义信号 ???SIGNAL?display_num?:?STD_LOGIC_VECTOR(31?DOWNTO?0)?:=?x"20221903"; BEGIN ??? ???PROCESS?(clk,?rst) ???BEGIN ??????IF?(rst?=?'1')?THEN ?????????display_num?<=?x"20221903"; ??????ELSIF?(clk'EVENT?AND?clk?=?'1')?THEN ?????????IF?(shift_p?=?'1')?THEN--移位信号 ????????????display_num?<=?(display_num(27?DOWNTO?0)?&?display_num(31?DOWNTO?28));--循环移位信号 ?????????END?IF; ??????END?IF; ???END?PROCESS; ??? ???--输出8位数据 ???data7?<=?display_num(31?DOWNTO?28); ???data6?<=?display_num(27?DOWNTO?24); ???data5?<=?display_num(23?DOWNTO?20); ???data4?<=?display_num(19?DOWNTO?16); ???data3?<=?display_num(15?DOWNTO?12); ???data2?<=?display_num(11?DOWNTO?8); ???data1?<=?display_num(7?DOWNTO?4); ???data0?<=?display_num(3?DOWNTO?0);
点击链接获取代码文件:http://www.hdlcode.com/index.php?m=home&c=View&a=index&aid=603