8路抢答器基于fpga
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于FPGA的多路数字抢答器的设计
摘要:本文主要介绍了以FPGA为基础的八路数字抢答器的设计,首先对各模块的功能进行分配,此次设计主要有七个模块,依次为分频模块、抢答模块、加减分模块、倒计时模块、设置倒计时模块、蜂鸣器模块和数字显示模块。主持人按下开始键可以实现抢答开始,选手号的显示,加减分模块,积分的显示,积分的重置,并启动倒计时模块;若有选手犯规或者倒计时记到五秒,停止倒计时,开启蜂鸣器,并为进入加减分模块做准备。此次设计程序用Quartus II12.0为软件开发平台,用Verilog语言来编写,使用模块化编程思想,自上向下,通过寄存器变量来控制各个模块的运行。本次设计采用FPGA来增强时序的灵活性,由于FPGA的I/O端口资源丰富,可以在此基础上稍加修改可以增加很多其他功能的抢答器,因此后期可塑性很强,因为核心是FPGA芯片,外围电路比较简单,可靠性强、运算速度高,因此便于维护,并且维护费用低。
关键词:FPGA、抢答器、倒计时、犯规报警、加减分、显示
目录
第一章绪论................. . (2)
第二章 FPGA原理及相关开发工具软件的介绍 (3)
2.1 FPGA的简介..... . (3)
2.1.1 FPGA的发展与趋势......... .. (3)
2.1.2 FPGA的工作原理及基本特点 (4)
2.1.3 FPGA的开发流程 (5)
2.1.4 FPGA的配置... . (5)
2.2 软件介绍............... .. (6)
2.2.1 Verilog HDL的介绍........... .. (6)
2.2.2 Quartus II软件.................... .. (7)
第三章数字抢答器系统设计方案和主要模块 (8)
3.1 功能描述及设计架构...... .. (8)
3.2 抢答器程序流程图以及各模块代码分析 (10)
3.2.1 抢答器程序结构及主程序流程图 (10)
3.2.2 秒分频模块 (15)
3.2.3 倒计时以及倒计时剩5S时报警模块...... 错误!未定义书签。
3.2.4 倒计时显示及倒数计时设置显示模块 (20)
3.2.5 选手号显示及违规报警模块 (26)
3.2.6倒计时设置模块 (30)
3.2.7顶层模块 (35)
3.3 硬件电路 (37)
3.3.1 按键电路图 (38)
3.3.2 数码管显示电路图 (38)
3.3.2 蜂鸣器电路图 (39)
第四章管脚分配及功能 (40)
第五章总结 (41)
参考文献 (418)
第一章绪论
1.1 课题研究背景
随着社会的发展,各种竞赛比赛日益增多,抢答器以它的方便快捷、直观反映首先取得发言权的选手等优点,深受比赛各方的辛睐,市场前景一片大好。另一方面随着电子科技的发展,抢答器的功能以及实现方式也越来越多,产品的可靠性以及准确性也越来越强。能够实现多路抢答器功能的方式有很多种,主要包括前期的数字电路、模拟电路以及数字电路与模拟电路组合的方式,但是这种方
式制作过程比较复杂,并且可靠性准确性不高,研发周期也比较长。
目前对于抢答器的功能描述,如涵盖抢答器、选手答题计时、限时抢答以及犯规组号抢答器具有抢答自锁,暂停复位、电子音乐报声、灯光指示、自动定时等功能,还有工作模式的切换和时间设定,对于这些随着科学技术的发展,肯定还要得到进一步的改进。发展趋势一般都要趋向于智能化,并且设计更加合理化。
1.2 研究内容及意义
通过抢答器的使用,可以在各类比赛中特别是抢答环节,直观明了的看出是哪一组抢到了题目,比起通过肉眼来判断,更加的精确,同时也少了不必要的纷争,使得比赛更加的公平、公开、公正。
抢答器的这些优点使得它在比赛中得以广泛的应用。抢答器经过发展从最初的只有几个三极管、可控硅、发光管等组成,能通过发光管的指示辨认出选手号码;到现在使用高速处理芯片和集成数字电路;从起初单片机到现在的ARM 和FPGA,技术手段进一步成熟,同时技术的发展也为抢答器增加了很多更加贴近比赛的新功能,如选手号码显示、倒计时、选手得分显示等等。这类抢答器制作并不复杂,但是准确度和可靠性都比较可观,并且易于安装和维护。
第二章 FPGA原理及相关开发工具软件的介绍2.1 FPGA的简介
2.1.1 FPGA的发展与趋势
现场可编程门阵列FPGA(Field-Programmable Gate Array),它是在PAL、GAL、CPLD等可编程器件的基础上进一步发展的产物。它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。
目前以硬件描述语言(Verilog 或 VHDL)所完成的电路设计,可以经过简单的综合与布局,快速的烧录至 FPGA 上进行测试,是现代 IC 设计验证的技术主流。这些可编辑元件可以被用来实现一些基本的逻辑门电路(比如AND、OR、XOR、NOT)或者更复杂一些的组合功能比如解码器或数学方程式。在大多数的FPGA里面,这些可编辑的元件里也包含记忆元件例如触发器(Flip-flop)或
者其他更加完整的记忆块。系统设计师可以根据需要通过可编辑的连接把FPGA 内部的逻辑块连接起来,就好像一个电路试验板被放在了一个芯片里。一个出厂后的成品FPGA的逻辑块和连接可以按照设计者而改变,所以FPGA可以完成所需要的逻辑功能。
FPGA一般来说比ASIC(专用集成芯片)的速度要慢,无法完成复杂的设计,而且消耗更多的电能。但是他们也有很多的优点比如可以快速成品,可以被修改来改正程序中的错误和更便宜的造价。厂商也可能会提供便宜的但是编辑能力差的FPGA。因为这些芯片有比较差的可编辑能力,所以这些设计的开发是在普通的FPGA上完成的,然后将设计转移到一个类似于ASIC的芯片上。另外一种方法是用CPLD(复杂可编程逻辑器件备)。
2.1.2 FPGA的工作原理及基本特点
FPGA采用了逻辑单元阵列LCA(Logic Cell Array)这样一个概念,内部包括可配置逻辑模块CLB(Configurable Logic Block)、输出输入模块IOB(Input Output Block)和内部连线(Interconnect)三个部分。FPGA的基本特点主要有:
1)采用FPGA设计ASIC电路,用户不需要投片生产,就能得到合用的芯片。
2)FPGA可做其它全定制或半定制ASIC电路的中试样片。
3)FPGA内部有丰富的触发器和I/O引脚。
4)FPGA是ASIC电路中设计周期最短、开发费用最低、风险最小的器件之一。
5) FPGA采用高速CHMOS工艺,功耗低,可以与CMOS、TTL电平兼容。
可以说,FPGA芯片是小批量系统提高系统集成度、可靠性的最佳选择之一。
FPGA是由存放在片内RAM中的程序来设置其工作状态的,因此,工作时需要对片内的RAM进行编程。用户可以根据不同的配置模式,采用不同的编程方式。
加电时,FPGA芯片将EPROM中数据读入片内编程RAM中,配置完成后,FPGA 进入工作状态。掉电后,FPGA恢复成白片,内部逻辑关系消失,因此,FPGA能够反复使用。FPGA的编程无须专用的FPGA编程器,只须用通用的EPROM、PROM 编程器即可。当需要修改FPGA功能时,只需换一片EPROM即可。这样,同一片