单片机抢答器课程设计报告书.docx

上传人:b****8 文档编号:9192531 上传时间:2023-05-17 格式:DOCX 页数:27 大小:63.29KB
下载 相关 举报
单片机抢答器课程设计报告书.docx_第1页
第1页 / 共27页
单片机抢答器课程设计报告书.docx_第2页
第2页 / 共27页
单片机抢答器课程设计报告书.docx_第3页
第3页 / 共27页
单片机抢答器课程设计报告书.docx_第4页
第4页 / 共27页
单片机抢答器课程设计报告书.docx_第5页
第5页 / 共27页
单片机抢答器课程设计报告书.docx_第6页
第6页 / 共27页
单片机抢答器课程设计报告书.docx_第7页
第7页 / 共27页
单片机抢答器课程设计报告书.docx_第8页
第8页 / 共27页
单片机抢答器课程设计报告书.docx_第9页
第9页 / 共27页
单片机抢答器课程设计报告书.docx_第10页
第10页 / 共27页
单片机抢答器课程设计报告书.docx_第11页
第11页 / 共27页
单片机抢答器课程设计报告书.docx_第12页
第12页 / 共27页
单片机抢答器课程设计报告书.docx_第13页
第13页 / 共27页
单片机抢答器课程设计报告书.docx_第14页
第14页 / 共27页
单片机抢答器课程设计报告书.docx_第15页
第15页 / 共27页
单片机抢答器课程设计报告书.docx_第16页
第16页 / 共27页
单片机抢答器课程设计报告书.docx_第17页
第17页 / 共27页
单片机抢答器课程设计报告书.docx_第18页
第18页 / 共27页
单片机抢答器课程设计报告书.docx_第19页
第19页 / 共27页
单片机抢答器课程设计报告书.docx_第20页
第20页 / 共27页
亲,该文档总共27页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

单片机抢答器课程设计报告书.docx

《单片机抢答器课程设计报告书.docx》由会员分享,可在线阅读,更多相关《单片机抢答器课程设计报告书.docx(27页珍藏版)》请在冰点文库上搜索。

单片机抢答器课程设计报告书.docx

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

 

绪论------------------------------------------------------------------------------------------------------------II

引言-------------------------------------------------------------------------------------------------------------1

第1章系统设计内容---------------------------------------------------------------------------------2

1.1系统设计依据-------------------------------------------------------------------------------------------2

1.2设计任务和要求-------------------------------------------------------2

1.3设计目的-------------------------------------------------------------------------------------------------2

第2章硬件设计--------------------------------------------------------------------------------------5

2.1单片机控制原理----------------------------------------------------------------------------------------5

2.2抢答器的原理-------------------------------------------------------------------------------------------5

2.2.1原理框图----------------------------------------------------------------------------------------------5

2.3功能模块电路-------------------------------------------------------------------------------------------5

2.3.1开始抢答电路和选手抢答键---------------------------------------------------------------------5

2.3.2.显示与显示驱动电路------------------------------------------------------------------------------5

第3章软件设计----------------------------------------------------------------------------------------10

3.1程序设计--------------------------------------------------------------------------------------------------10

第4章系统调试--------------------------------------------------------18

第5章总结------------------------------------------------------------18

参考文献-----------------------------------------------------------------19

附录一程序代码----------------------------------------------------------20

附录二原理图------------------------------------------------------------27

 

摘要

 

随着社会的不断进步,电子技术也飞速的向前发展.特别是大规模集成电路的发展,把我们带进了电子化时代。

电子产品的日益增多,也让我们的生活越来越方便。

特别是计算机的发展,真可谓是突飞猛进。

自从1946年世界上第一台计算机的诞生以来,还不到六十年的时间,计算机就取得了举世瞩目的成绩。

特别是在通信领域,实现了信息一体化的时代。

作为大学生的我们,更需要加强实践能力的培养。

课程设计在一定程度上反映了我们对理论知识的理解程度,是理论与实践的桥梁。

它不仅能锻炼我们的动手能力,而且能够培养我们对问题的思考能力以及对知识的进一步了解。

当你能把你所学到知识化作为现实的东西时,我们能力就提升到一个新台阶。

很多人都认为学习是枯燥无味的,有时觉得与现实太遥远。

在学习之余,我们仍然可以找到一点有趣的事情,比如说做一个声控灯泡、数字钟等等。

生活中我们要找到自己感兴趣的东西。

这次综合课程设计中,我们制作了八路抢答器。

抢答器是为智力竞赛参赛者答题时进行抢答而设计的一种优先判决器电路,广泛应用于各种知识竞赛、文娱活动等场合。

能够实现抢答器功能的方式有多种,可以采用前期的模拟电路、数字电路或模拟与数字电路相结合的方式,但这种方式制作过程复杂,而且准确性与可靠性不高,成品面积大,安装、维护困难。

本节介绍一种利用51单片机作为核心部件进行逻辑控制及信号产生的八路抢答器。

近年来,随着单片机档次的不断提高,功能的不断完善,其应用日趋成熟、应用领域日趋扩大,特别是工业测控、尖端武器和日用家电等领域更是因为有了单片机而生辉增色。

单片机应用技术已成为一项新的工程应用技术。

本次课程设计我们做的是八路抢答器,我们采用AT89C51单片机实现抢答功能,性能更稳定,更易操作调试。

关键词:

多路数字抢答器AT89C51PROTEUS

 

·引言

随着电子技术的飞速发展,基于单片机的控制系统已经广泛应用于工业、农业、电力、电子、智能楼宇等行业。

微型计算机作为嵌入式控制系统的主体与核心,代替了传统的控制系统的常规电子线路。

同时楼宇智能化的发展与成熟,也为基于单片机的照明控制系统的普及与应用奠定了坚实的基础。

电子智能抢答器在抢答过程中,为了知道哪一组或哪一位选手先回答问题,必须要设计一个系统来完成这个任务。

如果在抢答中,靠视觉是很难判断出哪组先答题。

利用单片机系统来设计抢答器,使以上问题得以解决,即使两组的抢答时间相差几微秒也可以分辨出使哪组优先回答问题。

抢答组数可以在八组以内任意使用,本系统设计为模块形式采用九针插头进行连接,系统工作原理本系统采用AT89C51单片机作为核心。

控制系统的五个模块分别为:

单片机最小系统、显示模块、显示驱动模块、抢答开关模块、音乐音频输出模块。

多路数字抢答器在各种智力竞赛中经常用到。

在各校举行的各种竞赛中我们也经常看到有抢答的环节,举办方多数采用让选手通过举答题板的方法判断选手的答题权,这在某种程度上会因为主持人的主观误断造成比赛的不公平性。

为解决这个问题,我准备借本次课程设计的机会制作一个八路数显抢答器。

一方面加深我们对所学习的知识的了解,巩固模拟、数字电路知识,也提升我们解决日常生活中常见问题的能力,掌握一般设计方法与设计步骤。

积累实际设计制作经验,为走向更复杂更实用的应用领域奠定基础。

控制系统主要由单片机控制电路、存储器接口电路及显示电路组成。

具体以AT89C51单片机为系统工作核心,负责控制各个部分协调工作。

在其外围接上了复位电路、上拉电阻、数码管、按钮及扬声器,其中用到了WAVE软件,集成调试环境,集成编辑器、编译器、调试器,支持软件模拟等。

同时也用到了PROTEUS软件,通过仿真可完全实现对所设计系统的功能的模拟。

1绪论

单片机作为计算机的一个重要分支,其应用范围很广,发展也很快,它已成为在现代电子技术、计算机应用、网络、通信、自动控制与计量测试、数据采集与信号处理等技术中日益普及的一项新兴技术,应用范围十分广泛。

对于计算机专业的学生来说,即使暂时没有从事单片机的应用与开发,学习单片机也有很重要的意义。

学习它,不仅为将来可能从事该方面的开发打下基础,另一方面,由于单片机作为微型计算机的一个种类,麻雀虽小,五脏俱全,可以把它当作微型计算机的一个简化模型来看待,学习单片机可以加深对微型计算机工作原理的理解,更加清楚计算机的脉络。

同时,提供了一个实际应用手段。

21世纪,是一个信息技术飞速发展的时代,智力竞赛是一种形式比较活泼的教育方式,是人们休闲娱乐生活的一部分。

这些竞赛一方面充实了人们的娱乐生活,另一方面也提高了人们努力汲取相关领域的知识的兴趣。

智力竞赛,也就是几个参赛选手之间在规定的时间,规定的地点相互竞争的比赛。

抢答是各种竞赛常用的一种形式。

在抢答赛中,往往要有主持人宣布抢答的开始,还要确定是哪个选手抢到了答题权,具体答题的时间有时也要设定。

这些如果仅凭主持人的主观判断,很容易出现误判的情况。

因此,在竞赛中,抢答器就扮演了一个非常重要的角色。

第1章系统设计内容

1.1系统设计依据

抢答器由计数器、寄存器、集成定时器和译码显示等组合、时序电路组成。

可分为抢答电路,定时电路,报警电路等几个单元部分。

每个单元电路分别可以处理一些抢答竞赛中的基本问题。

本次课程设计设计的是一个多路定时抢答器,是一个多于两位选手参赛的一个抢答器,具有锁存和显示功能。

同时有主持人控制系统的清零和抢答的开始。

抢答开始后,若有任何一名选手按动抢答按钮,抢答器就会显示该选手编号直至系统被主持人清零,,同时其他人再抢答就无效了。

1.2设计任务和要求

设计一个八路抢答器

要求:

(1)设计出硬件电路;

(2)设计出软件编程方法,并写出源代码;

(3)用PROTEUS进行仿真;

(4)论文格式要符合学院的统一规定,结构要合符逻辑,表达要得体。

1.3设计目的

通过设计学习单片机最小系统的基本设计方法,掌握单片机应用系统的开发调试过程。

(1)学习单片机开发工具功能、特点和使用方法。

(2)学会单片机控制系统程序的编制和编制和调试方法。

(3)设计单片机抢答器硬件电路,绘制出电路原理图。

(4)编制并调试出键盘扫描程序和显示驱动程序。

(5)掌握单片机定时器的基本用法,编制出定时器的中断程序。

第2章硬件设计

2.1单片机控制原理

单片机(SCM)是单片微型计算机(SingleChipMicrocomputer)的简称。

它是把中央处理器CPU、随机存储器RAM、只读存储器ROM、I/O接口电路、定时/计数器以及输入输出适配器都集成在一块芯片上,构成一个完整的微型计算机。

它的最大优点是体积小,可放在仪表内部。

但存储量小,输入输出适配器简单,功能较低。

目前,单片机在民用和工业测控领域得到最广泛的应用,早已深深地融入人们的生活中。

简单的说,用单片机系统来设计抢答器,实现两组的抢答时间即使是相差几微秒,也可分辨出哪组优先答题。

P0端口(P0.0-P0.7):

P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。

当P1口的管脚第一次写1时,被定义为高阻输入。

P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。

在FIASH编程时,P0口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。

P1端口(P1.0-P1.7):

P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。

P1口管脚写入1后,被内部上拉为高电平,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。

在FLASH编程和校验时,P1口作为第八位地址接收。

P2端口(P2.0-P2.7):

P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。

并因此作为输入时,P2口的管脚被外部拉低,将输出电流。

这是由于内部上拉的缘故。

P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。

在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。

P2口在FLASH编程和校验时接收高八位地址信号和控制信号。

P3端口(P3.0-P3.7):

P3口管脚是一个带有内部上拉电阻的8位的双向I/O端口,可接收输出4个TTL门电流。

当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。

作为输入端时,由于外部下拉为低电平,P3口将输出电流(ILL)。

2.2抢答器的原理

抢答器的工作原理是采用单片机最小系统,用程序查询方式采用动态显示组号。

主持人按下开始抢答键才可以抢答。

主持人没有按下开始抢答按纽(P3.0),有人抢答则抢答违规,报警并显示组号,主持人按下开始抢答开关重新抢答。

主持人按下开始抢答按纽(P3.0),蜂鸣响声提示,数码管30秒倒计时抢答,蜂鸣器响声提示并显示他的组号,30秒内有人抢答则开始60秒倒计时(60秒内必须回答完问题),最后五秒倒计时警报。

单片机最小系统、抢答按键模块(四位并行数码显示)、显示模块、显示驱动模块、抢答开关模块、蜂鸣器音频输出模块。

2.2.1原理及电路总框图

图2.2.1抢答器总原理图

 

2.3功能模块电路

2.3.1开始抢答电路和选手抢答键

在此次课程设计电路中当一个问题结束主持人后按下复位开关后进行下一题的准备。

89C51的P1口做一个为选手抢答的输入按键引脚,P1.0至P1.7轮流输出低电位,给每一个选手编号1至8,当选手按下按钮时,P1口个端口的电平变化从P1口输入,经单片机处理后从P0输出由数码管显示抢答者编号。

图2.3.1开始抢答电路和选手抢答键

2.3.2显示与显示驱动电路

此电路包括显示和驱动,显示采用数码管,驱动用P2口,违规者编号、抢答30秒倒计时、正常抢答者编号和回答问题时间60秒倒计时,数码管采用动态显示。

驱动电路P2口,查询显示程序利用P0口做段选码口输出P2低3位做位选码输出,当为低电平则能驱动数码管使其显示数字。

在+5V电压下接10k的电阻,保证正常压降。

图2.3.2显示与显示驱动电路

 

第3章软件设计

3.1程序代码

3.1.1主程序

#include

#defineucharunsignedchar

#defineuintunsignedint

sbitkey1=P2^2;

sbitkey2=P2^1;

sbitkey3=P2^0;

sbitkey4=P3^2;

sbitkey5=P3^3;

sbitkey6=P3^4;

sbitkey7=P3^7;

sbitkey8=P3^6;

sbitkey9=P3^5;

ucharcodeled[]=

{0x3F,//0

0x06,//1

0x5B,//2

0x4F,//3

0x66,//4

0x6D,//5

0x7D,//6

0x07,//7

0x7F,//8

0x6F,//9

};

uchardis_i=0;

ucharnum=0,flag=0;

voiddelay(uinta)

{

uchari;

while(a--)

{

for(i=0;i<250;i++);

}

}

voidmain()

{

TMOD=0x01;

ET0=1;

TH0=0xec;

TL0=0x78;

TR0=1;

EA=1;

while

(1)

{

P3=P3|0xfc;

P2=P2|0x07;

if(flag==0)

{

if(key9==0)

{

delay(10);

if(key9==0)

{

flag=1;

}

}

}

elseif(flag==1)

{

if(((P3&0xfc)!

=0xfc)||((P2&0x07)!

=0x07))

{

delay(10);

if(((P3&0xfc)!

=0xfc)||((P2&0x07)!

=0x07))

{

if(key1==0&&flag!

=2)

{

num=1;

flag=2;

}

if(key2==0&&flag!

=2)

{

num=2;

flag=2;

}

if(key3==0&&flag!

=2)

{

num=3;

flag=2;

}

if(key4==0&&flag!

=2)

{

num=4;

flag=2;

}

if(key5==0&&flag!

=2)

{

num=5;

flag=2;

}

if(key6==0&&flag!

=2)

{

num=6;

flag=2;

}

if(key7==0&&flag!

=2)

{

num=7;

flag=2;

}

if(key8==0&&flag!

=2)

{

num=8;

flag=2;

}

}

}

}

elseif(flag==2)

{

if(key9==0)

{

delay(10);

if(key9==0)

{

flag=0;

num=0;

while(!

key9);

}

}

}

}

}

voiddisplay()interrupt1

{

TH0=0xec;

TL0=0x78;

dis_i=(dis_i+1)%4;

switch(flag)

{

case0:

switch(dis_i)

{

case0:

P0=0xff;

P2=0x7f;

break;

case1:

P0=0xff;

P2=0xbf;

break;

case2:

P0=0xff;

P2=0xdf;

P0=~led[0];

break;

case3:

P0=0xff;

P2=0xef;

P0=~led[0];

break;

}

break;

case1:

switch(dis_i)

{

case0:

P0=0xff;

P2=0x7f;

P0=~led[0];

break;

case1:

P0=0xff;

P2=0xbf;

P0=~led[0];

break;

case2:

P0=0xff;

P2=0xdf;

P0=~led[0];

break;

case3:

P0=0xff;

P2=0xef;

P0=~led[0];

break;

}

break;

case2:

switch(dis_i)

{

case0:

P0=0xff;

P2=0x7f;

P0=~0x00;

break;

case1:

P0=0xff;

P2=0xbf;

P0=~0x00;

break;

case2:

P0=0xff;

P2=0xdf;

P0=~0x00;

break;

case3:

P0=0xff;

P2=0xef;

P0=~led[num];

break;

}

break;

}

}

第4章系统调试

软件的设计与调试实行分模块实现的方法。

本设计软件调试中的分模块包括显示功能模块,调整时间功能模块,抢答功能模块以及报警功能模块。

各个独立模块功能调试成功后,将这些模块程序通过主程序合并在一起,最后再对合并后的总程序进行调试。

各软件模块首先要通过PC和仿真器进行软件调试,当仿真效果符合要求后在烧写进单片机看是否在实际电路板上正常工作。

本设计通过利用Proteus仿真,将所编写的程序用wave软件编译,所仿真原理图见附录。

 

第5章结论

自接触单片机以来,一直觉得单片机非常难,这次的课程设计我开始是以老师布置题目为主要选择对象的,但是后面发现,像八路抢答器在我脑海中根本没得一点意象,上网搜了很多资料,也感觉不怎么很懂,于是问老师怎么弄,后面发现老师的意见和我的原本的程序和图只有几个地方不同,于是便将两者综合了一下,经调试和运行后,发现还行的通,于是便开始了忐忑的正文模版之路,以为快搞完了,后面发现其实程序和图还是要细细的弄懂才能写好报告,于是我又将程序和图细细的剖析了一遍,慢慢的画出流程图,然后慢慢将流程图和proteus图画好和截取下来,经过最近这段时间的在电脑前面的驻守,觉得只要自己肯付出和努力,发现其实很多的东西不是那么难懂的,以后还是要好好提升自己的动手能力和独立思考的能力。

在此,还是非常感谢我们的指导老师,她是一位很负责和很细心的老师,谢谢她的辅导和鼓励,这次的课程设计给了我一个很好的开始,我会好好努力的以后。

纵然课程设计是学校所要求的科目,纵然每次都这么紧张和辛苦,但是我还是觉得有些东西做了,就一定会有一定的价值吧。

 

参考文献资料

[1]张

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > IT计算机 > 电脑基础知识

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2