基于FPGA的数字电子钟的设计与实现

  1. 系统顶层模块设计

 

  1. 系统功能

基本功能:实现秒、分钟、小时、星期的计数,分频,时分秒检测时钟选择,实现8位数码管显示计数结果。

拓展功能:“6,9”补全,时钟暂停,时钟清零,时钟加杠,星期,整点报时,秒表        的计时、暂停和清零,手动校时,切换模块,按键消抖。

  1. 设计思路

本项目大致分为八个模块,分别为计时模块,秒表模块,分频模块,频率选择模块,动态显示模块,位选模块,消抖模块,多种计数器模块等。

设计思路如下:

基于FPGA的数字电子钟的设计与实现_第1张图片

图1 数字时钟系统顶层模块设计思路

  1. 顶层电路设计

正在上传…重新上传取消正在上传…重新上传取消

图2 数字时钟系统顶层模块设计电路图

  1. 分频模块电路设计及仿真
  1. 模块功能

将输入频率为50MHz的时钟信号利用74390通过2,5,100分频,对输入信号进行逐级分频,输出频率分别为1Hz,500Hz,1KHz,5KHz。

  1. 设计思路

利用74390和m100进行分频,设计思路如下:

正在上传…重新上传取消正在上传…重新上传取消

图3 分频模块电路设计思路

  1. 设计结果(电路)

正在上传…重新上传取消正在上传…重新上传取消

图4 分频模块设计电路图

正在上传…重新上传取消正在上传…重新上传取消

图5 模100电路图

  1. 测试结果

结果分析:输出最高位对应800ns,80个时钟周期为0,20个时钟周期为1.m100成功实现了100分频。

正在上传…重新上传取消正在上传…重新上传取消

图6 模100时序仿真图

  1. 计时模块设计及仿真

本模块主要功能是实现电子时钟计数。

正在上传…重新上传取消正在上传…重新上传取消

图7 计时模块顶层设计电路图

    1. 分、秒计时模块(模60计数)
  1. 模块功能(计数、进位)

采用模60计数,实现计数功能,进位功能,清零功能,校准功能。

  1. 设计思路

模60计数器可以由一个含有俩个二-五-十计数器的74390芯片实现,74390最大能做成模100计数器。通过利用计数到60时产生一个复位信号加到清零端,使计数器回0而实现模60计算器。74390芯片为异步计数器,其中60为暂态,60在此对应的BCD码为0110 0000。校准功能则是通过在时钟前加按键实现的。

  1. 设计结果(电路)

正在上传…重新上传取消正在上传…重新上传取消

图8 模60计数器电路图

  1. 仿真测试

正在上传…重新上传取消正在上传…重新上传取消

图9 模60计数器时序仿真图

    1. 小时计时模块(模24计数)
  1. 模块功能

采用模24计数,实现计数功能,进位功能,清零功能,校准功能。

  1. 设计思路

模24计数可以由一个含有俩个二-五-十计数器的74390芯片实现,74390最大能做成模100计数器。通过利用计数到24时产生一个复位信号加到清零端,使计数器回0而实现模24计算器。74390芯片为异步计数器,其中24为暂态,24在此对应的BCD码为0010 0100。校准功能则是通过在时钟前加按键实现的。

  1. 设计结果(电路)

正在上传…重新上传取消正在上传…重新上传取消

图10 模24计数器电路图

  1. 仿真测试

正在上传…重新上传取消正在上传…重新上传取消

图11 模24计数器时序仿真图

你可能感兴趣的:(fpga开发)