八路抢答器电子线路设计(附C语言程序) - 图文 下载本文

电子系统课程设计

第一章 数字抢答器的概述及制作要求

1.1 数字抢答器的概述

对于抢答器我们大家来说都不陌生,它是用于很多竞赛场合,真正实现先抢先答,让最先抢到题的选手来回答问题。抢答器不仅考验选手的反应速度同时也要求选手具备足够的知识面和一定的勇气。选手们都站在同一个起跑线上,体现了公平公正的原则。

1.2 设计任务与要求

基本要求:

1. 给主持人设置一个开关,用来控制系统的重启(编号显示数码管重置初始时间)和抢答器的倒计时开始。

2. 抢答器显示和倒计时的功能。抢答开始后,若有选手按动抢答器按钮,编号立即锁存,并在LED数码上显示选手的编号,同时扬声器给出音响提示。此外,要封锁输入电路,禁止其他选手抢答。

发挥部分:

1. 抢答器具有定时抢答的功能,且一次抢答的时间可以由主持人设定(如20秒)。当节目主持人启动“开始”键后,要求定时器立即减计时,并用显示器显示。

2. 参加选手在设定的时间内抢答,抢答有效,定时器停止工作,显示器上显示选手的编号,并保持到主持人将系统清零为止。

3. 如果定时抢答的时间已到,却没有选手抢答时,本次抢答无效,系统自动回复到初始倒计时时间,并封锁输入电路,禁止选手超时后抢答。

4

电子系统课程设计

第二章 单片机芯片的选择及抢答器方案

2.1单片机芯片的选择

单片机选用的是Atmel公司推出的AT89C52,它是一种低功效、高性能CMOS8位微控制器,具有8K在系统可编程Flash存储器。使用Atmel公司高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼容。在单芯片上拥有灵巧的8位CPU和在线系统可编程Flash,使得AT89C52具有以下标准功能:8K字节Flash,256字节RAM,32位I/O口线,看门狗定时器,2个数据指针,三个16位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。空闲模式下,CPU停止工作,允许RAM、定时器/计数器串口、中断继续工作。掉电保护方式下RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。而且,它还具有一个看门狗(WDT)定时/计数器。如果程序没有正常工作,就会强制整个系统复位,还可以在程序陷入死循环的时候,让单片机复位而不用整个系统断电,从而保护你的硬件电路。T89S52有40个引脚,32个外部双向输入/输出(I/O)端口,同时内含2个外中端口,2个16位可编程定时计数器,2个全双工串行通信口,片上Flash允许程序存储器在系统可编程,亦适于常规编程器。其将通用的微处理器和Flash存储器结合在一起,特别是可反复擦写的Flash存储器可有效地降低开发成本。

单片机管脚说明:

5

电子系统课程设计

AT89C52

引脚 P3.0 P3.1 P3.2 P0.0~P0.7 P2.0~P2.3 P1.0~P1.7 RST XTAL1,XTAL2 功能 RXD(串行口输入),蜂鸣器报警 TXD(串行口输出),警示灯报警 INT0(外部中断0输入),用于倒计时 数码管段选 数码管位选 按钮抢答功能键 复位端 振荡电路

6

电子系统课程设计

2.2模块性能分析

模块部分主要分为AT89C52芯片、独立式键盘、LED数码管显示部分,下面对这后两部分进行介绍,其中对LED七段数码管显示器做详细介绍,并根据实际工作情况采用合适的工作方式。

2.2.1独立式键盘

利用8个常开按钮开关S1~S8和8只电阻R1~R8组成抢答器的输入电路。S1~S8为自复式常开按钮开关,分别作为8位抢答按钮,与它相连的8只电阻为下拉电阻,以保证按钮未按下时,锁存器的输入端为低电平。

当程序执行时,按下按键,七段数码管显示器上即显示相应的是哪个组按下抢答。

2.2.2 LED数码管显示

译码器的逻辑功能是将每一个输入的二进制代码译成对应的输出高、低电平信号,是编码器的反操作。数码管可以用TTL或CMOS集成电路直接驱动,所以使用译码器将BCD编码译成数码管所需要的驱动信号,以便使数码管用十进制数字显示出BCD编码表示的数值。

七段数码管的段排列和内部结构如图所示七段数码管的段排列和内部部结构 点亮显示器分为静态和动态显示两种方法。所谓静态显示,就是当显示器显示某一字符时,相应的发光二极管恒定的导通或是截止。例如,其段数码管的a、b、c、d、e、f、导通,g截止,则显示0.这对这种显示方式每一位都要有一个8位输出口控制,所占硬件较多,一般用于显示位数较少(很少)的场合。当位数较多时,用静态显示所需的I/O过多,一般采用动态显示方法。

在实际电路设计中,需要先通过仿真软件测试电路以及编译的程序,检查外围电路设计是否合理,软件编译是否正确,以及软件和硬件电路能否正常配合工作,能否准确的实现所设计的功能。如果测试通过,电路仿真没有问题能完全实现功能的话就可以实际的做板子的焊接工作了。在老师的指导下我选择了常用的单片机仿真软件proteus6.9以及keil 进行仿真。

7