数字钟VHDL电子时钟DE1-SOC开发板数字时钟报时代码下载

名称:数字钟VHDL电子时钟DE1-SOC开发板数字时钟

软件:Quartus II

语言:VHDL

代码功能:

1、设计数字钟功能,可以通过数码管显示时分秒

2、可以通过按键修改小时、分钟

3、具有整点报时功能

本代码已在DE1-SOC开发板验证,开发板如下,其他开发板可以修改管脚适配:

DE1-soc.png

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

代码下载:

数字钟VHDL电子时钟DE1-SOC开发板数字时钟名称:数字钟VHDL电子时钟DE1-SOC开发板数字时钟(代码在文末下载)软件:Quartus II语言:VHDL代码功能:1、设计数字钟功能,可以通过数码管显示时分秒2、可以通过按键修改小时、分钟3、具有整点报时功能本代码已在DE1-SOC开发板验证,开发板如下,其他开发板可以修改管脚适配:FPGA代码Verilog/VHDL代码资源下载:www.hdlcode.com部分代码展示:LIBRARicon-default.png?t=N7T8http://www.hdlcode.com/index.php?m=home&c=View&a=index&aid=254

部分代码展示:

LIBRARY ieee;
   USE ieee.std_logic_1164.all;
--数字钟
ENTITY Digital_clock_A111417 IS
   PORT (
      clk_in    : IN STD_LOGIC;--50MHz
      bell_out   : OUT STD_LOGIC;--整点报时蜂鸣器,BELL 当 I/O15 为低电平时 BELL 发出嘟嘟的声音
key_hour   : IN STD_LOGIC;--修改小时
key_minute : IN STD_LOGIC;--修改分钟
      --6个数码管
      HEX0   : OUT STD_LOGIC_VECTOR(6 DOWNTO 0);
      HEX1   : OUT STD_LOGIC_VECTOR(6 DOWNTO 0);
      HEX2   : OUT STD_LOGIC_VECTOR(6 DOWNTO 0);
      HEX3   : OUT STD_LOGIC_VECTOR(6 DOWNTO 0);
      HEX4   : OUT STD_LOGIC_VECTOR(6 DOWNTO 0);
      HEX5   : OUT STD_LOGIC_VECTOR(6 DOWNTO 0)
   );
END Digital_clock_A111417;
ARCHITECTURE trans OF Digital_clock_A111417 IS
--模块声明
   COMPONENT Bell IS
      PORT (
         clk_in    : IN STD_LOGIC;
         hour_time  : IN STD_LOGIC_VECTOR(7 DOWNTO 0);
         minute_time : IN STD_LOGIC_VECTOR(7 DOWNTO 0);
         second_time : IN STD_LOGIC_VECTOR(7 DOWNTO 0);
         bell_out   : OUT STD_LOGIC
      );
   END COMPONENT;
   
--数码管显示模块
COMPONENT HEX IS
   PORT (
      clk    : IN STD_LOGIC;
      hour_time          : IN STD_LOGIC_VECTOR(7 DOWNTO 0);--时
      minute_time        : IN STD_LOGIC_VECTOR(7 DOWNTO 0);--分
      second_time        : IN STD_LOGIC_VECTOR(7 DOWNTO 0);--秒
      --6个数码管
      HEX0   : OUT STD_LOGIC_VECTOR(6 DOWNTO 0);
      HEX1   : OUT STD_LOGIC_VECTOR(6 DOWNTO 0);
      HEX2   : OUT STD_LOGIC_VECTOR(6 DOWNTO 0);
      HEX3   : OUT STD_LOGIC_VECTOR(6 DOWNTO 0);
      HEX4   : OUT STD_LOGIC_VECTOR(6 DOWNTO 0);
      HEX5   : OUT STD_LOGIC_VECTOR(6 DOWNTO 0)
   );
END COMPONENT;
   
   COMPONENT fenping IS
      PORT (
         clk_in    : IN STD_LOGIC;
         clk_1Hz    : OUT STD_LOGIC
      );
   END COMPONENT;
   
   COMPONENT jishi IS
      PORT (
         clk_in    : IN STD_LOGIC;
key_hour   : IN STD_LOGIC;--修改小时
key_minute : IN STD_LOGIC;--修改分钟
         clk_1Hz    : IN STD_LOGIC;
         hour_time  : OUT STD_LOGIC_VECTOR(7 DOWNTO 0);
         minute_time : OUT STD_LOGIC_VECTOR(7 DOWNTO 0);
         second_time : OUT STD_LOGIC_VECTOR(7 DOWNTO 0)
      );
   END COMPONENT;
   
   SIGNAL hour_time         : STD_LOGIC_VECTOR(7 DOWNTO 0);
   SIGNAL minute_time       : STD_LOGIC_VECTOR(7 DOWNTO 0);
   SIGNAL second_time       : STD_LOGIC_VECTOR(7 DOWNTO 0);
   
   SIGNAL clk_1Hz           : STD_LOGIC;
BEGIN
   --分频到1Hz
   fenping_Hz : fenping
      PORT MAP (
         clk_in  => clk_in,
         clk_1Hz  => clk_1Hz
      );
   
   
   --计时模块
   i_jishi : jishi
      PORT MAP (
         clk_in      => clk_in,
key_hour=> key_hour,---修改小时
key_minute=> key_minute,---修改分钟
         clk_1Hz      => clk_1Hz,
         hour_time    => hour_time,--时
         minute_time  => minute_time,--分
         second_time  => second_time--秒
      );
   --响铃模块
   i_Bell : Bell
      PORT MAP (
         clk_in            => clk_in,
         
         hour_time          => hour_time,--时
         minute_time        => minute_time,--分
         second_time        => second_time,--秒
         
         bell_out           => bell_out--闹钟led
      );
  
--数码管显示模块
 i_HEX: HEX
   PORT MAP  (
      clk=> clk_in,
      hour_time=>hour_time,--时
      minute_time=>minute_time,--分
      second_time=>second_time,--秒
      --6个数码管
      HEX0=>HEX0,
      HEX1=>HEX1,
      HEX2=>HEX2,
      HEX3=>HEX3,
      HEX4=>HEX4,
      HEX5=>HEX5
   );
   
END trans;

工程文件

21e63318-024b-43d4-87cd-727accff7436.png

程序文件

12a7f229-183f-460b-a5e1-1b9d7b18ac47.png

程序编译

a35d4f5d-9e03-4d7f-b80c-6cddcee788d9.png

RTL图

a6ad79ca-d11c-45c9-8ac8-81cc4a812ad7.png

管脚分配

4c60b6a6-84d9-4f6e-81eb-7d417a58b557.png

仿真图

计时仿真

整点报时仿真

  • 3
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值