一、系统功能概述
已完成功能
1. 完成时/分/秒的依次显示并正确计数,利用六位数码管显示;
2. 时/分/秒各段个位满 10 正确进位,秒/分能做到满 60 向前进位,有系统时间清
零功能;
3. 定时器:实现整点报时,通过扬声器发出高低报时声音;
4. 时间设置,也就是手动调时功能:当认为时钟不准确时,可以分别对分/时钟进行
调整;
5. 闹钟:实现分/时闹钟设置,在时钟到达设定时间时通过扬声器响铃。有静音模式。
待改进功能:
1. 系统没有万年历功能,正在思考设计方法。
2. 应添加秒表功能。
二、系统组成以及系统各部分的设计
1、系统结构描述
用 VHDL 语言实现
library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;
use ieee.std_logic_arith.all;
use ieee.std_logic_unsigned;
entity CLK is
port(clk0,clr,clr1,mclock,hoclock,tm,th,res,rst:in std_logic;
out1,out2,out3,out4,out5,out6:out std_logic_vector(3 downto 0);
speaker:out std_logic
);
end CLK;
architecture Behavioral of CLK is
signal sech,secl:std_logic_vector(3 downto 0); --计时器,秒高低位
signal minh,minl:std_logic_vector(3 downto 0); --计时器,分高低位
signal hh,hl:std_logic_vector(3 downto 0); --计时器,时高低位
signal hoh,hol,mh,ml: std_logic_vector(3 downto 0); --闹钟,时/分高低位
signal clk:std_logic_vector(8 downto 0); --1HZ 时钟信号
signal clkl:std_logic_vector(1 downto 0); --500HZ 时钟信号
signal thh,thl,tmh,tml: std_logic_vector(3 downto 0); --时钟调整,时/分高低位
signal clk1,q500,qlk,clk500,speaker1,music,a,b,c:std_logic;--声音,高音/低音/闹钟
begin
process(clk0) --分频模块
begin
if (clk0'event and clk0='1') then
if clkl="10" then --将 1000HZ 信号,2 分频
评论0