步长可变加减计数器设计VHDL代码Quartus仿真
名称:步长可变加减计数器设计VHDL代码Quartus仿真
软件:Quartus
语言:VHDL
代码功能:
步长可变加减计数器
加减步长可变,模为100,即比如步长为3,加到99后不清零 而是2;步长为3,减到0后不清零 而是97
用vhdl代码
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; --计数器 ENTITY counter IS PORT ( clk : IN STD_LOGIC;--时钟 rst_n : IN STD_LOGIC;--复位,低电平复位 add_sub : IN STD_LOGIC;--加减控制,高电平加,低电平减 step : IN STD_LOGIC_VECTOR(6 DOWNTO 0);--计数步进 count_out : OUT STD_LOGIC_VECTOR(6 DOWNTO 0)--计数器输出 ); END counter; ARCHITECTURE RTL OF counter IS SIGNAL count : STD_LOGIC_VECTOR(6 DOWNTO 0);--定义信号 BEGIN PROCESS (clk, rst_n) BEGIN IF ((NOT(rst_n)) = '1') THEN--复位,低电平复位 count <= "0000000"; ELSIF (clk'EVENT AND clk = '1') THEN IF (add_sub = '1') THEN--加减控制,高电平加 IF ((count + step ) > 99 ) THEN--判断相加后大于99 count <= (count + step) - "1100100";--输出为相加后减去100 ELSE count <= count + step;--相加不大于99可以正常相加 END IF; ELSE--低电平减 IF (count < step) THEN--判断count < step count <= (count + "1100100") - step;--输出将计数器加上100后再减去step ELSE count <= count - step;--count大于等于step可以直接相减 END IF;
代码文件(付费下载):
![]()
1、代码文件需要付费后才可见。
2、支付问题请联系微信公众号客服。
3、优质Verilog/VHDL代码资源,所见即所得。
Verilog/VHDL资源下载 » 步长可变加减计数器设计VHDL代码Quartus仿真
2、支付问题请联系微信公众号客服。
3、优质Verilog/VHDL代码资源,所见即所得。
Verilog/VHDL资源下载 » 步长可变加减计数器设计VHDL代码Quartus仿真