Skip to content

K1llery/BUPT-DigitalClock-2026-Spring

Repository files navigation

数字电子钟课设项目

这是一个基于 Verilog 的 6 位数码管电子钟工程,适合课程设计、小组协作和二次扩展。

当前已实现功能:

  • HH:MM:SS 实时显示
  • 小时、分钟、秒独立调节
  • 单组闹钟
  • 整点报时
  • 按键消抖
  • 长按连发
  • 编辑位闪烁
  • 蜂鸣器控制

目录说明

  • top.v
    • 主顶层模块
  • fuck.v
    • 兼容旧名称的包装模块
  • clk_div.v
    • 节拍脉冲产生
  • key_filter.v
    • 按键消抖与连发
  • time_core.v
    • 时间核心
  • set_ctrl.v
    • 模式状态机
  • alarm_core.v
    • 闹钟与整点报时
  • display_mux.v
    • 显示数据选择
  • seg_decoder.v
    • BCD 到七段码译码
  • seg_scan.v
    • 数码管动态扫描
  • tb_top.v
    • Icarus Verilog 仿真文件
  • PROJECT_STRUCTURE.md
    • 英文结构说明
  • PROJECT_STRUCTURE_CN.md
    • 中文结构说明

当前硬件约定

  • 6 位数码管
  • 共阴极
  • 段码高有效
  • 位选高有效
  • 蜂鸣器高有效

仿真方法

编译:

iverilog -g2001 -o tb_top.out tb_top.v top.v fuck.v clk_div.v key_filter.v time_core.v set_ctrl.v alarm_core.v display_mux.v seg_decoder.v seg_scan.v

运行:

vvp tb_top.out

查看波形:

gtkwave tb_top.vcd

Quartus 使用

  • Quartus 工程文件仍保留为 fuck.qpf / fuck.qsf
  • 当前真正的顶层实体已经改为 top
  • 如果修改了板卡时钟频率,需要同步调整 top.v 中的 CLK_FREQ_HZ

适合上传到 GitHub 的文件

建议保留:

  • *.v
  • *.qpf
  • *.qsf
  • *.md
  • .gitignore

不建议上传:

  • db/
  • incremental_db/
  • output_files/
  • *.qws
  • *.vcd
  • *.out

这些内容已经在 .gitignore 中做了基础排除。

协作建议

  • main 分支只保留可编译版本
  • 新功能走独立分支
  • 合并前至少做一次仿真
  • 不提交 Quartus 自动生成目录

许可证与说明

如果准备和同学长期共创,建议后续补充:

  • 课程设计背景
  • 硬件连接图
  • 引脚分配表
  • License 文件

About

123

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors