1、EDA 课程设计-电子钟 一、设计要求 1、基本功能要求: 设计一个电子时钟,要求可以显示时、分、秒,用户可以设置时间。 扩展功能要求: 2、 跑表功能,闹钟功能,调整数码管的亮度。 二、系统结构 控制键jian5、jian4、jian7、jian8: 数码管显示段选信号输出 sg: 选择 6 位数码管中的某一个显示数据; 发光二极管控制信号输出led(70) 闹钟声音输出speaker 通过一个 10M 信号分出各种所需频率 功能介绍 运行后,选择模式 7,8 位数码管分显示时间的时、分、秒,当前为模 式 0:时间显示模式,按键 7 为模式选择键,按下按键 7,系统进入模式 1,第 二次按下
2、为模式 2,设置时间模式,第三次按下为跑表模式,第四次为闹钟设置 模式,第五次为亮度调节模式:设置时间模式,按键 4 控制更改数码管的位,按 键 5 控制选中数码管的数值,时间设置完成后,按键按键 8,设置时间会保存住, 并在模式 0 中显示;系统进入模式 2:秒表模式,按键 4 为开始/结束键,按键 5 为清零键;系统进入模式 3:闹钟设置模式,相关设置与模式 1 相同,当当前时 间与闹钟设置时间相同时,喇叭就会响;系统进入模式 4:亮度调节模式,通过按 键 4 设置亮度,共三种亮度;再按下按键 7,系统又会进入模式 0。 4、RTL 图 三、VHDL源程序 1、library ieee;
3、-通过 10M 分出所需频率 use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; entity fenpin is port ( clk_10M : in std_logic; clk_10000 : out std_logic; clk_100 : out std_logic; clk_1 : out std_logic ); end entity; architecture sub1 of fenpin is signal Q_1 : std_logic_vector(8 downto 0); signal Q_2 :
4、 std_logic_vector(6 downto 0); signal Q_3 : std_logic_vector(6 downto 0); signal clk10000 : std_logic; signal clk100 : std_logic; signal clk1 : std_logic; begin process(clk_10M) begin if clk_10Mevent and clk_10M=1 then if Q_1=500 then Q_1 jian8, shishi1=shishi2s,shige1=shige2s,fenshi1=fenshi2s,fenge1=fenge2s,miaoshi 1=miaoshi2s,miaoge1=miaoge2s, shishi2=shishi1s,shige2=shige1s,fenshi2=fenshi1s,fenge2=fenge1s,miaoshi2=m iaoshi1s,miaoge2=miaoge1s); u2:xianshi port map(clk_10000=