第一范文网 - 专业文章范例文档资料分享平台

基于FPGA的数字电子时钟设计

来源:用户分享 时间:2025/6/16 16:09:50 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

第四章 单元电路设计 4.1 分频模块电路设计

晶体振荡器是构成数字式时钟的核心,振荡器的稳定度及频率的精度决定了数字钟计时的准确程度,它保证了时钟的走时准确及稳定。

石英晶体的选频特性非常好,只有某一频率点的信号可以通过它,其它频率段的信号均会被它所衰减,而且,振荡信号的频率与振荡电路中的R、C组件的数值无关。因此这种振荡电路输出的是准确度极高的信号。然后再利用分频电路,将其输出信号转变为秒信号,其组成框图如图4.1。

石英晶体 振荡电路 分频电路 秒信号 图4.1 秒信号产生电路框图

本系统使用的晶体振荡器电路给数字钟提供了一个频率稳定准确的20MHZ的方波信号,其输出至分频电路。分频电路的逻辑框图如图4.2所示。

diviclkoclk1soclk2msinst8 图4.2 分频电路模块

经分频后输出1HZ的标准秒信号oclk1s、500HZ的按键消去抖信号。该模块的时序仿真图如图4.3所示,满足设计要求。

16

图4.3 分频模块仿真图

4.2 校时控制模块电路设计

4.2.1 按键消抖

本模块用于当有按键按下时,采用软件的办法去除按键抖动。模块的实现方法是先判断是否有按键按下,如有按键按下则延时一段时间,待抖动过去之后再读行线状态,如果仍有低电平行线,则确定有按键按下,然后产生一个有按键按下的信号。该模块有一个时钟输入端口,输入时钟信号是分频出来的500HZ的时钟;有一个输入端口与行线相连,用于输入行线状态;一个输出端口,用于输出有按键按下的信号。该模块的逻辑框图如图4.4所示。

图4.4 消抖逻辑框图

该模块在这里实现的比较简单,原理是当有按键按下的时候,inkey会变成低电平,如果此时count不为30时,内部计数器计数,从0直到30,当计数到30时,okey输出底电平,同时给计数器赋值为30。由于计数脉冲为500HZ,故从有按键按下到输入信号产生大概需要60ms。而按键产生抖动的时间大约2ms到10ms,所以一旦计数完成,抖动已经过去,不会发生重键现象了,这样就去

17

除了抖动。

该模块的仿真波形如图4.5所示。

图4.5 按键消抖模块波形仿真

4.2.2 按键控制模块

按键控制模块的框图如图4.6所示。

a

b

图4.6 按键控制模块

图4.6中a图是控制分的高位,低位以及小时的高位的模块,b图是控制小时的低位的模块。inkey是由消抖模块输出的有键按下的信号,这个信号引发按键控制模块内部信号的变化。oaddr[3..0]作为输出信号,用于控制时间的调整。b图中的flag是判断小时高位是1还是2的信号,若为1,则flag信号为低电平;若为2,则flag信号为高电平。

1.分低位按键控制核心程序如下: ENTITY addram IS

PORT

(inkey : IN STD_LOGIC;

oaddr : OUT STD_LOGIC_VECTOR(3 downto 0));

END addram;

ARCHITECTURE addram_architecture OF addram IS signal count:std_logic_vector(3 downto 0); BEGIN

18

oaddr<=count; k1:process(inkey) begin

if rising_edge(inkey) then

count<=count+1; if count=9 then

count<=\

end if;

end if; end process k1;

END addram_architecture; 说明:

每按键一次,即每当inkey的上升沿到来时,count加一,当count等于9的时候,作为分的低位,将0赋值于count,在此过程中,随时将十进制数的count的值的8421码作为oaddr的信号。

对于分的高位,仅将程序中的count=9改成count=5即可; 对于小时的高位,仅将程序中的count=9改成count=2即可。 该模块的仿真波形如图4.7所示。

图4.7分低位按键控制模块波形仿真

2.小时低位按键控制核心程序如下: ENTITY addram3 IS

PORT

(inkey : IN STD_LOGIC; flag : IN STD_LOGIC;

19

搜索更多关于: 基于FPGA的数字电子时钟设计 的文档
基于FPGA的数字电子时钟设计.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c4dpec92m3u3cwgi88zty_5.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top