基于FPGA的篮球24秒倒计时系统设计

时间:2025-05-01  作者:Diven  阅读:0

  一、 功能描述

本工程包含了两个按键和4位数码管显示,共同实现一个篮球24秒倒计时、并具有暂停和重新计数复位的功能。具体功能如下:

基于FPGA的篮球24秒倒计时系统设计

数码管显示秒十位、秒个位、0.1秒和0.01秒。

上电后,数码管显示2399,表示时间是23.99秒。

按下按键1,进入倒计时状态,进行倒计时,一直计到0000后停止。

在倒计时状态时,再次按下按键1,则暂停计时;再按下按键1,则继续倒计时。

在任何时刻,按下按键2,则复位显示为2399。

  二、 平台效果图

Altera核心板效果图

Xilinx核心板效果图

  三、 实现过程

首先根据所需要的功能,列出工程顶层的输入输出信号列表。

我们可以把工程划分成三个模块,分别是倒计时模块、BCD译码模块和数码管显示模块

倒计时模块

倒计时模块实现的是24s倒计时功能,其输出两组计数信号cnt_s和cnt_ms。例如当时间为23.99时,cnt_s的值为23,cnt_ms的值为99;当时间为08.12时,cnt_s的值为8,cnt_ms的值为12。

模块还实现了暂停和重开始功能,按下按键1开始倒计时,再次按下则暂停,再次按下则开始,无论何时按下按键2,恢复到23.99。

本模块的信号列表如下:

BCD译码模块

由于倒计时模块输出的是2进制的cnt_s和cnt_ms,但数码管是个位和十位分别显示的。例如当cnt_s值为10时,也就是8’b00001010,而送给数码管的个位值为4’b0000,十位值为4’b0001。这个转换过程也就是BCD译码,也就是本模块要实现的功能。

此处介绍二进制转BCD码的硬件实现,采用左移加3的算法,具体描述如下:(此处以8-bit 二进制码为例)

1、左移要转换的二进制码1位

2、左移之后,BCD码分别置于百位、十位、个位

3、如果移位后所在的BCD码列大于或等于5,则对该值加3

4、继续左移的过程直至全部移位完成

举例:将十六进制码0xFF转换成BCD码

本模块的信号列表如下:

由于秒和毫秒都要译码,所以要例化两个BCD译码模块。

数码管显示模块

数码管显示模模块功能是将二进制数码,转成BCD数码管显示,其功能相对比较简单,不再啰嗦。

本模块信号列表

 

       四、程序设计














猜您喜欢

高压棒是应用于电气工程和自动化设备中的重要元件,其参数直接影响设备的性能和安全性。高压棒的额定电压是其最关键的参数,通常以千伏(kV)为单位,表示其能够承受的最...
2012-01-07 00:00:00

电机驱动芯片是现代电子设备中不可少的核心组件,应用于机器人、家电、汽车等领域。这些芯片通过控制电机的运转,实现精准的运动控制和高效的能量管理。电机驱动芯片主要分...
2019-09-27 00:00:00

氨气(NH₃)是世界上最重要的化学品之一,也是全球农业和工业中不可替代的原材料。同时,氨气也是一种无色、有刺激性和腐蚀性的高毒性气体。因此,氨气的检测和传感对环...
2023-11-20 09:09:00

气动锯是高效的切割工具,应用于木材、金属等材料的加工。其规格尺寸因型号和用途而异,气动锯的刀片长度通常在10至30厘米之间,适合不同的切割需求。气动锯的机身长度...
2015-02-04 00:00:00


研磨膏是应用于金属、陶瓷、玻璃等材料表面处理的高效产品。通过细微的磨料颗粒与被处理表面之间的摩擦作用,能够有效去除污垢、氧化物及其杂质,提升材料的光泽度和表面平...
2012-10-16 00:00:00

液压控制阀在液压系统中是非常重要的配件。主要用于控制液压油的流动方向、流量和压力,从而实现对液压设备的精确控制。通过调节阀门的开关状态,液压控制阀能够有效地启动...
2009-06-07 00:00:00

18C贴片电阻本身 不具备电容值。电阻和电容是两种完全不同的电子元件,电阻用于限制电流流动,而电容用于储存电荷。18C 标记指的是电阻的封装尺寸,而不是电容值。...
2024-11-29 10:25:42


电阻器作为基本的电子元件,是调节电流、分压和保护电路的重要配件。VISHAY(威世)作为全球知名的电子元器件制造商,其铝壳电阻凭借优异的性能和可靠的质量,应用于...
2015-12-09 00:21:58