名称:电子计时时钟设计VHDL代码Quartus仿真
软件:Quartus
语言:VHDL
代码功能:
电子计时时钟
利用VHDL语言,实现电子计时时钟,要求能够显示分钟、秒钟,显示输出为共阴极数码管,要求:
1、电子计时时钟具有异步清零、同步置数功能,用VHDL实现计数逻辑,并阐述设计原理,给出关键block diagram设计框图。
2、用VHDL实现译码显示逻辑,并阐述设计原理,给出关键block diagram设计框图。
3、驱动的数码管为共阴极数码管,阐述电路原理,给出相应编码方式。
FPGA代码Verilog/VHDL代码资源下载:www.hdlcode.com
演示视频:
设计文档:
1. 工程文件
2. 程序文件
3. 程序编译
4. RTL图
5. 仿真图
整体仿真图
计时控制模块
数码管编码模块
部分代码展示:
LIBRARY ieee; USE ieee.std_logic_1164.all; --数码管编码模块 ENTITY decode IS PORT ( data_in : IN STD_LOGIC_VECTOR(3 DOWNTO 0);--秒计数值十位 segment : OUT STD_LOGIC_VECTOR(7 DOWNTO 0)--数码管共阴极 ); END decode; ARCHITECTURE behave OF decode IS BEGIN --共阴极 PROCESS (data_in) BEGIN CASE data_in IS --数码管编码 WHEN "0000" => segment <= "00111111";--0的编码 WHEN "0001" => segment <= "00000110";--1的编码 WHEN "0010" => segment <= "01011011";--2的编码 WHEN "0011" => segment <= "01001111";--3的编码 WHEN "0100" => segment <= "01100110";--4的编码 WHEN "0101" => segment <= "01101101";--5的编码 WHEN "0110" => segment <= "01111101";--6的编码 WHEN "0111" => segment <= "00000111";--7的编码 WHEN "1000" => segment <= "01111111";--8的编码 WHEN "1001" => segment <= "01101111";--9的编码 WHEN OTHERS => END CASE;
点击链接获取代码文件:http://www.hdlcode.com/index.php?m=home&c=View&a=index&aid=1254
阅读全文
424