抢答器单片机课程设计文档格式.docx
《抢答器单片机课程设计文档格式.docx》由会员分享,可在线阅读,更多相关《抢答器单片机课程设计文档格式.docx(24页珍藏版)》请在冰豆网上搜索。
用单片机来实现,他的制作比较简单,与我们学的《单片机原理》联系紧密,能将我们所学知识用于实际,对巩固所学知识有重要意义,使总体方案易于实现。
所以本方案用单片机来实现。
在有些实际竞赛的场合,只要满足显示抢答有效和有效组别即可,所以我们打算用一片74HC373(8位数据锁存器)来实现本课程设计的简易抢答器的功能,这是一个显示方式简单,价格低廉,经济实用的抢答器设计方案。
在要求不高的场合,能完全符合要求。
2总体设计方案
2.1智能抢答器主要功能
抢答器原理:
每个选手的座位前安装一只抢答按钮开关和一只信号灯。
主持人的座位前安装一只复原按钮开关、一只蜂鸣器和一只抢答器工作状态指示灯。
每当主持人口头发出允许抢答的号令之后,哪个队先按下座位上的按钮开关,该座位的信号灯就先被点亮,同时封锁其他按钮开关的活动。
并且熄灭主持人座位上的状态指示灯和发出3声类似于电话振铃的提示声,以“声明”此次抢答动作已经完成。
在主持人确认后,按下复原按钮,状态指示灯重新点亮,并且同时发出“笛——笛——”声,为下一次的抢答作好准备。
电路中的蜂鸣器FM是一只带有助音腔的压电陶瓷蜂鸣器,用于模拟发出报警声的功率放大器和喇叭。
发声的原理是,作用在两个电极极板的电位在发生变化时,陶瓷材料就发生弯曲,从而振动空气发出声音。
FM和4只按钮开关SWa~SWd都是在演示板的基础上额外添加的。
由于RB端口内部具有上拉电阻,只要用软件设置其有效,即可省略在4只端口引脚上外接上拉电阻。
参赛选手在设定的时间内进行抢答,抢答有效,定时器停止工作,显示器上显示选手的编号和抢答的时间,并保持到主持人将系统清除为止。
如果定时时间已到,无人抢答,本次抢答无效,系统报警并禁止抢答,定时显示器上显示0。
利用单片机可以用很少元件实现功能。
单片机性能稳定,可操作性强。
可以只用P0口连接排阻(用作上拉电阻),完成驱动LED的功能,串接按键可以由选手自己控制抢答机会。
利用单片机程序判断选手按键是否有效,但当选手违规抢答时,利用简单程序显示选手序号,启动蜂鸣器并不间断,告诉主持人有人违规操作,抢答无效。
给出相应的延时,选手按正常的操作抢答,软件倒记时。
如果有选手在规定的时间以前完成问题,主持人通过按键开始按钮来复位,开始新的问题作答,因为程序不是很大不需要扩展存储空间,选手按键跳入相应的子程序,回答倒记时
与普通抢答器相比,我们还加入了一些不一样的想法:
1、具有清零装置和抢答控制,可由主持人操纵避免有人在主持人说“开始”前提前抢答违反规则。
2、具有定时功能,在10秒内无人抢答表示所有参赛选手获参赛队对本题弃权。
3、10秒时仍无人抢答其报警电路工作表示抢答时间耗尽并禁止抢答。
2.2电路设计
本抢答器的电路主要有四部分组成:
数字抢答电路、时序控制电路、报警电路以及可预置时间的定时电路。
其中数字抢答部分有一个74HC373锁存器和数码管显示器组成,可以将八位抢答者的按钮通过数码管显示器显示出他们最先抢答者的序号。
而时序控制电路的功能是当参赛选手按动抢答器时,使扬声器发声,这时抢答电路和定时电路停止工作。
而且设定的时间(本课题设置为10秒)到达后若无人抢答,则报警电路工作。
报警电路工作的条件是当设定时间到达后或者有人抢答时,报警电路被输入一个高电平,这时此电路工作。
2.3八位抢答器设计要求
本次设计的智能抢答器(八位抢答器)将具有以下功能:
(1)抢答器同时供8名选手比赛抢答用,有8个按钮S0~S7表示。
(2)设置一个系统清除和抢答控制开关“开始”,“结束”,该开关由主持人控制。
(3)抢答器具有锁存与显示功能。
即选手按动按钮,锁存相应的编号,扬声器发出声响提示,并在数码管上显示选手号码。
此外还有一些扩展功能:
(1)抢答器具有定时抢答功能,且一次抢答的时间由主持人设定(如10秒)。
当主持人启动“开始”键后,定时器进行减计时。
(2)参赛选手在设定的时间内进行抢答,抢答有效,定时器停止工作,显示器上显示选手的编号和抢答的时间,并保持到主持人将系统清除为止。
(3)如果定时时间已到,无人抢答,本次抢答无效,系统报警并禁止抢答,定时显示器上显示0。
2.4硬件介绍
2.4.1AT89C52单片机简介
AT89C52是8位通用微处理器。
采用标准的C51内核,在内部功能及管脚排布上
PDIP封装的AT89C52引脚图
与通用的8xc52相同,其主要用于会聚调整时的功能控制。
功能包括对会聚主IC内部寄存器、数据RAM及外部接口等功能部件的初始化,会聚调整控制,会聚测试图控制,红外遥控信号IR的接收解码及与主板CPU通信等。
主要管脚有:
XTAL1(19脚)和XTAL2(18脚)为振荡器输入输出端口,外接12MHz晶振。
RST/Vpd(9脚)为复位输入端口,外接电阻电容组成的复位电路。
VCC(40脚)和VSS(20脚)为供电端口,分别接+5V电源的正负端。
P0~P3为可编程通用I/O脚,其功能用途由软件定义,在本设计中,P0端口(32~39脚)被定义为N1功能控制端口,分别与N1的相应功能管脚相连接,13脚定义为IR输入端,10脚和11脚定义为I2C总线控制端口,分别连接N1的SDAS(18脚)和SCLS(19脚)端口,12脚、27脚及28脚定义为握手信号功能端口,连接主板CPU的相应功能端,用于当前制式的检测及会聚调整状态进入的控制功能。
P0口:
P0口是一组8位漏极开路型双向I/O口,也即地址/数据总线复用口。
作为输出口用时,每位能吸收电流的方式驱动8个TTL逻辑门电路,对端口P0写“1”时,可作为高阻抗输入端用。
在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低8位)和数据总线复用,在访问期间激活内部上拉电阻。
P1口:
P1是一个带内部上拉电阻的8位双向I/O口,P1的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。
对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。
作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。
引脚号
功能特性
P1.0
T2,时钟输出
P1.1
T2EX(定时/计数器2)
与AT89C51不同之处是,P1.0和P1.1还可分别作为定时/计数器2的外部计数输入(P1.0/T2)和输入(P1.1/T2EX),参见表1。
Flash编程和程序校验期间,P1接收低8位地址。
P2口:
P2是一个带有内部上拉电阻的8位双向I/O口,P2的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。
对端口P2写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口,作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。
在访问外部程序存储器或16位地址的外部数据存
储器(例如执行MOVX@DPTR指令)时,P2口送出高8位地址数据。
在访问8位地址的外部数据存储器(如执行MOVX@RI指令)时,P2口输出P2锁存器的内容。
表1P1.0和P1.1的功能
P3口:
P3口是一组带有内部上拉电阻的8位双向I/O口。
P3口输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。
对P3口写入“1”时,它们被内部上拉电阻拉高并可作为输入端口。
此时,被外部拉低的P3口将用上拉电阻输出电流(IIL)。
P3口除了作为一般的I/O口线外,更重要的用途是它的第二功能
P3口还接收一些用于Flash闪速存储器编程和程序校验的控制信号。
RST:
复位输入。
当振荡器工作时,RST引脚出现两个机器周期以上高电平将使单片机复位。
ALE/PROG:
当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8位字节。
一般情况下,ALE仍以时钟振荡频率的1/6输出固定的脉冲信号,因此它可对外输出时钟或用于定时目的。
要注意的是:
每当访问外部数据存储器时将跳过一个ALE脉冲。
PSEN:
程序储存允许(PSEN)输出是外部程序存储器的读选通信号,当AT89C52由外部程序存储器取指令(或数据)时,每个机器周期两次PSEN有效,即输出两个脉冲。
在此期间,当访问外部数据存储器,将跳过两次PSEN信号。
EA/VPP:
外部访问允许。
欲使CPU仅访问外部程序存储器(地址为0000H—FFFFH),EA端必须保持低电平(接地)。
需注意的是:
如果加密位LB1被编程,复位时内部会锁存EA端状态。
如EA端为高电平(接Vcc端),CPU则执行内部程序存储器中的指令。
XTAL1:
振荡器反相放大器的及内部时钟发生器的输入端。
XTAL2:
振荡器反相放大器的输出端。
2.4.2锁存器
锁存器是一种对脉冲电平敏感的存储单元电路,它们可以在特定输入脉冲电平作用下改变状态。
由若干个钟控D触发器构成的一次能存储多位二进制代码的时序逻辑电路,叫锁存器件。
逻辑结构与功能表见图2-4:
图2-4锁存器逻辑结构与功能表
8位锁存器74HC373的逻辑图如下图所示。
其中使能端G加入CP信号,D为数据信号。
输出控制信号为0时,锁存器的数据通过三态门进行输出。
图2-574HC373引脚(管脚)图:
图2-674LS373内部逻辑图
图2-774LS373真值表
所谓锁存器,就是输出端的状态不会随输入端的状态变化而变化,仅在有锁存信号时输入的状态被保存到输出,直到下一个锁存信号到来时才改变。
在某些运算器电路中有时采用锁存器作为数据暂存器数据有效延迟后于时钟信号有效。
这意味着时钟信号先到,数据信号后到。
典型的锁存器逻辑电路是D触发器电路。
锁存,就是把信号暂存以维持某种电平状态。
锁存器的最主要作用是缓存,其次完成高速的控制其与慢速的外设的不同步问题,再其次是解决驱动的问题,最后是解决一个I/O口既能输出也能输入的问题。
3系统硬件设计
3.1硬件电路的总体框图
本数字抢答器的硬件电路总体框图见图3-1:
图3-1数字抢答器电路框图
3.2电路器件选择
本次设计的数字抢答器采用AT89C52单片机作为系统的控制单元。
就抢答器而言,通常可采用液晶显示或数码管显示。
由于数码管作为一种主动显示器件,具有亮度高、价格便宜等优点,而且市场上也有专门的时钟显示组合数码管。
本实验用数码管来显示。
3.3最小系统设计
3.3.1时钟频率电路图
单片机必须在时钟的驱动下才能工作.由之前所学的《单片机原理》最小系统内容,在单片机内部有一个时钟振荡电路,只需要外接一个振荡源就能产生一定的时钟信号送到单片机内部的各个单元,决定单片机的工作速度。
晶振电路见图3-2:
·
图3-2晶振电路