FPGA数字时钟

简介: 笔记

一. 所需硬件


一块FPGA开发板

六个动态数码管

三个独立按键


二. 功能介绍


时-分-秒显示,为24小时制

通过按键可以动态调整时间

通过按键可以动态选择要调整的时间,对应的数码管闪烁

按键消抖


三. 核心代码介绍


1. RTL图

本代码项目一共由三个模块核心模块组成


时钟控制模块 : 通过接收外部按键的输入,来设置当前项目的显示模式

时钟模块 : 生成时分秒三个数据

数码管显示模块: 接收时钟模块提供的数据,驱动数码管的显示

1.png

2.数码管选中闪烁

twinkle_en为亮或者暗使能信号,select是否选择当前数码管

通过代码可以看到twinkle_en为1的时候,并且select选中了当前数码管的时候,数码管为暗,其他时候都为亮。

这样当select不变的情况下,通过修改twinkle_en切换的频率,就可以实现数码管选中闪烁的例子了。

if( twinkle_en == 1'b0)
  smg_sel_reg <= 6'b111_110;
else if( twinkle_en == 1'b1  && select == 'd0)
  smg_sel_reg <= 6'b111_111;  
else
  smg_sel_reg <=6'b111_110;


3. 分离时分秒数据

时分秒每个数据都需要用到两个数码管进行显示,这样就需要分离出数据的高位和地位,通过如下方法可以快速获取。


assign data0 = sec_data %10;  //地位
assign data1 = (sec_data  > 'd49) ? 'd5 : (sec_data > 'd39)  ?'d4 :
     (sec_data > 'd29) ?'d3  : (sec_data > 'd19) ? 'd2:
     (sec_data > 'd9) ? 'd1 :'d0; //高位
//方法二,获取高位
assign data1 = ((sec_data - data0 )/10)%10;


需要完整代码的可以 关注微信公众号 FPGA之旅 回复 数字时钟 获取下载链接


需要定制的可以私聊。

公众号:FPGA之旅


目录
相关文章
|
4月前
|
缓存 监控 异构计算
|
异构计算
FPGA单比特信号跨时钟域处理
FPGA单比特信号跨时钟域处理
147 0
FPGA单比特信号跨时钟域处理
|
存储 Java 异构计算
FPGA - 7系列 FPGA内部结构之Clocking -01- 时钟架构概述(二)
FPGA - 7系列 FPGA内部结构之Clocking -01- 时钟架构概述
639 0
FPGA - 7系列 FPGA内部结构之Clocking -01- 时钟架构概述(二)
|
存储 数据可视化 芯片
FPGA - 7系列 FPGA内部结构之Clocking -01- 时钟架构概述(一)
FPGA - 7系列 FPGA内部结构之Clocking -01- 时钟架构概述
498 0
FPGA - 7系列 FPGA内部结构之Clocking -01- 时钟架构概述(一)
|
芯片
FPGA-使用RTC时钟芯片进行时钟读取(数码管显示)
FPGA-使用RTC时钟芯片进行时钟读取(数码管显示)
274 0
FPGA-使用RTC时钟芯片进行时钟读取(数码管显示)
|
芯片 数据格式 异构计算
音频DA转换芯片CS4334及基于FPGA的时钟配置
音频DA转换芯片CS4334及基于FPGA的时钟配置
音频DA转换芯片CS4334及基于FPGA的时钟配置
|
异构计算
FPGA期末项目 | 数字时钟
戳这里下载整个项目包(已上传到CSDN资源库) 一、实验设备 FPGA开发平台、计算机、其它外接器件 二、需求分析(选题的意义、功能要求等。。。这里有点水,小伙伴们可以选择性跳过) 选题的意义:个人认为本项目(《数字时钟》)的选题意义有二,其一,...
1175 0
|
4月前
|
机器学习/深度学习 算法 异构计算
m基于FPGA的多通道FIR滤波器verilog实现,包含testbench测试文件
本文介绍了使用VIVADO 2019.2仿真的多通道FIR滤波器设计。展示了系统RTL结构图,并简述了FIR滤波器的基本理论,包括单通道和多通道的概念、常见结构及设计方法,如窗函数法、频率采样法、优化算法和机器学习方法。此外,还提供了Verilog核心程序代码,用于实现4通道滤波器模块,包含时钟、复位信号及输入输出接口的定义。
123 7
|
4月前
|
算法 异构计算
m基于FPGA的电子钟verilog实现,可设置闹钟,包含testbench测试文件
该文介绍了基于FPGA的电子钟设计,利用Vivado2019.2平台进行开发并展示测试结果。电子钟设计采用Verilog硬件描述语言,核心包括振荡器、分频器和计数器。时间显示为2个十进制格式,闹钟功能通过存储器和比较器实现,当当前时间等于设定时间时触发。文中给出了Verilog核心程序示例,展示了时钟信号、设置信号及输出的交互。
154 2

热门文章

最新文章