8路抢答器.docx

上传人:b****5 文档编号:6238143 上传时间:2023-01-04 格式:DOCX 页数:13 大小:258.38KB
下载 相关 举报
8路抢答器.docx_第1页
第1页 / 共13页
8路抢答器.docx_第2页
第2页 / 共13页
8路抢答器.docx_第3页
第3页 / 共13页
8路抢答器.docx_第4页
第4页 / 共13页
8路抢答器.docx_第5页
第5页 / 共13页
点击查看更多>>
下载资源
资源描述

8路抢答器.docx

《8路抢答器.docx》由会员分享,可在线阅读,更多相关《8路抢答器.docx(13页珍藏版)》请在冰豆网上搜索。

8路抢答器.docx

8路抢答器

山东英才职业技术学院

毕业设计

 

院(系):

计算机电子信息工程学院

专业:

班级:

姓名:

指导教师:

王甲琛

200年4月

8路抢答器控制系统设计任务与要求

设计任务书

设计任务:

利用EDA工具,基于硬件描述语言,借助CPLD器件,设计8路抢答器控制系统。

具体要求:

1、8路抢答器控制系统是娱乐活动中经常使用的重要基础设备之一,根据抢答要求,系统所需实现的功能如下:

(1)主持人按键清零,数码显示0,蜂鸣器不叫,进入抢答状态。

(2)主持人发出开始命令,8人开始抢答。

其中一人先按下抢答键,蜂鸣器发出鸣叫,数码显示该人号码,其他人再按键,系统不再响应,直至主持人按键清零,下一次抢答开始。

2、设计构思系统原理结构框图

3、基于VHDL的设计(使用MAXPLUSII软件)

(1)源代码程序设计

(2)编译、管脚设置

(3)下载实验验证

4、PCB(印刷电路板)生成制作(使用PROTELL软件)

(1)原理图及元件封装设计

(2)网络表生成

(3)电路板制作

目录

摘要

Abstract

引言

第一章8路抢答器功能与系统原理结构框图

第二章基于VHDL的设计

第三章PCB(印刷电路板)生成制作

结束语

参考文献

摘要

EDA技术的应用引起了电子产品系统开发的革命性变革。

利用先进的EDA工具,基于硬件描述语言,借助CPLD器件,可以进行系统级数字逻辑电路的设计。

本文以8路抢答器为例,介绍了在Max+plusII、PROTEL开发软件下,利用VHDL硬件描述语言设计数字逻辑电路、PCB制作的过程和方法。

关键词:

可编程逻辑器件 VHDLEDA 8路抢答器控制系统。

Abstract

TheEDAtechnologyapplicationhascausedtheelectronicproductssystemdevelopmentrevolutionarytransformation.UsestheadvancedEDAtool,basedonthehardwaredescriptionlanguage,withtheaidoftheCPLDcomponent,maycarryonthesystem-levelnumerallogiccircuitthedesign.Thisarticleviestoanswerfirsttake8groupsasanexample,introducedinMaxplusII,underthePROTELdevelopmentsoftware,usestheVHDLhardwaredescriptionlanguagedesignnumerallogiccircuit,thePCBmanufactureprocessandthemethod

Keywords:

ProgrammablelogicalcomponentVHDLtheEDA8groupsvietoanswerfirstthecontrolsystem.

引言

随着电子技术的发展,可编程逻辑器件的出现,使得电子系统的设计者利用EDA(电子设计自动化)软件,在实验室里就可以设计自己的专用集成电路ASIC器件。

可编程逻辑器件是一种半导体集成器件的半成品。

在可编程逻辑器件的芯片中按一定方式(阵列形式或单元阵列形式)制作了大量的门、触发器等基本逻辑器件,如对这些基本器件适当地连接(此连接的过程称为编程或配置),就可以完成基个电路或系统的功能。

可编程逻辑器件大致可分为FPGA(现场可编程门阵列)、CPLD(复杂的可编程逻辑器件)SPLD(简单的可编程逻辑器件)3类,它们的规模和结构有较大的区别,但使用方法是基本一致的,其中应用最广泛的是FPGA和CPLD。

这种可编程ASIC不仅使设计的产品达到小型化、集成化和高可靠性,而且器件具有用户可编程特性,大大缩短设计周期,减少了设计费用,降低了设计风险。

目前数字系统的设计可以直接面向用户需求,根据系统的行为功能要求,自上至下地逐层完成相应的描述、综合、优化、仿真与验证,直到生成器件,实现电子设计自动化。

本文详细论述了使用EDA技术设计8路抢答器控制系统的过程。

 

第一章8路抢答器功能与系统原理结构框图

一、8路抢答器控制系统的功能

8路抢答器控制系统是娱乐活动中经常使用的重要基础设备之一,根据抢答要求,系统所需实现的功能如下:

(1)主持人按键清零,数码显示0,蜂鸣器不叫,进入抢答状态。

(2)主持人发出开始命令,8人开始抢答。

其中一人先按下抢答键,蜂鸣器发出鸣叫,数码显示该人号码,其他人再按键,系统不再响应,直至主持人按键清零,下一次抢答开始。

二、系统原理结构框图

根据的功能要求,设计系统结构框图,见图1所示。

图中脉冲振荡电路用于产生标准时钟信号,为系统提供CLK信号;数码显示部分采用共阴极7位二进制输入8字管。

控制部分是EDA设计的核心部分,用硬件描述语言(VHDL)来描述数字系统的结构、行为和功能,采用“自顶向下”设计方法,将电路的硬件设计转变为软件设计。

图18路抢答器控制系统结构框图

本八路抢答器设计使用方法非常简单,从上述工作原理可知,抢答前只需先将开关K置于2,然后再置于1,即可进行抢答.顺便提一下,由于当按钮开关AN0先按下时,数码管显示0,这与我们平时的编号习惯有点不同。

本八路抢答器论文中关于原理的分析内容均为单片机教程网,工作人员得出如有错误请指正。

本设计元件选择:

锁存器选用74ls373八路锁存器,编码器用74ls148三线编码器,数码显示驱动器用bcd码七段译码器74ls247与共阳极七段数码管搭配,控制电路由八输入与非门74ls30和一个或门、一个非门构成,或门用74ls32二输入四或门,非门74ls04六反相器。

八路抢答器原理图如下图所示,看起来其实也很简单的。

锁存器输入信号均为同一电平时,控制电路输出控制信号使锁存器进入工作状态,这时锁存器输入端的电平送往相应的输出端,当有一输入端电平发生跳变时,其对应输出端电平也随着变,此变化的输出电平送入控制电路,控制电路产生使锁存器锁存的控制信号,锁存器我们知道只要给他控制端一个电平他就进入锁存工作状态,不管任何一个输入端电平发生了变化,各输出端电平都会保持不变,与其它输出端电平不一样的那个输出端的电平经编码器编码后送入数码显示译码器,控制驱动器驱动七段数码管进行数字的显示。

[八路抢答器原理图]

八路抢答器电路工作原理:

输入锁存

当八路锁存器74ls373的s端为高电平时,锁存器输入端(1D-8D)的电平能直接送到相应的输出端1Q-8q当S端由高电平变到低电平时,锁存器锁存,即输入端电平不能送到输出端,各输出端保持锁存前的电平.先将开关K置于2,此时74LS373的S端为高电平,其各输入端的高电平直接送到各相应的输出端,从而使八输入端与非门74LS373的八个输入端均为高电平,导致其输出为低电平,经非门1后变成高电平,再由或门送到74LS373的S控制端,然后将开关K置于1,这时由于或门的另一输入仍为高电平,故S控制端仍保持高电平,当八个按钮开关AN0-NA7中有一个先按下时,其对应的D端变为低电平,此低电平经锁存器送到相应的Q输出端,这时74LS的八个输入端中因有一个端变低电平,所以它的输出端变为高电平,经非门1和或门后,使s控制端由高电平变成低电平,74LS373执行锁存功能,如果这时还有按钮按下,锁存器对应的输出端电平也不会变.

[八路抢答器电路图]

编码和译码显示

74LS74LS为输入低电平有效和输出低电平有效,即当I0端为低电平而其它输入端为高电平时,输出端Y2,Y1,Y0均为高电平,I1端为低电平而其它输入端为高电平时,Y2,Y1端均为高电平,Y0端为低电平,以此类推锁存在锁存器输出端的低电平送到74LS148,由74LS148进行编码,编成的二进制代码电平经非门234分别倒相后,送到BCD码七段译码驱动器74LS247再由74LS247输出端送出驱动电平驱动共阳极七段数码管5EF105显示相应的数字,如I0端为低电平时,显示0;I4端为低电平时,显示4,当八个按钮开关都不按下时,由于锁存器的各输出端均为高电平,经74LS30后使74LS247的熄灭控制端得到低电平,因此数码管不显示.

第二章基于VHDL的设计

MAX+plusⅡ是美国ALTERA公司提供的FPGA/CPLD开发集成环境,该公司是世界最大的可编程逻辑器件供应商之一。

MAX+plusⅡ界面友好,使用便捷,被誉为业界最容易的EDA软件。

下面详细论述使用MAX+plusⅡ软件设计8路抢答器控制系统的过程。

本设计采用用Altera公司MAX7000S系列的EPM7128SLC84-15来实现。

(校EDA实验室EDA-V实验箱中所用CPLD芯片)

1、源代码程序设计

VHDL语言程序结构的特点是将一个电路模块或一个系统分成实体(外部端口)和构造体(内部功能算法实现)两部分。

对于一个电路模块或者数字系统而言,定义了外部端口后,一旦内部功能算法完成后,其他系统可以直接依据外部端口调用该电路模块或数字系统,而不必知道其内部结构和算法。

端口部分共设计10个输入端口,8个输出端口。

输入端口包括1个脉冲端口、1个主持人控制端口和8人抢答端口。

输出端口包括1个蜂鸣器输出端口和8字管输出管端口。

8路抢答器实体部分的VHDL代码:

ENTITYbarenqiangdaIS

PORT(s:

INSTD_LOGIC_VECTOR(7downto0); 【8人抢答输入管脚定义】

reset,clk:

INSTD_LOGIC; 【主持人复位和脉冲管脚定义】

a:

OUTSTD_LOGIC_VECTOR(0downto6); 【8字管输出管脚定义】

bell:

OUTSTD_LOGIC);【蜂鸣器输出管脚定义】

ENDbarenqiangda;

8路抢答器实体部分以并行处理语句----进程(PROCESS)语句为基本语句,该程序以复位、脉冲和8人抢答答信号为敏感信号,当敏感信号发生变化时,进程被激活,顺序执行内部语句。

构造体部分VHDL代码:

ARCHITECTUREaOFbarenqiangdaIS

SIGNALg:

STD_LOGIC_VECTOR(7downto0);【信号定义】

SIGNALb:

STD_LOGIC;

BEGIN

PROCESS(s,reset,clk)【并行语句三个敏感信号】

BEGIN

IF(reset='1')THEN【判断主持人复位鍵是否按下,若按下,则清零】

h<='0';

g<="00000000";

ELSIF(clk'EVENTANDclk='1')THEN

IF(s(7)='1'ORg(0)='1')ANDNOT(g

(1)='1'ORg

(2)='1'ORg(3)='1'ORg(4)='1'ORg(5)='1'ORg(6)='1'ORg(7)='1')【判断按键1是否按下】

THENg(0)<='1';【锁存按键1状态】

ENDIF;

……【按键2-7状态代码略】

IF(s(7)='1'ORg(7)='1')ANDNOT(g(0)='1'ORg

(1)='1'ORg

(2)='1'ORg(3)='1'ORg(4)='1'ORg(5)='1'ORg(6)='1')【判断按键8是否按下】

THENg(7)<='1';【锁存按键8状态】

ENDIF;

h<=s(0)ORs

(1)ORs

(2)ORs(3)ORs(4)ORs(5)ORs(6)ORs(7);

ENDIF;

ENDPROCESS;

Bell<=b;  【蜂鸣器输出】

a<="0000110"WHENg="00000001"ELSE 【数码管输出显示1】

……【数码2-7输出代码略】

"1111111"WHENg="10000000"ELSE 【数码管输出显示8】"1111110";

ENDa;

2、编译、管脚设置

程序输入完成后,经“MAX+PLUSEII”中的“Compiler”菜单编译,以验证设计结果是否符合要求,如果有问题,则返回原设计文件再次进行修改,直到正确为止。

编译无误后经“MAX+PLUSEII”中的“FLOORPLANEDITOR”菜单,进行输入、输出管脚设置,将18个元件端口放置到EPM7128SLC84-15芯片适当的I/O口,并用手工调整按图2所示设置。

3、硬件系统

3.1主体电路

该电路完成两个功能:

一是分辨出选手按键的先后,并锁存优先抢答者的编号,同时译码显示电路显示编号;二是禁止其他选手按键操作无效。

工作过程:

开关S置于"清除"端时,RS触发器的端均为0,4个触发器输出置0,使74LS148的=0,使之处于工作状态。

当开关S置于"开始"时,抢答器处于等待工作状态,当有选手将键按下时(如按下S5),74LS148的输出经RS锁存后,1Q=1,=1,74LS48处于工作状态,4Q3Q2Q=101,经译码显示为"5"。

此外,1Q=1,使74LS148=1,处于禁止状态,封锁其他按键的输入。

当按键松开即按下时,74LS148的此时由于仍为1Q=1,使=1,所以74LS148仍处于禁止状态,确保不会出二次按键时输入信号,保证了抢答者的优先性。

如有再次抢答需由主持人将S开关重新置“清除”然后再进行下一轮抢答.

3.2可预置时间的定时电路

进行设计.由节目主持人根据抢答题的难易程度,设定一次抢答的时间,通过预置时间电路对计数器进行预置,计数器的时钟脉冲由秒脉冲电路提供。

可预置时间的电路选用十进制同步加减计数器74LS192

3.3时序控制电路

时序控制电路是抢答器设计的关键,它要完成以下三项功能:

①主持人将控制开关拨到"开始"位置时,扬声器发声,抢答电路和定时电路进入正常抢答工作状态。

②当参赛选手按动抢答键时,扬声器发声,抢答电路和定时电路停止工作。

③当设定的抢答时间到,无人抢答时,扬声器发声,同时抢答电路和定时电路停止工作。

3.4音频放大电路

其主要在于当单片机执行中断后,当输出信号时能够在很短的时间里让扬声器工作并联持续一定的时间。

当抢答器程序响应,使三极管导通,蜂鸣器的放大电路被接通,与此同时,喇叭发出声响。

TDA2030音频功放电路,采用V型5脚单列直插式塑料封装结构电路特点:

[1].外接元件非常少。

[2].输出功率大,Po=18W(RL=4Ω)。

[3].采用超小型封装(TO-220),可提高组装密度。

[4].开机冲击极小。

[5].内含各种保护电路,因此工作安全可靠。

主要保护电路有:

短路保护、热保护、地线偶然开路

3.5显示电路

显示电路可由LED或LCD来实现。

此处选用LED方式,由6位七段显示器来实现,其亮度高,使用简单方便。

3.6声光电路

这里的声音电路是指实现报警的电路,发光电路由发光二极管来实现。

3.7电源电路

电源采用市电经整流稳压来获得。

3.8电路组成

电路由按钮式开关、电阻、二极管、三极管、RS触发器、扬声器与发光二极管、七位八段数码管等基本元件构成。

图2EPM7128SLC84-15芯片管脚设置图

第三章PCB(印刷电路板)生成制作

1、原理图及元件封装设计

设计电路如图2所示。

电路选用优先编码器74LS148和锁存器74LS297来完成。

该电路主要完成两个功能:

一是分辨出选手按键的先后,并锁存优先抢答者的编号,同时译码显示电路显示编号(显示电路采用七段数字数码显示管);二是禁止其他选手按键,其按键操作无效。

工作过程:

开关S置于"清除"端时,RS触发器的R、S端均为0,4个触发器输出置0,使74LS148的优先编码工作标志端(图中5号端)=0,使之处于工作状态。

当开关S置于"开始"时,抢答器处于等待工作状态,当有选手将抢答按键按下时(如按下S5),74LS148的输出经RS锁存后,CTR=1,RBO(图中4端)=1,七段显示电路74LS48处于工作状态,4Q3Q2Q=101,经译码显示为“5”。

此外,CTR=1,使74LS148优先编码工作标志端(图中5号端)=1,处于禁止状态,封锁其他按键的输入。

当按键松开即按下时,74LS148的此时由于仍为CTR=1,使优先编码工作标志端(图中5号端)=1,所以74LS148仍处于禁止状态,确保不会出二次按键时输入信号,保证了抢答者的优先性。

如有再次抢答需由主持人将S开关重新置“清除”然后再进行下一轮抢答。

74LS148为8线-3线优先编码器,表1为其功能表。

根据设计要求,用PROTEL99SE画出8路抢答器原理图(图3),并进行封装(表1)。

元件

EPM7128SLC84-15

74HC04

电阻

电容

按键接口

电源接口

NPN

8字管接口

元件封装形式

PLCC84

DIP14

AXIAL0.4

RAD0.2

SIP2

TO-18

SIP7

表18路抢答器元件封装形式

电路图输入完成后,经TOOLS中的ERC查错,以验证电路结果是否有问题,如果有问题,则返回原设计文件再次进行修改,直到正确为止。

图38路抢答器原理图

2、网络表生成

2.1原理及设计:

该部分主要由555定时器秒脉冲产生电路、十进制同步加减计数器74LS192减法计数电路、74LS48译码电路和2个7段数码管即相关电路组成。

具体电路如图3所示。

两块74LS192实现减法计数,通过译码电路74LS48显示到数码管上,其时钟信号由时钟产生电路提供。

74192的预置数控制端实现预置数,由节目主持人根据抢答题的难易程度,设定一次抢答的时间,通过预置时间电路对计数器进行预置,计数器的时钟脉冲由秒脉冲电路提供。

按键弹起后,计数器开始减法计数工作,并将时间显示在共阴极七段数码显示管DPY_7-SEG上,当有人抢答时,停止计数并显示此时的倒计时时间;如果没有人抢答,且倒计时时间到时,输出低电平到时序控制电路,控制报警电路报警,同时以后选手抢答无效。

下面结合图具体讲一下标准秒脉冲产生电路的原理。

从NE555的3端输出的脉冲的频率为

结合我们的实际经验及考虑到元器件的成本,我们选择的电阻值为R1=15K,R2=68K,C=10uF,代入到上式中即得,即秒脉冲。

原理图设计封装无误后,利用原理图生成网络表文件,将电路图中全部元件和电气连接关系的文本信息列表,该网络表文件是原理图设计和印刷版设计的接口,也是计算机进行自动布线的灵魂。

该过程可由菜单“DESIGN”“CREATENETLIST”辅助完成。

3、软件系统

软件系统主要包括以下几个部分:

(1)主程序:

主程序的功能主要是完成内部各寄存单元的初始化,对接口电路的初始化,内部定时器的初始化,中断的初始化及调用显示程序对初始状态的显示以及对外部信号的等待处理,也就是说完成前期的准备工作等待随时对外部信号进行响应。

(2)对开始抢答信号的处理:

当主持人按下开始抢答键后开始抢答,程序部分采用中断方式进行处理。

在中断处理程序中完成相应操作,修改计时单元的数据并使红色指示灯亮。

(3)键盘扫描子程序:

对行列式键盘的扫描方法有两种。

一为扫描法,对键盘按行(或列)逐行(或列)扫描查询,其结构清晰但对处于最后行列的按键需经多次扫描;一为反转法,它先使行(或列)全为零,读入列(或行)的状态暂存,然后使列(或行)全为零,读入行(或列)的状态保存,对两次保存数据进行查询即可得知按下键的行列数从而确定键值。

在程序中采用反转法对键盘进行扫描。

键盘扫描程序在确定键值后保存等待后续处理。

(4)键值处理子程序:

此子程序根据键盘扫描所取得的键值作出相应处理。

(5)显示子程序:

此程序仅完成6位数据的动态显示,可显示数字和代码。

4、电路板制作

利用PROTEL99SE的PCB向导规划一个2500mil*2000mil大小的PCB板,将网络表文件载入该PCB板文件中,加入一个电源封装SIP2定义好VCC和GND。

经过“tools”、“autoplacement”、“autoplacer”菜单进行自动布局,并经手工调整,将元件分布在PCB板适当的位置。

然后经过autorouteall进行自动布线并调整就可得到PCB板图(图4),经“VIEWPCB3D”按钮就可看到制作好的8路抢答器的3D效果图(图5)

图4生成的PCB文件

图58路抢答器印刷电路版3D效果图

 

结束语

EDA技术VHDL语言设计的出现从根本上改变了以往数字电路的设计模式,使电路由硬件设计转变为软件设计,使电子设计的核心转化为VHDL语言的编程设计,这样提高了设计的灵活性,降低了电路的复杂程度,修改起来也很方便。

并且整个设计很大一部分由电脑辅助来完成,体现了EDA(电子设计自动化)的自动化特点。

本文设计出的基于EDA技术的8路抢答器控制电路,在校EDA实验室的EDA-V实验箱上进行了下载,验证了整个设计的正确性。

参考文献:

[1]郭勇.EDA技术基础(M).机械工业出版社2005

(2):

314-319

[2]谢海鸿,李萍,林德斌.基于EDA技术的交通信号灯定时控制系统(J).佛山科学技术学院学报2005.(3):

8-11

[3]潘松,王国栋.VHDL实用教程[M].电子科技大学出版社2001

(2):

85-130

[4]潘松,黄继业.EDA技术实用教程[M].科学学出版社,2002:

170—185

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 党团工作 > 入党转正申请

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1