基于嵌入式的数字闹钟设计内容摘要:

表示,小时与分钟之间、分钟与秒之间用 3 和 6 位数码管显示 “—”,总计八位七段数码显示管。 此模式下显示当前时间。 ( 2)校时模式: 将 time 键置于 „0‟,运用功能键 set 键对八位数码管 进行选择,并由功能键 up 键进行 +1与 down 键进行 1 操作,通过此 4 个功能键进行校时设置。 Set数码管 7 Set数码管 6 Set数码管 5 Set数码管 4 Set数码管 3 Set数码管 2 Set数码管 1 Up+1。 down1。 ( 3)闹钟设定模式: 5 将 time 键置于 „1‟,设定模式与校时时设定一样,运用功能键 set 键对八位数码管进行选择,并由功能键 up 键进行 +1 与 down 键进行 1 操作,通过此 4 个功能键进行校时设置。 Set数码管 7 Set数码管 6 Set数码管 5 Set数码管 4 Set数码管 3 Set数码管 2 Set数码管 1 Up+1。 down1。 4 设计的详细原理 此多功能数字时钟是由多个模块组成,各个模块实现各自不同的作用,综合起来,便是多功能数字时钟。 主要模块 主要模块包括: ( 1)输入一个 250KHZ 的方波信号 ( 2)计时模块 : 将 time 键置于 „0‟,用软件设计,当脉冲累计 2500000 次时 secondl 自动 +1,以此类推,可得出数字时钟,并用 8 位 7 段对各时间进行显示。 输入: 250KHz 脉冲,控制键 time 等 输出:秒、分、小时 ( 3)校时模块 : 将 time 键置于 „0‟, 运用功能键 set 键对八位数码管进行选择,并由功能键 up 键进行+1 与 down 键进行 1 操作,通过此 4 个功能键进行校时设置。 输入: time 状态转换键, set 数码管选定键, up+1 键, down1 键 输出:设定后的 秒,分,小时 ( 4)设定闹钟模块: 与校时操作类似,只是先将 time 键置于 „1‟, 再运用功能键 set 键对八位数码管进行选择,并由功能键 up 键进行 +1 与 down 键进行 1 操作,通过此 4 个 功能键进行校时设置 输入: time 状态转换键, set 数码管选定键, up+1 键, down1 键 输出:所定的闹钟时间 秒,分,小时 ( 5)整点蜂鸣报时 运用软件进行设置,当 minuteH 与 minuteL 均为零时,蜂鸣器响,也就是没次整点时,蜂鸣器自动响一分钟,如果想设置响的时间,可以手动改即可。 并且可以手动按下功能键naozhong,这样就可以手动关闭蜂鸣器。 输入: naozhong 关闭蜂鸣器键 输出:蜂鸣器发出蜂鸣声 功能概述 输入一个 250KHZ 的方波信号,运用 VHDL 语言对其进行编译,用计数器对方 波信号进行技术,当 t=2500000 时, secondl 自动 +1,不断进行累加,可以达到实现数字钟自动 6 计时功能。 并且此多功能数字钟设有 5 个功能键,( 1) time 键控制显示状态,可以选择时钟状态与闹钟状态的转换( 2) naozhong 键可以手动关闭蜂鸣器( 3) set 键可以选择需要改变的数码管,以便进行调时与设定闹钟( 4) up 键对对应的数据进行 +1 操作( 5) down 键对对应的数据进行 1 操作。 通过次 5 个功能键,便可实现多功能数字时钟,拥有计时 /校时功能,设定闹钟功能,整点报时功能。 5 设计的步骤和过程 计时模块: if clk_1k39。 event and clk_1k = 39。 139。 then t:=t+1。 ct:=ct+1。 if ct=1000 then 1 秒计时。 ct:=0。 secondL:=secondL+1。 if secondL=10 then 10 秒计时。 secondL:=0。 secondH:=secondH+1。 end if。 if secondH=6 then 1 分钟计时。 secondH:=0。 minuteL:=minuteL+1。 end if。 if minuteL=10 then 10 分钟计时。 minuteL:=0。 minuteH:=minuteH+1。 end if。 if minuteH=6 then 1 小计时时。 minuteH:=0。 hourL:=hourL+1。 end if。 if hourL=10 then 10 小时计时。 hourL:=0。 hourH:=hourH+1。 end if。 if hourH=2 and hourL =4 then 24 小时计时 hourH:=0。 7 hourL:=0。 end if。 此模块的主要作用是完成 24 小时的即时显示。 校时模块: if clk39。 event and clk = 39。 139。 then d=set。 k=up。 p=down if time=39。 039。 then if ( d=39。 039。 and set=39。 139。 )then stat=stat+1。 end if。 case stat is when 1 = if(k=39。 039。 and up=39。 139。 )then hourH=hourH+1。 elsif( p=39。 039。 and down=39。 139。 )then hourH= hourH1。 end if。 when 2 = if( k=39。 039。 and up=39。 139。 )then hourL= hourL+1。 elsif( p=39。 039。 and down=39。 139。 )then hourL= hourL1。 end if。 when 3 = if(k=39。 039。 and up=39。 139。 )then minuteH= minuteH +1。 elsif( p=39。 039。 and down=39。 139。 )then minuteH= minuteH 1。 end if。 when 4 = if( k=39。 039。 and up=39。 139。 )then minuteL= minuteL+1。 elsif( p=39。 039。 and down=39。 139。 )then minuteL= minuteL1。 end if。 8 when 5= if(k=39。 039。 and up=39。 139。 )then secondH= secondH +1。 elsif(p=39。 039。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。