
利用小脚丫FPGA开发板及四位数码管构建数字时钟的电路设计方案。
5星
- 浏览量: 0
- 大小:None
- 文件类型:None
简介:
1、本设计旨在实现基于小脚丫FPGA开发板和四位数码管的数字时钟系统,具体要求如下:1)采用FPGA与按键以及四位数码管相结合的方式,构建数字时钟功能;2)时钟显示格式为“XX:XX:XX”,采用24小时制;3)四位数码管用于显示时、分、秒,并通过按键切换显示时分界面或分秒界面;4)用户可以通过按键设定初始时间;5)在整点12点时,系统会通过蜂鸣器发出提示音,蜂鸣器持续响铃约5秒钟。
2、硬件连接方面,FPGA的系统时钟来源于小脚丫FPGA开发板配置的24MHz时钟晶振,并连接到FPGA的C1引脚。设计中使用了五个按键(K1至K5),这些按键分别连接到FPGA的B8、C8、A10、A11和A12引脚。如图1所示,详细展示了五个按键的硬件设计。此外,设计还包含一个蜂鸣器,用于整点报时,其硬件连接如图1所示,蜂鸣器连接到FPGA的B2引脚。图2则展示了蜂鸣器的硬件设计。为了实现时间显示功能,设计中使用了四位数码管,并采用了两个74HC595芯片进行驱动。如图1所示,74HC595的串行时钟SCK、并行时钟RCK和串行数据DIN分别连接到FPGA的N2、M1和K1引脚上。图3则详细描述了数码管驱动模块的设计。
3、工作原理方面:首先使用计数器进行频率分频处理,从而产生周期为1秒的脉冲信号;其次使用三个8位BCD码来表示当前的时、分、秒的值,其中高4位代表十位数值,低4位代表个位数值;正常运行时,每来一个脉冲信号就增加个位数值;当个位数值达到十进制的十后清零并加一(表示进入下一秒),当秒数值达到60后清零并加一(表示进入下一分钟),以此类推直到23:59:59的所有数值都清零;此外,通过按键K5可以切换不同的模式(分秒显示模式、分秒调节模式、时分显示模式和时分调节模式),用户可以通过按动K5来依次切换这些模式;当数字时钟处于时针调节或分针调节或秒针调节模式下的时候, 按动K2可以调节对应的时间位置; 通过 K4 和 K2 键可以分别左移右移要调整的位置, 调整后的位置会通过对应位的闪烁指示出来; 最后, 通过 K1 和 K3 来增大或减小所调整的位置的值.
4、代码设计方面, 为了实现上述功能, 将整个设计划分为若干模块, 如图4所示. 图4展示了数字时钟程序设计的总体框架. 具体模块包括五位按键消抖模块 (图5), 电子表显示控制模块 (图8), 数码管译码模块 (图10), 以及数码管显示控制模块 (图 12)。 五位按键消抖模块负责将按键按下一次产生的电平信号经过消抖后转换为维持一个定时周期的脉冲信号, 其原理是通过检测前一个检测值与当前检测值之间的异或操作来判断是否按下按钮. 电子表显示控制模块则负责接收来自五位按键脉冲的信息, 并将其转换为十六位的BCD码输出, 每四个BCD编码代表一个十进制数; 数码管译码模块将输入的四位BCD码转化为七段数码数据; 数码管显示控制模块则负责将四个八位的七段数码数据组合成十六位的输出数据. 74HC595驱动功能模块负责将十六位的bit select data通过SPI接口串行输出给74HC595芯片.
全部评论 (0)


