名称:计时、闹钟、秒表的多功能数字钟设计VHDL代码Quartus仿真(文末获取)
软件:Quartus
语言:VHDL
代码功能:
计时、闹钟、秒表的多功能数字钟
2、可以调时、可以控制闹钟时间、可以控制秒表启动暂停
3、数码管显示时间
1. 工程文件
2. 程序文件
3. 程序编译
4. RTL图
5. 管脚分配
6. Testbench
7. 仿真图
整体仿真图
分频模块
计时模块
闹钟模块
秒表模块
显示模块
按键模块
响铃模块
部分代码展示:
LIBRARY ieee; USE ieee.std_logic_1164.all; --数字秒表 ENTITY Digital_clock IS PORT ( clk_50M : IN STD_LOGIC;--50MHz key_0 : IN STD_LOGIC;--模式设置按键--4'd0:计时,4'd1:闹钟,4'd2:跑表 key_1 : IN STD_LOGIC;--设置修改,跑表启动 key_2 : IN STD_LOGIC;--修改确认,跑表暂停 key_3 : IN STD_LOGIC;--修改时分秒,跑表复位,闹钟关闭 bell_out : OUT STD_LOGIC; led_mode : OUT STD_LOGIC_VECTOR(3 DOWNTO 0);--led显示当前模式 HEX5 : OUT STD_LOGIC_VECTOR(7 DOWNTO 0);--数码管段选 HEX4 : OUT STD_LOGIC_VECTOR(7 DOWNTO 0);--数码管段选 HEX3 : OUT STD_LOGIC_VECTOR(7 DOWNTO 0);--数码管段选 HEX2 : OUT STD_LOGIC_VECTOR(7 DOWNTO 0);--数码管段选 HEX1 : OUT STD_LOGIC_VECTOR(7 DOWNTO 0);--数码管段选 HEX0 : OUT STD_LOGIC_VECTOR(7 DOWNTO 0)--数码管段选 ); END Digital_clock; ARCHITECTURE behave OF Digital_clock IS --模块声明 --响铃模块 COMPONENT Bell IS PORT ( clk_50M : IN STD_LOGIC; clear_alarm : IN STD_LOGIC; alarm_hour_time : IN STD_LOGIC_VECTOR(7 DOWNTO 0); alarm_minute_time : IN STD_LOGIC_VECTOR(7 DOWNTO 0); alarm_second_time : IN STD_LOGIC_VECTOR(7 DOWNTO 0); 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 alarm_clock IS PORT ( clk_50M : IN STD_LOGIC; state_mode : IN STD_LOGIC_VECTOR(3 DOWNTO 0); set_time_key : IN STD_LOGIC; confirm_key : IN STD_LOGIC; change_time_key : IN STD_LOGIC; alarm_hour_time : OUT STD_LOGIC_VECTOR(7 DOWNTO 0); alarm_minute_time : OUT STD_LOGIC_VECTOR(7 DOWNTO 0); alarm_second_time : OUT STD_LOGIC_VECTOR(7 DOWNTO 0) ); END COMPONENT;
源代码
到此这篇时钟代码(时钟代码怎么编写)的文章就介绍到这了,更多相关内容请继续浏览下面的相关 推荐文章,希望大家都能在编程的领域有一番成就!点击下方的公众号卡片获取
版权声明:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权、违法违规、事实不符,请将相关资料发送至xkadmin@xkablog.com进行投诉反馈,一经查实,立即处理!
转载请注明出处,原文链接:https://www.xkablog.com/bcyy/14917.html