名称:分频器设计VHDL代码Quartus DE2-115开发板
软件:Quartus
语言:VHDL
代码功能:
设计一个基于FPGA的分频器
设计要求
1.系统主要外设:自恢复式按键3个、共阴极数码管3个、系统时钟(50MH);
2.系统主要功能;三个按键分别控制分频器的开关和频率的增减,当开关按下时,输出频率为50MHz的方波,且频率可谓。可用增减按键控制输出频率,且由数码管显示当前输出方波频率。输出频率可调为25MHZ、50MHz、100MHZ、200MHz、500MHz
FPGA代码Verilog/VHDL代码资源下载:www.hdlcode.com
本代码已在DE2-115开发板验证,DE2-115开发板如下,其他开发板可以修改管脚适配:
演示视频:
设计文档:
1 .工程文件
2. 程序文件
3. 程序编译
4. RTL图
状态图
5. 管脚分配
6. 仿真图
部分代码展示:
LIBRARY?ieee; USE?ieee.std_logic_1164.all;? LIBRARY?work; ENTITY?divider?IS? PORT ( clk?:??IN??STD_LOGIC;--时钟输入 rst_n?:??IN??STD_LOGIC;--复位 key_add?:??IN??STD_LOGIC;--加按键 key_sub?:??IN??STD_LOGIC;--减按键 signal_out?:??OUT??STD_LOGIC;--频率信号输出 HEX0?:??OUT??STD_LOGIC_VECTOR(6?DOWNTO?0);--数码管 HEX1?:??OUT??STD_LOGIC_VECTOR(6?DOWNTO?0);--数码管 HEX2?:??OUT??STD_LOGIC_VECTOR(6?DOWNTO?0)--数码管 ); END?divider; ARCHITECTURE?bdf_type?OF?divider?IS? COMPONENT?divider_ctrl PORT(clk?:?IN?STD_LOGIC; ?rst_n?:?IN?STD_LOGIC; ?key_add?:?IN?STD_LOGIC; ?key_sub?:?IN?STD_LOGIC; ?signal_out?:?OUT?STD_LOGIC; ?dis_data?:?OUT?STD_LOGIC_VECTOR(11?DOWNTO?0) ); END?COMPONENT; COMPONENT?hex PORT(clk?:?IN?STD_LOGIC; ?dis_data?:?IN?STD_LOGIC_VECTOR(11?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) ); END?COMPONENT; SIGNALsignal_temp?:??STD_LOGIC_VECTOR(11?DOWNTO?0); BEGIN? b2v_inst?:?divider_ctrl PORT?MAP(clk?=>?clk, ?rst_n?=>?rst_n, ?key_add?=>?key_add, ?key_sub?=>?key_sub, ?signal_out?=>?signal_out, ?dis_data?=>?signal_temp);
点击链接获取代码文件:http://www.hdlcode.com/index.php?m=home&c=View&a=index&aid=1043
阅读全文