差别
这里会显示出您选择的修订版和当前版本之间的差别。
后一修订版 | 前一修订版 | ||
stepmxo2-lab21 [2018/08/29 09:26] group001 创建 |
stepmxo2-lab21 [2018/08/29 09:44] (当前版本) group001 [实验原理] |
||
---|---|---|---|
行 7: | 行 7: | ||
- 一共4组选手,用开关k1,k2,k3,k4表示 | - 一共4组选手,用开关k1,k2,k3,k4表示 | ||
- 主持人复位开始抢答,获得抢答的选手显示对应led,答题时间超过30秒报警 | - 主持人复位开始抢答,获得抢答的选手显示对应led,答题时间超过30秒报警 | ||
- | - 每位选手初始分数5分(RESET复位),主持人控制加分减分按键,每次增加 | + | - 每位选手初始分数5分(RESET复位),主持人控制加分减分按键,每次增加或减少1分(最多9分),答题选手分数显示在数码管 |
- | 或减少1分(最多9分),答题选手分数显示在数码管 | + | |
=====实验原理===== | =====实验原理===== | ||
根据抢答器的功能,采用模块化设计,如下\\ | 根据抢答器的功能,采用模块化设计,如下\\ | ||
行 14: | 行 13: | ||
{{::抢答器实验原理.png?nolink&1200|}}\\ | {{::抢答器实验原理.png?nolink&1200|}}\\ | ||
抢答判断模块(judge):根据开关的输入判断抢答的选手信号,通过输出的LED显示抢答选手;内部定义block标志信号用来锁定抢答完成;判断抢答之后答题超过30秒产生报警信号。\\ | 抢答判断模块(judge):根据开关的输入判断抢答的选手信号,通过输出的LED显示抢答选手;内部定义block标志信号用来锁定抢答完成;判断抢答之后答题超过30秒产生报警信号。\\ | ||
- | 分数模块(score):复位信号单独复位所有选手分数;加减按键消抖后用来增加减少分数。 | + | 分数模块(score):复位信号单独复位所有选手分数;加减按键消抖后用来增加减少分数。\\ |
显示模块(dseg):当前抢答的选手分数显示在数码管上。\\ | 显示模块(dseg):当前抢答的选手分数显示在数码管上。\\ | ||
分频模块(divide):分频产生计时时钟信号。 | 分频模块(divide):分频产生计时时钟信号。 | ||
行 69: | 行 68: | ||
</code> | </code> | ||
- | 顶层文件一共调用了4个模块judge.v、score.v、dseg.v、divide.v。所有的子模块源码请参考实验二十一的工程文件 | + | 顶层文件一共调用了4个模块judge.v、score.v、dseg.v、divide.v。所有的子模块源码请参考前例实验的工程文件 |
=====实验步骤===== | =====实验步骤===== | ||
- 打开Lattice Diamond,建立工程。 | - 打开Lattice Diamond,建立工程。 |