My title page contents

100以内的秒计时及显示电路设计VHDL代码Quartus仿真

名称:100以内的秒计时及显示电路设计VHDL代码Quartus仿真

软件:Quartus

语言:VHDL

代码功能:

100以内的秒计时及显示电路设计

1)基本要求

每过1s,秒计数加1,加到99,计时电路回0,采用8段数码管显示计时秒数的个位与十位数按下复位,计时清零

2)端口定义

输入复位端口R,输入32KHz时钟端口clk,输出端口个位显示FLED(7 downto0),十位显示端口SLED(7 downto0)

3)实现思路

秒计数可分为个位与十位分别计算,个位计到十,十位加一;加到99,回零。

(1)计数参考程序:个位FD(3 downto0).十位SD(3 downto0)

Process(cks)

If R='1' then

FD<="0000";SD<="0000";

elsif ck1s'event And cks ='O' then

If FD="1001" then    FD=9(in Decimal)If SD="1001" then    

SD=9(in Decimal

Else

SD<=SD+1

END IF

任务2.jpg

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


演示视频:

设计文档:

设计文档.doc

1. 工程文件

Quartus9.0版本

2. 程序文件


3. 程序编译


4. RTL图


5. 仿真文件(VWF文件)


6. 仿真图






部分代码展示:

library ieee; 
use ieee.std_logic_1164.all; 
use ieee.std_logic_arith.all; 
use ieee.std_logic_unsigned.all; 
entity second_cnt is 
port(
     clk   : in  std_logic;  --时钟32KHz
 R     : in  std_logic;  --复位
     FLED : out std_logic_vector(7 downto 0); ----个位显示  
 SLED : out std_logic_vector(7 downto 0) ----十位显示
    ); 
end second_cnt; 
 
architecture behave of second_cnt is 
 
signal ck1s: STD_LOGIC:='0';--1Hz信号
signal FD: STD_LOGIC_VECTOR(3 downto 0):="0000";--秒计数个位
signal SD: STD_LOGIC_VECTOR(3 downto 0):="0000";--秒计数十位
begin
 
--32KHz分频到秒脉冲ck1s=1Hz
Process(clk)---Process to generate 1Hz clock
    Variable count: INTEGER RANGE 0 to 15999:=0; 
Begin
If clk'EVENT AND clk='0' then
       If count=1999 then --计数分频
          count:=0;
          ck1s<=NOT(ck1s);--翻转
       Else
          count:= count+1;--计数
       END IF;
    END IF;
End Process;

代码文件(付费下载):



1、代码文件需要付费后才可见。
2、支付问题请联系微信公众号客服。
3、优质Verilog/VHDL代码资源,所见即所得。
Verilog/VHDL资源下载 » 100以内的秒计时及显示电路设计VHDL代码Quartus仿真

发表评论

模板文件不存在: ./template/plugins/comment/pc/index.htm

注册为本站会员,充值100得150,详情咨询客服

目前为止共有 *** 位优秀的会员加入! 立刻加入会员