plc四路抢答器课程设计

发布时间:2024-11-18

dsfsfsf

四 川 理 工 学 院

课 程 设 计 书

系别 计算机学院

专业 计算机科学与技术

班级 2006.1

题目 智能抢答器的设计与功能实现

教师 陈光建 蒋华龙

学生 陈新林 李亚 严晓凤

dsfsfsf

目 录

第一节 课程设计目标 ......................................................................................... 2

1.1概述 ......................................................................................................... 2

1.2功能介绍: ............................................................................................. 3

1.3设计方案 ................................................................................................. 4

1.3.1 原理图的确定 ............................................................................. 4

1.3.2 抢答器的工作原理 ..................................................................... 4

1.4 抢答器的总体设计 ................................................................................ 5

第二节 硬件电路详细设计 ................................................................................. 6

2.1 硬件的选择与电路设计 ........................................................................ 6

2.1.1 芯片的选择 ................................................................................. 6

2.1.2 复位电路的设计 ......................................................................... 6

2.1.3 晶振电路的设计 ......................................................................... 7

2.2 数码显示管的选择 ................................................................................ 8

第三节 软件详细设计 ......................................................................................... 8

3.1 主程序的设计 ........................................................................................ 8

3.2 显示子程序的设计 ................................................................................ 9

3.3 定时器T0、T1中断服务程序的设计 ................................................. 9

3.4 抢答处理程序的设计 .......................................................................... 10

第四节 试验结果及结论 ................................................... 错误!未定义书签。

第五节 PCB板的制作及产品的焊接调试 ...................... 错误!未定义书签。

5.1 PCB板的设计 ...................................................... 错误!未定义书签。

5.2 制板 ...................................................................... 错误!未定义书签。

5.3 焊接与调试 .......................................................... 错误!未定义书签。

第六节 心得体会及成员分工 ........................................... 错误!未定义书签。

第七节 附录(源程序) ................................................................................... 11

第八节 参考文献 ............................................................... 错误!未定义书签。

dsfsfsf

一、 课程设计目标

1.1概述

单片机原理及应用课程设计是学生综合运用所学知识,全面

掌握单片微型计算机及其接口的工作原理、编程和使用方法的重

要实践环节。通过独立或协作提出并论证设计方案,进行软、硬

件调试,最后获得正确的运行结果,可以加深和巩固对理论教学

和实验教学内容的掌握,进一步建立计算机应用系统整体概念,

初步掌握单片机软、硬件开发方法,为以后进行实际单片机软、

硬件应用开发奠定良好的基础。

课程设计的主要内容:根据单片机原理及应用课程的要求,主要

进行两个方面的设计,即单片机最小系统和存储器扩展设计、接

口技术应用设计。其中,单片机最小系统主要要求学生熟悉单片

机的内部结构和引脚功能、引脚的使用、复位电路、时钟电路、4

个并行接口和一个串行接口的实际应用,从而可构成最小应用系

统,并编程进行简单使用。

存储器扩展设计要求学生掌握常用半导体芯片与单片机的接

口,如EPROM存储器用作外部程序存储器时与单片机的连接关系,

SRAM存储器用作外部数据存储器时与单片机的连接关系,E2PROM

存储器用作外部程序/数据存储器时与单片机的连接关系。能合理

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

能。

接口技术应用设计主要要求学生能综合运用单片机、存储器、

常用接口芯片构成单片机应用系统,有针对性地进行软、硬件设

dsfsfsf

计与开发。

1.2功能介绍:

1、如果想调节抢答时间或答题时间,按"抢答时间调节"键或"答题

时间调节"键进入调节状态,此时会显示现在设定的抢答时间或回

答时间值,如想加一秒按一下"加1s"键,如果想减一秒按一下

"-1s"键,时间LED上会显示改变后的时间,调整范围为0s~99s, 0s

时再减1s会跳到99,99s时再加1s会变到0s。

2、主持人按"抢答开始"键,会有提示音,并立刻进入抢答倒计时

(预设30s抢答时间),如有选手抢答,会有提示音,并会显示其

号数并立刻进入回答倒计时(预设60s抢答时间),不进行抢答查

询,所以只有第一个按抢答的选手有效。倒数时间到小于5s会每

秒响一下提示音。

3、如倒计时期间,主持人想停止倒计时可以随时按"停止"按键,

系统会自动进入准备状态,等待主持人按"抢答开始"进入下次抢

答计时。

4、如果主持人未按"抢答开始"键,而有人按了抢答按键,犯规抢

答,LED上不断闪烁FF和犯规号数并响个不停,直到按下"停止" 键

为止。

5、P3.0为开始抢答,P3.1为停止,p1.0-p1.7为八路抢答输入 数

码管段选P0口,位选P2口低3位,蜂鸣器输出为P3.6口。P3.2

抢答时间调整结,P3.3回答时间调整,P3.4为时间加1调整,P3.5

为时间减1调整。

dsfsfsf

1.3设计方案

1.3.1 原理图的确定

在设计开始,我们查了不少关于抢答器的资料,其大体分为2种,一种是纯硬件实现,另一种是单片机实现。本次课程设计采用单片机实现。

单片机实现抢答的原理图:

1.3.2 抢答器的工作原理

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

dsfsfsf

P3.0-P3.5四个接四个按键,提供开始、结束、答题时间调整、抢答时间调整,加1、减1调整之用。

1.4 抢答器的总体设计

倒计时方案方面利用MCS-51的内部的定时/计时器进行中断计时,配合软件延时实现倒计时。该方案节省硬件成本,并且能够在定时器/计数器的使用、中断及程序设计方案方面得到锻炼与提高,显示方面采用穿行传输实现动态显示,该方案的硬件连接简单,但动态扫描的显示方式需占用CPU较多的时间,适用于单片机没有太多实时测控的任务场合。

抢答功能:

通过八路按键配合程序来实现抢答功能。当主持人按下抢答键开始抢答后,此时任一路按下按钮均闭锁其它各路,由程序对键盘译码并显示最先按下抢答键的路数及其当前时间。

抢答限时:

主持人按下抢答键后,设置5秒为抢答时间(此时间可在1-99秒之间修改)。若5秒内无人抢答,倒计时为0时发出报警,说明该抢答题目作废。此时闭锁所有抢答按键,只有当主持人再次按下抢答键开始下一次抢答方可抢答。

答题限时:

当选手按下按钮时,启动倒计时(此倒计时时间可在1~99秒之间修改),,倒计时为0时发出报警,说明答题时间到。

dsfsfsf

二、 硬件电路详细设计

2.1 硬件的选择与电路设计

2.1.1 芯片的选择

抢答器电路的核心是89C51单片机,其内部带有4KB的FLASH ROM,无需外扩程序存储器;抢答器没有大量的运算和暂存数据现有的128B篇内RAM已经能满足容量需求,故不需外扩片外RAM,系统配有8位8段数码显示管,管采用共阴数码管,作为时钟的显示输出。

2.1.2 复位电路的设计

复位电路的设计如图2-1所示:

图2-1 复位电路原理图

该复位电路采用上电自动复位和手动复位两种复位方式,图中

dsfsfsf

网络标号所指9连接到单片机的复位引脚。要实现复位只需在,51系列单片机的RESET引脚上加上5ms的高电平就可以了。上电复位是利用电容的充电来实现的,即上电瞬间RESET端的电位与Vcc相同,随着电容上储能增加,电容电压也逐渐增大,充电电流减小,RESET端的电位。这样就会建立一个脉冲电压,调节电容与电阻的大小可对脉冲的持续时间进行调节。通常若采用12MHz的晶振时,复位元件参数为22μF的电解电容和10kΩ的电阻。按钮复位电路是通过按下复位按钮时,电源对RESET端维持两个机器周期的高电平实现复位的。

2.1.3 晶振电路的设计

MSC-51单片机的定时控制功能是用时钟电路和振荡器完成的,而根据硬件电路的不同,连接方式分为内部时钟方式和外部时钟方式。本设计中采用内部时钟方式。

单片机内部有一个反相放大器,XTAL1、XTAL2分别为反相放大器的输入端和输出端,外接定时反馈元件组成振荡器(内部时钟方式),产生时钟送至单片机内部各元件。时钟频率越高,单片机控制器的控制节拍就越快,运算速度也就越快。

一般来说单片机内部有一个带反馈的线性反相放大器,外界晶振(或接陶瓷振荡器)和电容就可组成振荡器,如图2-2所示。加电以后延时一段时间(约10ms)振荡器产生时钟,不受软件控制,图中Y1为晶振,震荡产生的时钟频率主要由Y1确定。电容C1,C2的作用有两个:一是帮助振荡器起振,二是对振荡器的频率起微调作用,典型值为30pF。

晶振电路的设计如图2-2所示:

dsfsfsf

图2-2 晶振电路原理图

2.2 数码显示管的选择

数码显示管用来作为时间的显示输出,一般用7段数码显示管。本次设计中采用7段共阴数码显示管应用简单、可靠性高、成本低,作为显示输出。连接时段选信号接在P0口的P0.0~P0.6七个I/O口上,P1口是准双向I/O接口在输出驱动部分具有驱动4个TTL负载的能力,即输出电流不大于400μA,所以在接电阻时选择接510Ω限流电阻。而在位选方面采用单片机P2口的P2.0~P2.2三个I/O口作为位选信号的输出口。

三、 软件详细设计

3.1 主程序的设计

此程序的及时采用定时器T0和T1中断完成,其余状态循环调用显示子程序。系统主程序流程图如图3-1所示。

dsfsfsf

图3-1 系统主程序流程图

3.2 显示子程序的设计

由于采用软件动态扫描实现数据显示,显示用十进制BCD码的数据对应段码存放在ROM表中。显示时,先取出70H~75H某一地址中的数据,然后查得对应的显示段码从P0口输出。P2口将对应的数码管选中,就能显示该地址单元的数据值。

3.3 定时器T0、T1中断服务程序的设计

定时器T0用于响铃程序,定时器T1用于计时程序。当答题剩余5秒种时P3.6口不断取反使喇叭发出一定频率的声音,提示选手。中断服务程序流程图如图3-2所示。

dsfsfsf

图3-2 中断服务程序流程图

3.4 抢答处理程序的设计

当有选手第一个按下抢答器按扭时数码管显示选手号码,开始倒计时,并锁定抢答。当在此选手之后再有选手按下按扭时无效,数码管不变。

dsfsfsf

四、 附录(源程序)

主程序部分和注解如下:

OK EQU 20H;抢答开始标志位

RING EQU 22H;响铃标志位

ORG 0000H

AJMP MAIN

ORG 0003H

AJMP INT0SUB

ORG 000BH

AJMP T0INT

ORG 0013H

AJMP INT1SUB

ORG 001BH

AJMP T1INT

ORG 0040H

MAIN: MOV R1,#30;初设抢答时间为30s

MOV R2,#60;初设答题时间为60s

MOV TMOD,#11H;设置未定时器/模式1

MOV TH0,#0F0H

MOV TL0,#0FFH;越高发声频率越高,越尖

MOV TH1,#3CH

MOV TL1,#0B0H;50ms为一次溢出中断

SETB EA

SETB ET0

dsfsfsf

SETB ET1

SETB EX0

SETB EX1;允许四个中断,T0/T1/INT0/INT1

CLR OK

CLR RING

SETB TR1

SETB TR0;

显示子程序,及部分注解如下:

DISPLAY:MOV DPTR,#DAT1;查表显示程序,利用P0口做段选码口输出/P2低三位做位选码输出,

MOV A,R3

MOVC A,@A+DPTR

MOV P2,#0feH

MOV P0,A

ACALL DELAY

MOV DPTR,#DAT2

MOV A,R5

MOVC A,@A+DPTR

MOV P2,#0fdH

MOV P0,A

ACALL DELAY

MOV A,R4

MOVC A,@A+DPTR

MOV P2,#0fbH

MOV P0,A

ACALL DELAY

dsfsfsf

RET

DAT1:DB 00h,06h,5bh,4fh,66h,6dh,7dh,07h,7fh,6fh,00H,71H ;"灭","1","2","3","4","5","6","7","8","9","灭","F"

DAT2:DB 3fh,06h,5bh,4fh,66h,6dh,7dh,07h,7fh,6fh,00H,71H 第一个为零,其他与上相同,因为十位如果为零显示熄灭

=====TO溢出中断(响铃程序)=====

T0INT: MOV TH0,#0ECH

MOV TL0,#0FFH

JNB RING,OUT;

CPL P3.6;RING标志位为1时候P3.6口不断取反使喇叭发出一定频率的声音

OUT: RETI

T1溢出中断(计时程序):

T1INT: MOV TH1,#3CH

MOV TL1,#0B0H

INC R0

RETI

END

抢答器处理程序:

TRUE1: ACALL BARK;按键发声

MOV A,R2

MOV R6,A;抢答时间R2送R6

MOV R3,#01H

CLR OK;因为答题的计时不再查询抢答,所以就锁了抢答

AJMP COUNT

dsfsfsf

TRUE2:ACALL BARK; MOV A,R2

MOV R6,A

MOV R3,#02H

CLR OK

AJMP COUNT

TRUE3:ACALL BARK; MOV A,R2

MOV R6,A

MOV R3,#03H

CLR OK

AJMP COUNT

TRUE4:ACALL BARK; MOV A,R2

MOV R6,A

MOV R3,#04H

CLR OK

AJMP COUNT

TRUE5: ACALL BARK; MOV A,R2

MOV R6,A

MOV R3,#05H

CLR OK

AJMP COUNT

TRUE6: ACALL BARK; MOV A,R2

MOV R6,A

dsfsfsf

MOV R3,#06H

CLR OK

AJMP COUNT

TRUE7: ACALL BARK; MOV A,R2

MOV R6,A

MOV R3,#07H

CLR OK

AJMP COUNT

TRUE8: ACALL BARK; MOV A,R2

MOV R6,A

MOV R3,#08H

CLR OK

AJMP COUNT

plc四路抢答器课程设计.doc 将本文的Word文档下载到电脑

    精彩图片

    热门精选

    大家正在看

    × 游客快捷下载通道(下载后可以自由复制和排版)

    限时特价:7 元/份 原价:20元

    支付方式:

    开通VIP包月会员 特价:29元/月

    注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
    微信:fanwen365 QQ:370150219