Skip to content
This repository was archived by the owner on Jul 8, 2026. It is now read-only.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

BuzzBench Banner

智力竞赛抢答器

「数字电路与逻辑设计」课程大作业
基于 Logisim-ITA 实现的 4 组智力竞赛抢答器逻辑控制电路。

License

📖 简介

本项目实现了一个完整的智力竞赛抢答器逻辑控制电路。

✨ 特性

  • 抢答判别:4 组独立抢答,RS 锁存器互锁保证只识别最先抢答的队伍
  • 声光提示:抢答等待指示灯闪烁、抢中组指示灯常亮、蜂鸣器断续发声
  • 定时模块:正计时方式,支持 10s / 20s / 50s / 60s 四档定时,时间到自动提示
  • 计分显示:每组三位十进制(000–999)BCD 计分,支持主持人加减分操作
  • 主持人控制:抢答开始、定时开始、总复位、计分小组选择等全局控制

电路采用模块化分层设计,各子电路可独立打开、仿真和测试。

🧱 电路架构

主持人控制信号
    ├── 抢答判别锁存模块 (ResponderLatch)
    │   ├── RS 锁存器互锁优先判优
    │   └── 输出 Q₀\~Q₃、LOCK、ALLOW、ENABLE
    ├── 抢答指示灯和声音模块 (ResponderIndicator)
    │   ├── 抢中组指示灯
    │   ├── 抢答等待闪烁灯
    │   └── 蜂鸣器控制
    ├── 定时模块 (Timer)
    │   ├── 两位 BCD 正计时
    │   ├── 四档时间选择 (10s/20s/50s/60s)
    │   └── 时间到声光提示
    └── 计分模块
        ├── 单组计分 (ScoreCounter) ×4
        │   ├── 三位可逆 BCD 计数器
        │   ├── 进位/借位链
        │   └── 上下限保护 (000–999)
        └── 总计分 (ScoreBoard)
            └── 小组选择 + 4 路分发

📁 项目结构

.
├── experiment.circ              # Logisim 电路设计文件(主文件)
├── final_report.pdf             # 设计报告 PDF
├── final_report.typ             # 设计报告源码(Typst)
├── typst_template/              # Typst 模板
├── assets/                      # 电路截图与素材
│   ├── banner.png               #   README 头图
│   ├── main.png                 #   整机主电路
│   ├── responder_latch.png      #   抢答判别模块
│   ├── responder_indicator.png  #   抢答指示灯和声音模块
│   ├── timer.png                #   定时模块
│   ├── score_counter.png        #   单组计分模块
│   └── score_board.png          #   总计分模块
└── README.md

🚀 使用方法

打开电路

  1. 下载 Logisim-ITA(推荐最新版本)
  2. 用 Logisim-ITA 打开 experiment.circ
  3. 在主电路 main 中即可进行整机仿真

仿真操作

操作 控件 说明
抢答开始 按钮 按下后抢答等待灯闪烁,进入抢答状态
队伍抢答 按钮 ×4 最先按下者锁定,其他组输入被屏蔽
定时开始 按钮 按下后从 00 开始正计时
时间档位 拨码开关 00=10s, 01=20s, 10=50s, 11=60s
小组选择 拨码开关 选择当前计分小组 (00=第1组, 01=第2组, ...)
加分/减分 按钮 对当前选中小组进行计分操作
总复位 按钮 全部状态回到初始值

全局仿真设置

  • 仿真频率:16 Hz
  • SEC_CLK / BEEP_CLK:8 tick 高、8 tick 低,周期 1s
  • FLASH_CLK:1 tick 高、1 tick 低,快速闪烁

🛠 设计工具

工具 用途
Logisim-ITA 数字逻辑电路设计与仿真
Typst 设计报告撰写与排版

📊 器件统计

子电路模块 数量 用途
ResponderLatch 1 抢答判别、抢答允许状态保存和互锁
ResponderIndicator 1 抢中指示灯、抢答等待灯和抢答蜂鸣器控制
Timer 1 四档正计时、时间到判断和时间到声光提示
ScoreCounter 4 四组独立三位 BCD 加减计分
ScoreBoard 1 小组选择和四组计分模块汇总

主电路递归统计(含子电路内部元件):389 个组件,其中使用与非门 78 个、或门 26 个、比较器 26 个、非门 17 个、计数器 12 个、D/RS 触发器 15 个、缓冲器 8 个等。

📝 设计要点

  • RS 锁存器互锁:避免 D 触发器数据端和时钟端同时变化导致不稳态,采用 RS 锁存器保存抢答结果
  • 优先判优:多组完全同时按下时,序号小的组优先(0 > 1 > 2 > 3)
  • 正计时:用比较器判断时间到,避免倒计时借位逻辑的复杂度和不稳态问题
  • 使能-时钟先后:计分模块用缓冲器延迟时钟,确保使能信号先于计数脉冲稳定
  • 上下限保护:计分 999 不再加分、000 不再减分,防止回绕

📄 许可证

MIT License © 2026 LyCecilion (Project Hazelita)

About

[🟢|🎓] 数字电路与逻辑设计大作业「智力竞赛抢答器」

Topics

Resources

Stars

Watchers

Forks

Contributors

Languages