当前位置:文档之家› 单片机课程设计报告八路抢答器

单片机课程设计报告八路抢答器

《单片机原理及接口技术》课程设计报告课题名称题目15八路抢答器设计★★学院自动控制与机械工程学院专业电气工程及其自动化班级姓名学号时间2011-12-27目录前言 (3)一、课程设计的目的和要求 (3)二、方案设计2.1功能介绍 (5)2.2抢答器的工作原理 (6)三、硬件设计电路设计3.1原理图的确定 (7)3.2芯片的选择 (8)3.3复位电路的设计 (10)3.4晶振电路的设计 (11)3.5数码显示管的选择 (11)3.6报警设计 (12)3.7 八位抢答输入设计 (12)3.8主持人控制按键 (13)四、软件设计思想及流程4.1 主程序的设计 (14)4.2子程序的设计 (15)五.调试过程和调试方法 (20)六、课程设计体会 (22)七、参考文献 (22)附录 (23)前言单片机和其他微型机一样,也是由CPU(包括运算器和控制器)、存储器、输入设备、输出设备组成,只不过单片机是将CPU、RAM、ROM、定时/计数器,以及输入/输出(I/O)接口电路等计算机的主要部件集成在一小块硅片上的单片微型计算机。

它具有体积小、可靠性高、性价比高等优点,主要应用于工业检测与控制、计算机外设、只能仪器仪表、通讯设备、家用电器和机电一体化产品等领域。

一、课程设计的目的和要求1.1课程设计的目的和要求单片机原理及应用课程设计是学生综合运用所学知识,全面掌握单片微型计算机及其接口的工作原理、编程和使用方法的重要实践环节。

通过独立或协作提出并论证设计方案,进行软、硬件调试,最后获得正确的运行结果,可以加深和巩固对理论教学和实验教学内容的掌握,进一步建立计算机应用系统整体概念,初步掌握单片机软、硬件开发方法。

根据单片机原理及应用课程的要求,主要进行两个方面的设计,即单片机最小系统和存储器扩展设计、接口技术应用设计。

其中,单片机最小系统主要要求学生熟悉单片机的内部结构和引脚功能、引脚的使用、复位电路、时钟电路、4个并行接口和一个串行接口的实际应用,从而可构成最小应用系统,并编程进行简单使用。

存储器扩展设计要求学生掌握常用半导体芯片与单片机的接口,如EPROM存储器用作外部程序存储器时与单片机的连接关系,SRAM存储器用作外部数据存储器时与单片机的连接关系,E2PROM存储器用作外部程序/数据存储器时与单片机的连接关系。

能合理分配和使用单片机的内部和外部存储器,编程实现正常的读写功能。

1.2 题目15 八路抢答器的设计★★设计任务及要求1.2.1 设计任务基于MCS-51系列单片机AT89C51,设计一个八路抢答器。

1.2.2 设计要求1)抢答器同时供八名选手或八个代表队比赛,分别用8个按钮K1~K8.2)设置一个系统清除和抢答控制开关K0,该开关由主持人控制。

3)抢答器具有锁存与显示功能。

即选手按动按钮,锁存相应的编号,并将优先抢答选手的编号一直保存到主持人将系统清除为止。

4)主持人按下抢答“开始”按钮,抢答开始。

5)当某一路抢答成功时,在数码管上显示成功信息和该路的号数。

6)当某一路抢答违规时,能在数码管上显示违规信息和该路的号数。

7)@具有定时抢答功能,且一次抢答的时间由主持人设定(如30秒)。

当主持人启动“开始”按键后,定时器进行减计时,同时扬声器发出短暂的声响,声响持续的时间0.5秒左右。

8)@参赛选手在设定的时间内进行抢答,抢答有效,定时器停止工作显示器上显示选手的编号和抢答的时间,并保持到主持人将系统清除为止。

9)@如果定时时间已到,无人抢答,本次抢答无效,系统报警并禁止抢答,定时显示器上显示00。

10)☆其他功能。

二、总体设计2.1功能介绍1、(创新)如果想调节抢答时间或答题时间,按"抢答时间调节"键或"答题时间调节"键进入调节状态,此时会显示现在设定的抢答时间或回答时间值,如想加一秒按一下"加1s"键,如果想减一秒按一下"-1s"键,时间LED上会显示改变后的时间,调整范围为0s~99s, 0s 时再减1s会跳到99,99s时再加1s会变到0s。

2、主持人按"抢答开始"键,会有提示音,并立刻进入抢答倒计时(预设30s抢答时间),如有选手抢答,会有提示音,并会显示其号数并立刻进入回答倒计时(预设60s抢答时间),不进行抢答查询,所以只有第一个按抢答的选手有效。

抢答及答题倒数时间到小于5s 会每秒响一下提示音。

3、如果主持人未按"抢答开始"键,而有人按了抢答按键,犯规抢答,LED上不断闪烁犯规号数和--并响个不停,直到按下"停止" 键为止。

4、p1.0-p1.7为八路抢答输入数码管段选P0口,位选P2口,蜂鸣器输出为P3.6口。

P3.0为开始抢答,P3.1为停止/复位,P3.2抢答时间调整结,P3.3回答时间调整,P3.4为时间加1调整,P3.5为时间减1调整。

2.2 抢答器的工作原理抢答器的工作原理是利用单片机的定时器T0、T1中断完成,其余状态循环调用显示子程序,用4个共阴极LED数码管来显示,用P0口作为数码管的八个段选,用P2口中的P2.0、P2.1、P2.2、作为4个数码管其中3个位选,P1口接8个按键,提供选手抢答,P3.0-P3.5四个接四个按键,提供开始、结束、答题时间调整、抢答时间调整,加1、减1调整之用。

抢答功能:通过八路按键配合程序来实现抢答功能。

当主持人按下抢答键开始抢答后,此时任一路按下按钮均闭锁其它各路,由程序译码并显示最先按下抢答键的路数及其当前时间并立即转入答题阶段。

如下为抢答功能设计框图:抢答限时:主持人按下抢答键后,设置30秒为抢答时间(此时间可在1-99秒之间修改)。

若30秒内无人抢答,倒计时为5时每一秒发出一声报警,倒计时为零时说明该抢答题目作废并显示---。

答题限时:当选手按下按钮时,启动60秒倒计时(此倒计时时间可在1~99秒之间修改),倒计时为5时每一秒发出一声报警,直到为零时该题答题结束,数码管显示---,等待主持人开始下一次抢答。

三、硬件设计3.1 原理图的确定单片机实现抢答的原理图:图3-1 抢答原理图3.2 芯片的选择抢答器电路的核心是MCS-51系列AT89C51单片机,其在一块芯片上集成了CPU、RAM、ROM、定时/技术器、I/O接口等功能部件。

图3-2.1 51单片机的内部系统组成基本框图图3-2.2 51系列单片机引脚图VCC (40):+5V ;GND (20):接地;P0口(39-32):不外接片外存储器及不扩展时可作为准双向输入/输出接口,扩展是分时复用为低8位地址总线; P1口(1-8):可作为准双向I/O 接口定时/计数器 中断逻辑CPU并 行 I/O 接 口 串存储器存储器 I/O 接 口输 入 输 出 设 备发送数据接收数据外部计数脉冲 外部中断源使用;P2口(28-21):外接及扩展时用作高8位地址总线;P3口(10-17):有两种功能,优先选用第二功能;RST(9):复位输入。

当振荡器复位时,要保持RST引脚2个机器周期的高电平时间;ALE/PROG(30):地址锁存有效信号输出端;PSEN(29):外部程序存储器的选通信号;EA/VPP(31):片外程序存储器选通端;XTAL1(19):内部振荡电路反相放大器输入端;XTAL2(18):内部振荡电路反相放大器输出端。

3.3复位电路的设计RST:复位端。

单片机的振荡器工作时,该引脚上至少保持连续两个机器周期(24个振荡周期)的高位电平就可以实现系统复位,使单片机回复到初始状态。

该复位电路采用上电自动复位方式,要实现复位只需在51系列单片机的RESET引脚上加上5ms的高电平就可以了。

上电复位是利用电容的充电来实现的,即上电瞬间RESET端的电位与Vcc相同,随着电容上储能增加,电容电压也逐渐增大,充电电流减小,RESET 端的电位。

这样就会建立一个脉冲电压,调节电容与电阻的大小可对脉冲的持续时间进行调节。

通常若采用12MHz的晶振时,复位元件参数为10μF的电解电容和10kΩ的电阻。

图3-3 复位电路电路图3.4 晶振电路的设计MCS-51单片机的定时控制功能是用时钟电路和振荡器完成的,而根据硬件电路的不同,连接方式分为内部时钟方式和外部时钟方式。

本设计中采用内部时钟方式。

单片机内部有一个反相放大器,XTAL1、XTAL2分别为反相放大器的输入端和输出端,外接定时反馈元件组成振荡器(内部时钟方式),产生时钟送至单片机内部各元件。

时钟频率越高,单片机控制器的控制节拍就越快,运算速度也就越快。

一般来说单片机内部有一个带反馈的线性反相放大器,外界晶振(或接陶瓷振荡器)和电容就可组成振荡器,如图3-4所示。

加电以后延时一段时间(约10ms)振荡器产生时钟,不受软件控制,图中电容C2,C3的作用有两个:一是帮助振荡器起振,二是对振荡器的频率起微调作用。

图3-4 晶振电路图3.5数码显示管的选择数码显示管用来作为时间的显示输出,一般用7段数码显示管。

本次设计中采用7段共阴数码显示管应用简单、可靠性高、成本低,作为显示输出。

连接时段选信号接在P0口的P0.0~P0.6七个I/O口上,P1口是准双向I/O接口,在接电阻时选择接10K限流电阻。

而在位选方面采用单片机P2口的P2.0~P2.6七个I/O口作为位选信号的输出口。

图3-5 数码显示管3.6报警设计当开始抢答或者任一选手非法抢答时,以及抢答及答题到最后五秒时,系统都会发出报警声.图3-6 蜂鸣器3.7 八位抢答输入设计八个按键分别供八位选手使用,当主持人按下开始抢答键后,选手们在第一时间内按下自己的按键,即可进行抢答。

图3-7 八位抢答输入电路图3.8主持人控制按键主持人控制按键由“开始抢答”、“停止/复位”、“强大时间调整”、“答题时间调整”、“加1”、“减1”六个按键组成。

按动不同的按键就能实现不同的功能。

图3-8 控制按键四、软件设计4.1 .1主程序的设计流程图图4-1 系统主程序流程图4.1.2主程序设计源程序MAIN: MOV R1,#30;初设抢答时间为30sMOV R2,#60;初设答题时间为60sMOV TMOD,#11H;设置未定时器/模式1MOV TH0,#0F0H;送初值MOV TL0,#0FFH;越高发声频率越高,越尖MOV TH1,#3CHMOV TL1,#0B0H;50ms为一次溢出中断SETB EASETB ET0SETB ET1SETB EX0SETB EX1;允许四个中断,T0/T1/INT0/INT1CLR OKCLR RINGSETB TR1SETB TR0;一开始就运行定时器,以开始显示--- 4.2子程序的设计流程图4.2.1 查询程序(2)=====查询程序=====START: MOV R5,#0BHMOV R4,#0BHMOV R3,#0BHACALL DISPLAY;未开始抢答时候显示---JB P3.0,NEXT;dddddddACALL DELAYJB P3.0,NEXT;去抖动ACALL BARK;按键发声MOV A,R1MOV R6,A;送R1->R6,因为R1中保存了抢答时间SETB OK;抢答标志位MOV R3,#0AH;抢答只显示计时,灭号数AJMP COUNT;进入倒计时程序NEXT: JNB P1.0,FALSE1JNB P1.1,FALSE2JNB P1.2,FALSE3JNB P1.3,FALSE4JNB P1.4,FALSE5JNB P1.5,FALSE6JNB P1.6,TZ1JNB P1.7,TZ2AJMP STARTTZ1:JMP FALSE7TZ2:JMP FALSE84.2.2 非法抢答处理程序4.2.3 抢答时间调整子程序五.系统调试系统调试包括硬件调试和软件调试,硬件调试的任务是排除系统的硬件电路故障,包括设计错误和工艺故障。

相关主题