收藏 分销(赏)

基于单片机的16路抢答器设计说明书.doc

上传人:a199****6536 文档编号:2501584 上传时间:2024-05-30 格式:DOC 页数:16 大小:560.94KB
下载 相关 举报
基于单片机的16路抢答器设计说明书.doc_第1页
第1页 / 共16页
基于单片机的16路抢答器设计说明书.doc_第2页
第2页 / 共16页
基于单片机的16路抢答器设计说明书.doc_第3页
第3页 / 共16页
基于单片机的16路抢答器设计说明书.doc_第4页
第4页 / 共16页
基于单片机的16路抢答器设计说明书.doc_第5页
第5页 / 共16页
点击查看更多>>
资源描述

1、毕业设计说明书基于单片机的16路抢答器设计 专 业 机电一体化技术 班 级 姓 名 指导教师 一、 主要元器件及设计方案选择1. 单片机选型本设计单片机选用AT89C51, AT89C51是一种带4K字节FLASH存储器的低电压、高性能CMOS 8位微处理器;2. 按键方案选择方案一:独立式按键。如果设置过多按键,将会占用较多 I/O 口,而且会给布线带来不便,因此,此方案适用于按键较少的情况。方案二:矩阵式键盘。此方案适用于按键较多的情况,但程序较为复杂。很显然,本系统中需要16个按键用于抢答,因此,可以采用44 矩阵式键盘。固该设计选用方案二。二、 系统硬件设计1. 系统整体结构系统其整体

2、结构如图1所示。复位电路按键模块单片机显示电路蜂鸣器图1 系统整体框图2. 晶振复位及开始抢答电路晶振的频率为12MHZ,提供89C51的时钟脉冲使89C51工作,复位电路是单片机初始化,使单片机重新开始执行程序。当复位开关按下RST由低电平变为高电平,则程序从头开始执行,在此次课程设计电路中当一个问题结束主持人后按下复位开关后进行下一题的准备。电路如图2所示。图2 复位及开始抢答电路3. 矩阵式键盘89C51的P1口做一个44的行列式键盘做为选手的抢答按键。P1.0至P1.3轮流输出低电平在软件查询P1.4至P1.7的电平变化来输入组号。给每一个选手编号1至16,当选手按下按钮时,电平变化从

3、P1口输入,经单片机处理后从P0输出由数码管显示抢答者编号,抢答电路如图3所示。 图3 选手抢答电路4. 显示电路本次设计电路包括显示和驱动,显示采用数码管,驱动用三极管PNP。数码管的显示可以分为两种:静态显示和动态显示。数码管采用动态显示,电路如图4所示。图4 显示及驱动电路5. 蜂鸣器电路当主持人按下开始抢答按钮、选手违规抢答、选手抢答成功等情况时,蜂鸣器都发出声响提示。蜂鸣器是一种电子电路中常用的发声器件,蜂鸣器分为有源蜂鸣器和无源蜂鸣器两种。提供蜂鸣器发声所需要较高的电流,单片机的I/O口驱动能力有限,而我们知道三极管有电流放大的作用,在这里就是利用三极管放大电流来使蜂鸣器获得足够的

4、驱动电流,其电路如图5所示。图5 蜂鸣器音频输出电路图三、 系统软件设计1. 系统主流程开 始初始化读键盘是否有键按下调用显示抢答违规并报警子程序中断条件是否满足进入中断程序NNYY图6 系统主流程图2. 抢答控制流程图NY开中断并响声提示设定定时器初值并启动定时器10秒抢答倒计时开始显示调用读键子程序作为延时程序是否有按键按下10到时中断并返回调用抢答者获得回答的子程序 图7 系统程序流程图3. 显示抢答违规流程图开始报警提示两次显示违者编号图8 显示抢答违规流程图4. 抢答成功控制流程图开始响声提示设定定时器初值并启动显示抢答者且3秒后20秒倒计时20秒回答问题时间到并响声提示RET图8

5、抢答成功控制流程图图纸与程序一、系统整体电路基于单片机的16路抢答器电路图二、系统控制程序ORG 0000H LJMP MAIN ORG 0013H LJMP ESS1 ORG 0100HMAIN:SETB EA SETB EX1 SETB IT1 ;外部中断1初始化 L16:MOV P1,#0FFH MOV R2,#00H CLR P1.0 INC R2 JB P1.4,L0 LCALL DE0 L0:INC R2 JB P1.5,L1 LCALL DE0 L1:INC R2 JB P1.6,L2 LCALL DE0 L2:INC R2 JB P1.7,L3 LCALL DE0 L3:SET

6、B P1.0 CLR P1.1 INC R2 JB P1.4,L4 LCALL DE0 L4:INC R2 JB P1.5,L5 LCALL DE0 L5:INC R2 JB P1.6,L6 LCALL DE0 L6:INC R2 JB P1.7,L7 LCALL DE0 L7:SETB P1.1 CLR P1.2 INC R2 JB P1.4,L8 LCALL DE0 L8:INC R2 JB P1.5,L9 LCALL DE0 L9:INC R2 JB P1.6,L10 LCALL DE0 L10:INC R2 JB P1.7,L11 LCALL DE0 L11:SETB P1.2 CLR

7、 P1.3 INC R2 JB P1.4,L12 LCALL DE0 L12:INC R2 JB P1.5,L13 LCALL DE0 L13:INC R2 JB P1.6,L14 LCALL DE0 L14:INC R2 JB P1.7,L15 LCALL DE0 L15:LJMP L16 ;读行列式键盘 ESS1:MOV 70H,#30D ;外部中断1 MOV R7,#0CH CLR P3.0 S2:LCALL DELAY DJNZ 70H,S2 SETB P3.0 ;蜂鸣器提示开始抢答 MOV TMOD,#00010000B MOV R3,#0AH L20:MOV 55H,#14H L1

8、9:MOV TH0,#3CH MOV TL0,#0B0H ;定时器1初始化 SETB TR1 ;启动定时器1 MOV A,R3 MOV B,#0AH DIV AB MOV DPTR,#TAB MOVC A,A+DPTR MOV 53H,A LCALL DELAY1 SETB P2.4 MOV A,B MOVC A,A+DPTR MOV 54H,A CLR P2.5 MOVC A,A+DPTR MOV 54H,A CLR P2.5 MOV P0,54H LCALL DELAY1 SETB P2.5 L18:JNB TF1,L18 D6:CJNE R3,#0FFH,L21 LJMP L22 L21

9、:LJMP L20 ;抢答倒计时 L22:MOV 73H,#02D S5:MOV 70H,#20D MOV 71H,#20H CLR P3.0 S4:LCALL DELAY DJNZ 70H,S4 SETB P3.0 S6:LCALL DELAY DJNZ 71H,S6 DJNZ 73H,S5 ;抢答倒计时时间到声音提示 D5:RETI DE0:MOV DPTR,#TAB ;抢答违规报警并显示抢答违规组号 MOV A,R2 MOV B,#0A S10:MOV 72H,#20D MOV 73H,#10D CLR P3.0 S8:LCALL LCC DJNZ 72H,S8 SETB P3.0 S9

10、:LCALL LCC DJNZ 73H,S9 DJNZ 71H,S10 L17:LCALL LCC LJMP L17 LCC:CLR P2.4 MOV P0,50H LCALL DELAYDELAY1:MOV P1,#0FFH ;正常抢答读键 W0:INC R2 JB P1.5,W1 LCALL DE1 W1:INC R2 JB P1.6,W2 LCALL DE1 W2:INC R2 JB P1.7,W3 LCALL DE1 W3:SETB P1.0 CLR P1.1 INC R2 JB P1.4,W4 LCALL DE1 W4:INC R2 JB P1.5,W5 LCALL DE1 W5:I

11、NC R2 JB P1.6,W6 LCALL DE1 W6:INC R2 JB P1.7,W7 LCALL DE1 W7:SETB P1.1 CLR P1.2 INC R2 JB P1.4,W8 LCALL DE1 W8:INC R2 JB P1.5,W9 LCALL DE1 W9:INC R2 JB P1.6,W10 LCALL DE1 W10:INC R2 JB P1.7,W11 LCALL DE1 W11:SETB P1.2 CLR P1.3 INC R2 JB P1.4,W12 LCALL DE1 W12:INC R2 JB P1.5,W13 LCALL DE1 W13:INC R2

12、JB P1.6,W14 LCALL DE1 W14:INC R2 JB P1.7,W15 LCALL DE1 W15:DJNZ R4,W16 LJMP W18 W16:LJMP W17 W18:RET DE1:MOV P1,#0FFH ;抢答成功声音提示及回答问题时间20秒倒计时 MOV 70H,#20D CLR P3.0 S3:LCALL DELAY DJNZ 70H,S3 SETB P3.0 SETB P2.0 SETB P2.1 MOV DPTR,#TAB MOV A,R2 MOV A,B MOVC A,A+DPTR MOV 57H,A MOV TMOD,#00000001B MOV R

13、5,#16H L32:MOV R6,#14H L31:MOV TH0,#3CH MOV TL0,#0B0H SETB TR0 CLR P2.4 MOV P0,56H LCALL DELAY SETB P2.4 CLR P2.5 MOV P0,57H LCALL DELAY SETB P2.5 CJNE R5,#14H,L34 LJMP L35L34: JC L35 LJMP L30L35: MOV A,R5 MOV B,#0AH DIV AB MOVC A,A+DPTR MOV 58H,A MOV A,B MOVC A,A+DPTR MOV 59H,A CLR P2.6 MOV P0,58H

14、LCALL DELAY SETB P2.6 CLR P2.7 MOV P0,59H LCALL DELAY SETB P2.7 L30:JNB TF0,L30 CLR TF0 DJNZ R6,L31 DEC R5 CJNE R5,#0FFH,L32 MOV P1,#0FFH MOV 70H,#50D CLR P3.0 S7:LCALL DELAY DJNZ 70H,S7 SETB P3.0 MOV P2,#0FFH MOV R3,#00H MOV R7,#00H RETDELAY:MOV 51H,#10D ;延时子程序 D0:MOV 52H,#248D D1:DJNZ 52H,D1 DJNZ 51H,D0 RET TAB:DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H END

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 研究报告 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服