毕业设计(电信0801秦月)_第1页
毕业设计(电信0801秦月)_第2页
毕业设计(电信0801秦月)_第3页
毕业设计(电信0801秦月)_第4页
毕业设计(电信0801秦月)_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

PAGEPAGE15毕业设计说明书课题名称:基于单片机的四人抢答器学生姓名秦月专业电子信息工程技术班级电信0801时间2010.10—2010.11指导教师游家发电子信息与自动化工程系四人智力竞赛抢答器设计摘要抢答器作为一种工具已被广泛应用于各种智力竞赛。本设计是以四路抢答器为基本理念。主要介绍了利用AT89C51单片机实现的抢答器。利用了单片机的定时器和计数器的定时和计数原理将软件和硬件结合起来,使系统能够正确的计时,同时使数码管可以正确的显示时间,达到了基本的要求。通过定时器中断来实现1秒延时,通过查表实现LED数码管的数字显示,通过调用延时子程序9次实现9秒倒计时,同时也能够显示抢答人的编号。关键字:单片机AT89C51计数抢答器目录

摘要……………2抢答器电路的概述………31.1抢答器电路的概述1.2本文的内容抢答器电路的总体设计…………………32.1任务要求2.2电路设计原理图设计中应该到的原件介绍………………53.1电平转换器件Max2323.2SN74HC573A10-7线译码驱动器介绍3.3AT89C51单片机管脚图及其说明设计原理……………84.1设计原理分析4.2控制系统的组成4.3主程序流程图4.4INT0中断服务程序框图程序介绍及源程序………10电路安装及调试…………13设计总结与致谢…………13附录………………………158.1元件清单8.2参考文献抢答器电路的概述:抢答器电路的概述抢答器是一种应用广泛的设备,在各种竞赛和抢答场合中,它能迅速客观地分辨出最先获得发言权的选手。早期的抢答器只由几个三极管、可控硅、发光管等组成。能通过发光管的指示辨认出选手号码。现在大多数抢答器均使用单片机和数字集成电路,并增加了许多新功能,如选手号码显示、抢按前或抢按后的计时、选手得分显示等功能。1.2本文的内容本设计是以四路抢答器为基本理念。主要介绍了利用AT89C51单片机实现的抢答器。利用了单片机的定时器和计数器的定时和计数原理将软件和硬件结合起来,使系统能够正确的计时,同时使数码管可以正确的显示时间,达到了基本的要求。通过定时器中断来实现1秒延时,通过查表实现LED数码管的数字显示,通过调用延时子程序9次实现9秒倒计时,同时也能够显示抢答人的编号。2.抢答器电路的总体设计2.1任务要求设计一个可供4人进行的抢答器,设置一个控制开关用来控制系统的结束和抢答的开始。抢答器具有定时抢答的功能,当启动开始键后,要求定时器立即倒数计时,并用显示器显示。参赛选手在设定的时间内抢答,抢答有效,定时器显示器停止工作,显示器上分别显示选手的编号和抢答时间,并保持到系统结束。2.2电路设计原理图图2—2电路设计原理图3、设计中应该到的原件介绍3.1、电平转换器件Max232MAX232芯片是美信公司专门为电脑的RS-232标准串口设计的接口电路,使用+5v单电源供电。内部结构基本可分三个部分:第一部分是电荷泵电路。由1、2、3、4、5、6脚和4只电容构成。功能是产生+12v和-12v两个电源,提供给RS-232串口电平的需要。第二部分是数据转换通道。由7、8、9、10、11、12、13、14脚构成两个数据通道。其中13脚(R1IN)、12脚(R1OUT)、11脚(T1IN)、14脚(T1OUT)为第一数据通道。8脚(R2IN)、9脚(R2OUT)、10脚(T2IN)、7脚(T2OUT)为第二数据通道。TTL/CMOS数据从T1IN、T2IN输入转换成RS-232数据从T1OUT、T2OUT送到电脑DP9插头;DP9插头的RS-232数据从R1IN、R2IN输入转换成TTL/CMOS数据后从R1OUT、R2OUT输出。第三部分是供电。15脚DNG、16脚VCC(+5v)。图3-1Max232集成块图3—2Max232电气连接图3.2SN74HC573A10-7线译码驱动器介绍图3-3SN74HC573A7SN74HC573A概述

74HC573八路透明D型锁存器具有三态输出,被设计用于驱动高电容性或相对低阻抗的负载。74HC573尤其适合用来实现缓冲寄存器、I/O口、双向总线驱动器、以及工作寄存器。

74HC573的八个锁存器属于透明D型锁存器。当锁存使能(LE)端为高时,输出端Q将跟随数据输入端(D)。当LE为低时,输出端进入锁存状态以保持预设好的数据。

74HC573的缓冲输出使能端(OE)可用来设置八个输出口工作在普通逻辑状态(高或低逻辑电平)或者高阻态。当处于高阻态时,输出端既不能读取也不能驱动总线。高阻态和增强驱动使得74HC573具备总线驱动能力而不需要接口元件或上拉元件。SN74HC573A参数74HC573主要参数电压

2.0~6.0V驱动电流

-6/6mA最大传输延迟

38ns74HC573其他特性逻辑电平

CMOS输出数

874HC573封装与引脚PDIP20,SOIC20,SSOP20,TSSOP20

SN74HC573A特性

宽工作电压范围:2.0~6.0V高强度电流三态输出直接驱动总线,最多可支持高达15个LSTTL负载低功耗,最大ICC80μA典型tpd=21ns5V下驱动电流为±6mA低输入电流,最大1μA总线结构引脚布局

数目DCBAabcdefg012345678900000001001000110100010101100111100010010000001100111100100100000110100110001001001100000000111100000000001100表3—3SN74HC573LED线驱动器真值表(共阳极数码管字型码)3.3、AT89C51单片机引脚图与说明图3-4AT89C51单片机引脚图

VCC:供电电压。

GND:接地。

P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。

P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。

P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。

P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。

P3口也可作为AT89C51的一些特殊功能口,如下表所示:

口管脚备选功能

P3.0RXD(串行输入口)

P3.1TXD(串行输出口)

P3.2/INT0(外部中断0)

P3.3/INT1(外部中断1)

P3.4T0(记时器0外部输入)

P3.5T1(记时器1外部输入)

P3.6/WR(外部数据存储器写选通)

P3.7/RD(外部数据存储器读选通)

P3口同时为闪烁编程和编程校验接收一些控制信号。

RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。

ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时,ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。

/PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。

/EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。

XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。

XTAL2:来自反向振荡器的输出。4、设计原理分析4.1设计原理分析整个流程过程主要四大块:显示部分,计时部分,预置部分,控制部分.电源用正5伏,8051主控制器,当主持人按下复位键后,定时器开始计时,在0~9秒的时间内如果没有人抢答则为弃权,如果有人按键定时器停止计时间,自动显示组别并发出高频铃声,打完后按复位键开始下一轮抢答系统软件由主程序,查表数字显示子程序和9秒倒计时子程序,用定时器中断0方式做的1秒延时子程序组成。主程序由按键扫描,编号显示,9秒倒计时等功能子程序组成,系统完成初始化后循环检查各个功能当用户使用某个功能时,按下相应的按钮(或开关)单片机进入相应的功能处理。INT0中断服务程序完成抢答信号采样和识别处理。4.2控制系统组成控制系统主要由单片机应用电路、存储器接口电路、显示接口电路组成。其中单片机AT89C51是系统工作的核心,它主要负责控制各个部分的协调工作。4.3、主程序流程图:图4-1主程序流程图4.4INT0中断服务程序框图:INT0中断服务程序入口INT0中断服务程序入口采样P2口给R0R0=00H?显示“HH”提示抢答开始采样P2给R1R2=(R0⊕R1)·R0R2=0吗?R2中1的个数为1吗?用随机定位查找法确定第一有效抢答信号抢答键号显示及光亮报讯延时9后关显示R0=FFH?有违规信号P1.4置1无违规信号P1.4置0返回八路全部违规显示“UU”延时9S图4—2中断服务程序框图5、程序介绍及源程序1.定时整定:复位键复位以后,处理器收到整定时间的信号,这样给片内用于定时设置的单元连续的加1操作,其过程的状态显1位显示器显示,当断开整定开关程序转入下一步的访问.2.组别显示:当有人抢答时,则停止定时显示组别,抢答有效发出高频铃声(输出2KHZ脉冲),无效为低频铃声(输出为1KHZ脉冲),此处用了一个键操作程序,还有一个脉冲信号输出程序ORG00H;主程序的起始地址JMPSTARTSTART:CSH:MOVP0,#0c0hJBp1.0,CSH;扫描抢答启动按键p1.0是否按下,没有就继续执行初始化显示00SM:JnBP2.0,A1;4路按键扫描程序,扫描p2.0—p2.3四个端口是否有0电平JnBP2.1,A1JnBP2.2,A1JnBP2.3,A1SJMPSM;4路都没有抢答信号进入,程序就挑着到开始入口SMA1:JnBP2.0,B0_0;有扫描信号进来,就具体判断是哪个选手抢答JnBP2.1,B1_1JnBP2.2,B2_2JnBP2.3,B3_3B0_0:AJMPB0B1_1:AJMPB1B2_2:AJMPB2B3_3:AJMPB3B0:CLRP2.7;清除二极管发光SETBP1.6;开通个位位选CLRP1.7;关闭十位位选 MOVA,#0C0H;查表将0的字段码传送累加器A显示编号0MOVP0,A;将字段码送p0口输出 ACALLDELAY;延时一秒 ACALLDELAY;延时一秒 ACALLDELAY;延时一秒ACALLDJS;调用9秒倒计时子程序AJMPA1;跳出显示子程序,返回到扫描程序A1B1:CLRP2.7;清除二极管发光 SETBP1.6;开通个位位选CLRP1.7;关闭十位位选 MOVA,#0F9H;查表将1的字段码传送累加器A显示编号1MOVP0,A;将字段码送p0口输出 ACALLDELAY;延时一秒 ACALLDELAY;延时一秒 ACALLDELAY;延时一秒 ACALLDJS;调用9秒倒计时子程序AJMPA1;跳出显示子程序,返回到扫描程序A1 B2:CLRP2.7;清除二极管发光 SETBP1.6;开通个位位选CLRP1.7;关闭十位位选 MOVA,#0A4H;查表将0的字段码传送累加器A显示编号2MOVP0,A;将字段码送p0口输出 ACALLDELAY;延时一秒ACALLDELAY;延时一秒 ACALLDELAY;延时一秒 ACALLDJS;调用9秒倒计时子程序AJMPA1;跳出显示子程序,返回到扫描程序A1 B3CLRP2.7;清除二极管发光 SETBP1.6;开通个位位选CLRP1.7;关闭十位位选 MOVA,#0B0H;查表将0的字段码传送累加器A显示编号3MOVP0,A;将字段码送p0口输出 ACALLDELAY;延时一秒ACALLDELAY;延时一秒 ACALLDELAY;延时一秒 ACALLDJS;调用9秒倒计时子程序AJMPA1;跳出显示子程序,返回到扫描程序A1 DJS:;9S倒计时子程序 CLRP1.6;关闭个位位选 SETBP1.7;选通十位位选 MOVA,#09H;将9送累加器A MOVR1,#09H;将9送寄存器R1 LOOP: MOVDPTR,#TAB;查表首地址送DPTR MOVCA,@A+DPTR;查表得的内容送累加器 MOVP0,A;A当中的字段码送p0口输出 ACALLDELAY;延时一秒 DJNZR1,S;R1自减1非0跳转到S S: MOVA,R1;将R1当中内容送累加器 SJMPLOOP;跳转到LOOOP实现循环 SETBP1.5 ACALLYS;二极管闪烁 CLRP1.5 SETBP1.5 ACALLYS;二极管闪烁 CLRP1.5 ret DELAY:;1S延时 MOVR3,#200 MOVTMOD,#00H MOVTH0,#63H MOVTL0,#18H SETBTR0 LP1:JBCTF0,LP2 SJMPLP1 LP2:MOVTH0,#63H MOVTL0,#18H DJNZR3,LP1 RET YS:;0.5S延时 MOVR6,#64H LOOP1: MOVR7,#0F8H NOP LOOP2:DJNZR7,LOOP2 DJNZR6,LOOP1 RET TAB:DB0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H;共阳极数码管的字段码查表表格 END;结束程序6:安装与调试在进行实物制作前,一定要先仔细分析研究整机工作原理图,读懂每一部分电路的工作原理和连接关系,然后在电路板上细心的设计元器件的位置安排,一般遵从“先大后小,先整后散”的组装原则。焊接时的注意事项:注意二极管和三极管的极性,在焊接之前用仪器测出。在焊接之前要把各个电阻的阻值用万用表测试,检查阻值是否正确。检查变压器的型号,确定220V的交流电经变压器变压后是合适的电压。最好选用220V/25W的电烙铁。焊接时动作要快,以免把电路板铜线烫坏;焊接要准确。每焊接好一处注意要检查是否有短路现象。我的体会:焊接前一定要把电路图读懂,不然的话在焊接的时候很容易出现错误,一旦出现了错误在检查的过程中很难找到错误之处。再就是在焊接之前合理的安排各个元器件的放置位置,不然的话在焊接的时候不好连线且很容易造成接错位置的情况,检查的时候也不好检查。7.设计总结与体会这个课题的设计由理论联系实践,极大地培养了我们的动手能力和团队合作思想。通过和小组内其他四名成员的合作让我学习到了许多知识,使我受益匪浅,并认识到了自身选多不足之处,改正了在平时的学习中浮躁的心理,相信对于以后的学习会有极大的改益。通过查资料和搜集有关的文献,我们培养了自学能力和动手能力。并且由原先的被动的接受知识转换为主动的寻求知识,这可以说是学习上一个很大的突破。在以往的传统学习模式下,我们可能会记住很多的书本知识,但是通过毕业论文我们学会了如何将学习到的知识学以致用。在设计过程中由于时间仓促以及自身所学有限很多地方难免有不足之处,硬件设计已经完成,在软件设计中有些功能还没

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论