云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > EDA课程设计-电子钟

EDA课程设计-电子钟

  • 62 次阅读
  • 3 次下载
  • 2025/5/4 3:19:22

count1<=0; liang<='1';

else count1<=count1+1;liang<='0'; end if;

when 2 => if count2=4 then

count2<=0; liang<='1';

else count2<=count2+1;liang<='0'; end if;

end case; end if; end process; end;

--------例化-------

library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; entity eclock is port(

clk:in std_logic; --10m频率 key1,key4,key7,key8:in std_logic;--功能键 sg:out std_logic_vector(6 downto 0);--段选 bt:out std_logic_vector(7 downto 0);--位选 laba:out std_logic);--喇叭 end entity;

architecture bav of eclock is

component fenpin is port (

clk : in std_logic;--10m频

clk_10000 : out std_logic;--1000分频 clk_100 : out std_logic;--100k分频 clk_1 : out std_logic--10m分频 ); end component;

component clock is port(clk_1:in std_logic; key8:in std_logic;

hs_set,hg_set,ms_set,mg_set,ss_set,sg_set:in integer range 0 to 9; hs_out,hg_out,ms_out,mg_out,ss_out,sg_out:out integer range 0 to 9); end component;

component scan_led is --扫描显示 port(clk_10000:in std_logic; key4:in std_logic;

module:in integer range 0 to 4;

a0,a1,a3,a4,a6,a7:in integer range 0 to 9; sg:out std_logic_vector(6 downto 0); bt:out std_logic_vector(7 downto 0)); end component;

component change is --模式转换 port(key7:in std_logic;

module:out integer range 0 to 4); end component;

component xuanze is --五选一选择器 port(module:in integer range 0 to 4 ;

shishi1,shige1,fenshi1,fenge1,miaoshi1,miaoge1:in integer range 0 to 9;

shishi2,shige2,fenshi2,fenge2,miaoshi2,miaoge2:in integer range 0 to 9;

shishi3,shige3,fenshi3,fenge3,miaoshi3,miaoge3:in integer range 0 to 9; fenshi,fenge,miaoshi,miaoge,xmiaoshi,xmiaoge:in integer range 0 to 9;

a0,a1,a3,a4,a6,a7:out integer range 0 to 9); end component;

component set is --设置当前时间 port(module:in integer range 0 to 4; key4,key1:in std_logic;

hs_out,hg_out,ms_out,mg_out,ss_out,sg_out:out integer range 0 to 9); end component;

component miaobiao is --秒表 port(clk_100:in std_logic;

module:in integer range 0 to 4; key1,key4:in std_logic;

ms_out,mg_out,ss_out,sg_out,sss_out,ssg_out:out integer range 0 to 9); end component;

component clockset is --闹钟时间设置 port(module:in integer range 0 to 4; key4,key1:in std_logic;

hs_out,hg_out,ms_out,mg_out,ss_out,sg_out:out integer range 0 to 9); end component;

component clocklaba is --闹钟喇叭输出

port(clk_100:in std_logic;

hs1,hg1,ms1,mg1,ss1,sg1:in integer range 0 to 9; hs2,hg2,ms2,mg2,ss2,sg2:in integer range 0 to 9; laba:out std_logic); end component;

signal moshis:integer range 0 to 4; --信号声明 signal shishi1s,shige1s,fenshi1s,fenge1s,miaoshi1s,miaoge1s:integer range 0 to 9; signal shishi2s,shige2s,fenshi2s,fenge2s,miaoshi2s,miaoge2s:integer range 0 to 9; signal shishi3s,shige3s,fenshi3s,fenge3s,miaoshi3s,miaoge3s:integer range 0 to 9; signal fenshis,fenges,miaoshis,miaoges,xmiaoshis,xmiaoges: integer range 0 to 9; signal a0s,a1s,a3s,a4s,a6s,a7s: integer range 0 to 9; signal clk_10000s,clk_100s, clk_1s: std_logic;

begin --元件例化 u1:clock port map(clk_1=>clk_1s, key8=>key8,

hs_set=>shishi2s,hg_set=>shige2s,ms_set=>fenshi2s,mg_set=>fenge2s,ss_set=>miaoshi2s,sg_set=>miaoge2s,

hs_out=>shishi1s,hg_out=>shige1s,ms_out=>fenshi1s,mg_out=>fenge1s,ss_out=>miaoshi1s,sg_out=>miaoge1s);

u2:scan_led port map(clk_10000=>clk_10000s, key4=>key4, module=>moshis,

a0=>a0s,a1=>a1s,a3=>a3s,a4=>a4s,a6=>a6s,a7=>a7s, sg=>sg,bt=>bt);

u3:set port map(module=>moshis,key1=>key1,key4=>key4,

hs_out=>shishi2s,hg_out=>shige2s,ms_out=>fenshi2s,mg_out=>fenge2s,ss_out=>miaoshi2s,sg_out=>miaoge2s);

u4:change port map(key7=>key7,

module=>moshis); u5:xuanze port map(module=>moshis,

shishi1=>shishi1s,shige1=>shige1s,fenshi1=>fenshi1s,fenge1=>fenge1s,miaoshi1=>miaoshi1s,miaoge1=>miaoge1s,

shishi2=>shishi2s,shige2=>shige2s,fenshi2=>fenshi2s,fenge2=>fenge2s,miaoshi2=>miaoshi2s,miaoge2=>miaoge2s,

shishi3=>shishi3s,shige3=>shige3s,fenshi3=>fenshi3s,fenge3=>fenge3s,miaoshi3=>miaoshi3s,miaoge3=>miaoge3s,

fenshi=>fenshis,fenge=>fenges,miaoshi=>miaoshis,miaoge=>miaoges,xmiaoshi=>xmiaoshis,xmiaoge=>xmiaoges,

a0=>a0s,a1=>a1s,a3=>a3s,a4=>a4s,a6=>a6s,a7=>a7s); u6:miaobiao port map(clk_100=>clk_100s,module=>moshis, key1=>key1,key4=>key4,

ms_out=>fenshis,mg_out=>fenges,ss_out=>miaoshis,sg_out=>miaoges,sss_out=>xmiaoshis,ssg_out=>xmiaoges);

u7:fenpin port map(clk=>clk,

clk_10000=>clk_10000s, clk_100=>clk_100s, clk_1 =>clk_1s); u8:clockset port map(module=>moshis,

key1=>key1,key4=>key4,

hs_out=>shishi3s,hg_out=>shige3s,ms_out=>fenshi3s,mg_out=>fenge3s,ss_out=>miaoshi3s,sg_out=>miaoge3s);

u9:clocklaba port map(clk_100=>clk_100s,laba=>laba,

hs1=>shishi3s,hg1=>shige3s,ms1=>fenshi3s,mg1=>fenge3s,ss1=>miaoshi3s,sg1=>miaoge3s,

hs2=>shishi1s,hg2=>shige1s,ms2=>fenshi1s,mg2=>fenge1s,ss2=>miaoshi1s,sg2=>miaoge1s); end;

搜索更多关于: EDA课程设计-电子钟 的文档
  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

count1<=0; liang<='1'; else count1<=count1+1;liang<='0'; end if; when 2 => if count2=4 then count2<=0; liang<='1'; else count2<=count2+1;liang<='0'; end if; end case; end if; end process; end; --------例化------- library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all;

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com