名称:16路数显报警器设计VHDL代码Quartus? DE2-115开发板
软件:Quartus
语言:VHDL
代码功能:
①做一个16路数显报警器的程序。
一个输入:输入信号用器件的拨码开关。
三个输出,一个用数码管显示故障的总路数,一个用数码管显示具体故障路数,一个用亮灯或者蜂鸣器报警。
②quartus
③VHDL
FPGA代码Verilog/VHDL代码资源下载:www.hdlcode.com
本代码已在DE2-115开发板验证,DE2-115开发板如下,其他开发板可以修改管脚适配:
演示视频:
设计文档:
1.?工程文件
2.?程序文件
3.?程序编译
4.?RTL图
5.?管脚分配
6.?Testbench
7.?仿真图
部分代码展示:
LIBRARY?ieee; ???USE?ieee.std_logic_1164.all; --16路数显报警器 ENTITY?Alarm_16?IS ???PORT?( ??????data??:?IN?STD_LOGIC_VECTOR(15?DOWNTO?0);--16路信号 ??????HEX0??:?OUT?STD_LOGIC_VECTOR(7?DOWNTO?0);--数码管显示故障路数个位 HEX1??:?OUT?STD_LOGIC_VECTOR(7?DOWNTO?0);--数码管显示故障路数十位 ??????HEX2??:?OUT?STD_LOGIC_VECTOR(7?DOWNTO?0);--数码管显示最高优先级故障个位 HEX3??:?OUT?STD_LOGIC_VECTOR(7?DOWNTO?0);--数码管显示最高优先级故障十位 ??????LED???:?OUT?STD_LOGIC--报警指示灯 ???); END?Alarm_16; ARCHITECTURE?behave?OF?Alarm_16?IS --模块声明 ???COMPONENT?mux16_1?IS ??????PORT?( ?????????data??:?IN?STD_LOGIC_VECTOR(15?DOWNTO?0); ?????????number?:?OUT?STD_LOGIC_VECTOR(3?DOWNTO?0); ?????????max_bit?:?OUT?STD_LOGIC_VECTOR(3?DOWNTO?0) ??????); ???END?COMPONENT; ??? COMPONENT?decode?IS ???PORT?( ??????number???:?IN?STD_LOGIC_VECTOR(3?DOWNTO?0); ??????max_bit??:?IN?STD_LOGIC_VECTOR(3?DOWNTO?0); ??????HEX0??:?OUT?STD_LOGIC_VECTOR(7?DOWNTO?0);--数码管显示故障路数个位 HEX1??:?OUT?STD_LOGIC_VECTOR(7?DOWNTO?0);--数码管显示故障路数十位 ??????HEX2??:?OUT?STD_LOGIC_VECTOR(7?DOWNTO?0);--数码管显示最高优先级故障个位 HEX3??:?OUT?STD_LOGIC_VECTOR(7?DOWNTO?0);--数码管显示最高优先级故障十位 ??????LED??????:?OUT?STD_LOGIC ???); END?COMPONENT;??? ???SIGNAL?number??:?STD_LOGIC_VECTOR(3?DOWNTO?0); ???SIGNAL?max_bit?:?STD_LOGIC_VECTOR(3?DOWNTO?0); BEGIN ??? ??? ???--16选1编码器 ???i_mux16_1?:?mux16_1 ??????PORT?MAP?( ?????????data?????=>?data,--16路信号 ?????????number???=>?number,--故障路数 ?????????max_bit??=>?max_bit--最高优先级故障 ??????);
点击链接获取代码文件:http://www.hdlcode.com/index.php?m=home&c=View&a=index&aid=1182
阅读全文
463