• 方案介绍
  • 附件下载
  • 相关推荐
申请入驻 产业图谱

基于FPGA的二位十进制减法计数器VHDL代码Quartus仿真

07/25 08:13
565
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

2-240515195145345.doc

共1个文件

名称:基于FPGA的二位十进制减法计数器VHDL代码Quartus仿真

软件:Quartus

语言:VHDL

代码功能:

二位十进制减法计数器。

需要满足99—0循环减法计数功能,进行软件仿真并制出波形。需要代码、电路图、波形图,不需要实物。

FPGA代码Verilog/VHDL代码资源下载:www.hdlcode.com

演示视频:

设计文档:

1. 工程文件

2. 程序文件

3. 程序编译

4. RTL图

5. 仿真图

部分代码展示:

LIBRARY ieee;
   USE ieee.std_logic_1164.all;
   USE ieee.std_logic_unsigned.all;
--二位十进制减法计数器 99—0循环减法计数
ENTITY down_cnt IS
   PORT (
      clk    : IN STD_LOGIC;--时钟
      rst    : IN STD_LOGIC;--复位
      cnt_H  : OUT STD_LOGIC_VECTOR(3 DOWNTO 0);--计数器十位
      cnt_L  : OUT STD_LOGIC_VECTOR(3 DOWNTO 0) --计数器个位
   );
END down_cnt;
ARCHITECTURE trans OF down_cnt IS
   --定义信号
   SIGNAL count_H : STD_LOGIC_VECTOR(3 DOWNTO 0);--计数器十位
   SIGNAL count_L : STD_LOGIC_VECTOR(3 DOWNTO 0);--计数器个位
BEGIN
   --计数器控制
   PROCESS (clk, rst)
   BEGIN
      IF (rst = '1') THEN--复位清零
         count_H <= "0000";
         count_L <= "0000";
      ELSIF (clk'EVENT AND clk = '1') THEN
         IF (count_H = "0000" AND count_L = "0000") THEN--计数到00
            count_H <= "1001";--回到99
            count_L <= "1001";--
         ELSIF (count_L = "0000") THEN--个位为0
            count_H <= count_H - "0001";--十位减1
            count_L <= "1001";--个位回9

点击链接获取代码文件:http://www.hdlcode.com/index.php?m=home&c=View&a=index&aid=753

  • 2-240515195145345.doc
    下载

相关推荐