三路抢答器副本 2副本副本1.docx
- 文档编号:2285224
- 上传时间:2023-05-03
- 格式:DOCX
- 页数:16
- 大小:187.27KB
三路抢答器副本 2副本副本1.docx
《三路抢答器副本 2副本副本1.docx》由会员分享,可在线阅读,更多相关《三路抢答器副本 2副本副本1.docx(16页珍藏版)》请在冰点文库上搜索。
三路抢答器副本2副本副本1
单片机原理与应用课程设计说明书
题目:
三路抢答器设计
系部:
专业:
电
班级:
20
学生姓名:
学号:
1003
指导教师:
2012年5月22日
目录
1系统设计方案1
1.1设计内容及要求1
1.2系统功能设计1
1.3抢答器的工作流程设计2
2系统硬件设计3
2.1电子抢答器总硬件电路3
2.2电路器件的选择4
2.3时钟电路的设计4
2.4复位电路设计5
2.5蜂鸣器电路的设计5
3系统软件设计及调试6
3.1主程序系统结构6
3.2总程序系统结构8
3.3系统部分功能仿真10
总结与体会12
参考文献13
1系统设计方案
1.1设计内容及要求
一位主持人与三位抢答者,复位后甲乙丙的红绿灯全亮,开始键、复位键指示灯全暗,主持人按复位键则仅复位指示灯亮,其他都暗,准备开始,主持人按开始键,开始灯亮,允许抢答,此时优先者则相应成功指示灯亮,如果允许前抢则相应规范灯亮,答题开始进行时,到规定时间不允许答题,并返回复位状态。
设计要求如下:
1.具有抢答控制和倒计时显示功能;
2.控制器应有复位控制、开始控制、抢答控制和状态指示等功能,并有答题时控制和显示功能;
1.2系统功能设计
本系统是借用单片机采用模块化设计的三路抢答器,包括3路抢答按纽、计时显示、提示功能等开始与结束控制按钮、时限设定、各种相关显示调控功能等。
参赛者系统,除享有抢答按纽的权利功能外,还有人性化的提示功能和时间提示功能,也可设定由主控控制在参赛者终端表现的趣味性功能等;
系统的主要模块方块图如下图所示
图1.1系统主要功能模块
1.3抢答器的工作流程设计
抢答器的基本工作原理:
在抢答竞赛或呼叫时,有多个信号同时或不同时送入主电路中,抢答器内部的寄存器工作,并识别、记录第一个号码,同时内部的定时器开始工作,记录有关时间并产生超时信号。
在整个抢答器工作过程中,显示电路、声音电路等还要根据现场的实际情况向外电路输出相应信号。
抢答器的工作流程分为:
系统复位、正常流程、违例流程等几部分,如图1.2所示,下面分别予以介绍。
图1.2抢答器工作流程图
2系统硬件设计
2.1电子抢答器总硬件电路
各个零件有各的特点,其中独立键盘硬件电路简单,而且在程序设计上也不复杂,一般用在对硬件电路要求不高的简单电路中;矩阵键盘与独立键盘有很大区别,首先在硬件电路上它要比独立键盘复杂得多,而且在程序算法上比它要烦琐,但它在节省端口资源上有优势得多,因此它更适合于多按键电路。
其次就是消除在按键过程中产生的“毛刺”
现象。
这里采用最常用的方法,即延时重复扫描法,如下总电路图。
图2.1总硬件电路图
2.2电路器件的选择
根据初步设计方案的分析,设计这样一个简单的应用系统,以AT89C51单片机为控制核心,采用模块化的设计方案,可以实现3位数字抢答器的各项基本功能,例如定时抢答、显示抢答选手号码,主持人控制等等。
本次设计的数字抢答器采用AT89C51单片机作为系统的控制单元。
就抢答器而言,通常可采用液晶显示或数码管显示。
由于一般的段式液晶屏,需要专门的驱动电路,而且液晶显示作为一种被动显示,可视性相对较差;对于具有驱动电路和微处理器接口的液晶显示模块(字符或点阵),一般多采用并行接口,对微处理器的接口要求较高,占用资源多。
另外,AT89C51本身无专门的液晶驱动接口,因此,本时钟采用数码管显示方式。
数码管作为一种主动显示器件,具有亮度高、价格便宜等优点,而且市场上也有专门的时钟显示组合数码管。
本次的设计我采用的是7SEG-MPX4-CC数码管。
此外还有按钮、扬声器、电容、电阻,导线等等。
2.3时钟电路的设计
单片机必须在时钟的驱动下才能工作。
在单片机内部有一个时钟振荡电路,决定单片机的工作速度。
时钟电路如图2.2所示。
图2.2外部振荡源电路
一般选用石英晶体振荡器。
此电路在加电大约延迟10ms后振荡器起振,在XTAL2引脚产生幅度为3V左右的正弦波时钟信号,其振荡频率主要由石英晶振的频率确定。
电路中两个电容C1,C2的作用有两个:
一是帮助振荡器起振;二是对振荡器的频率进行微调。
C1,C2的典型值为20PF。
单片机在工作时,由内部振荡器产生或由外直接输入的送至内部控制逻辑单元的时钟信号的周期称为时钟周期。
其大小是时钟信号频率的倒数,常用fosc表示。
图中时钟频率为12MHz,即fosc=12MHz,则时钟周期为1/12µs。
2.4复位电路设计
单片机的第9脚RST为硬件复位端,只要将该端持续4个机器周期的高电平即可实现复位,复位后单片机的各状态都恢复到初始化状态,其电路图如图2.3所示:
图2.3复位电路
值得注意的是,在设计当中使用到了硬件复位和软件复位两种功能,由上面的硬件复位后的各状态可知寄存器及存储器的值都恢复到了初始值,而前面的功能介绍中提到了倒计时时间的记忆功能,该功能的实现的前提条件就是不能对单片机进行硬件复位,所以设定了软复位功能。
软复位实际上就是当程序执行完毕之后,将程序指针通过一条跳转指令让它跳转到程序执行的起始地址。
2.5蜂鸣器电路的设计
我们知道,声音的频谱范围约在几十到几千赫兹,若能利用程序来控制单片机某个口线的“高”电平或低电平,则在该口线上就能产生一定频率的矩形波,接上喇叭就能发出一定频率的声音,若再利用延时程序控制“高”“低”电平的持续时间,就能改变输出频率,从而改变音调,使喇叭发出不同的声音。
本文设计如图2.4所示。
图中单片机的14脚输出具有复合功能,此处用到了单片机17脚的IO端口功能,单片机通过内部定时器的操作实现交替变换的波形输出驱动扬声器发声。
图2.4蜂鸣器电路原理图
3系统软件设计及调试
3.1主程序系统结构
软件任务分析和硬件电路设计结合进行,哪些功能由硬件完成,哪些任务由软件完成,在硬件电路设计基本定型后,也就基本上决定下来了[9]。
软件任务分析环节是为软件设计做一个总体规划。
从软件的功能来看可分为两大类:
一类是执行软件,它能完成各种实质性的功能,如测量,计算,显示,打印,输出控制和通信等,另一类是监控软件,它是专门用来协调各执行模块和操作者的关系,在系统软件中充当组织调度角色的软件。
这两类软件的设计方法各有特色,执行软件的设计偏重算法效率,与硬件关系密切,千变万化。
软件任务分析时,应将各执行模块一一列出,并为每一个执行模块进行功能定义和接口定义(输入输出定义)。
在各执行模块进行定义时,将要牵扯到的数据结构和数据类型问题也一并规划好。
各执行模块规划好后,就可以监控程序了。
首先根据系统功能和键盘设置选择一种最适合的监控程序结构。
相对来讲,执行模块任务明确单纯,比较容易编程,而监控程序较易出问题。
这如同当一名操作工人比较容易,而当一个厂长就比较难了。
在如见分析中应把住程序系统结构作为主要的系统结构,如下是主程序系统结构图和其软件程序
图3.1软件系统结构图
主程序:
main()
{unsignedcharflag=0;
light=0xc0;
Timer1_Init();
while
(1)
{GInt_Init();
P1=light;
display(6,second);
if(second==0)
{second=0x09;
TR1=0;
light=0x7f;
}
flag=keyboard();
if(light==0x3f)
{switch(flag)
{case1:
light=0xfd,TR1=1;break;
case2:
light=0xf7,TR1=1;break;
case3:
light=0xdf,TR1=1;break;
default:
light=0x3f;}
}
if(light==0x7f)
{switch(flag)
{case1:
light=0xfe;break;
case2:
light=0xfb;break;
case3:
light=0xef;break;
default:
light=0x7f;}
}
}
}
3.2总程序系统结构
在本设计中包括了以下主要的程序:
主程序,查询程序,非法抢答程序,抢答时间调整程序,回答时间调整程序,倒计时程序,正常抢答处理程序,犯规处理程序,显示及发声程序。
如下是总程序框图和其软件程序
总程序
OKEQU20H;抢答开始标志位
RINGEQU22H;响铃标志位
ORG0000H
AJMPMAIN
ORG0003H
AJMPINT0SUB
ORG000BH
AJMPT0INT
ORG0013H
AJMPINT1SUB
ORG001BH
AJMPT1INT
ORG0040H
MAIN:
MOVR1,#30;初设抢答时间为30s
MOVR2,#60;初设答题时间为60s
MOVTMOD,#11H;设置未定时器/模式1
MOVTH0,#0F0H
MOVTL0,#0FFH;越高发声频率越高,越尖
MOVTH1,#3CH
MOVTL1,#0B0H;50ms为一次溢出中断
SETBEA
SETBET0
SETBET1
SETBEX0
SETBEX1;允许四个中断,T0/T1/INT0/INT1
CLROK
CLRRING
SETBTR1
SETBTR0;一开始就运行定时器,以开始显示FFF.如果想重新计数,
BARK:
SETBRING
ACALLDELAY1
ACALLDELAY1
CLRRING;按键发声
RET
;=====TO溢出中断(响铃程序)=====
T0INT:
MOVTH0,#0ECH
MOVTL0,#0FFH
JNBRING,OUT;
CPLP3.6;RING标志位为1时候P3.6口不短取反使喇叭发出一定频率的声音
OUT:
RETI
;=====T1溢出中断(计时程序)=====
T1INT:
MOVTH1,#3CH
MOVTL1,#0B0H
INCR0
RETI
END;程序结束
总程序框图
图3.2总程序设计流程图
3.3系统部分功能仿真
主持人按下开始抢答键后,进入抢答30S倒计时,显示仿真电路如下图3.3:
图3.3
总结与体会
作为一名电气自动化专业的大二学生,我觉得做单片机课程设计是十分有意义的,而且是十分必要的。
在已度过的大学时间里,我们大多数接触的是专业课。
我们在课堂上掌握的仅仅是专业课的理论知识,如何去锻炼我们的实践能力?
如何把我们所学的专业基础课理论知识运用到实践中去呢?
我想做类似的课程设计就为我们提供了良好的实践平台。
这次单片机课程设计我们历时两个星期,在我们班里算是倒数几组完成的吧,但经过这两个星期的实践和体验下来,我们又怎么会去在乎那个先后问题呢,因为对我来说学到的不仅是那些知识,更多的是团队和合作。
现在想来,也许学校安排的课程设计有着它更深层的意义吧,它不仅仅让我们综合那些理论知识来运用到设计和创新,还让我们知道了一个团队凝聚在一起时所能发挥出的巨大潜能!
单片机作为我们的主要专业课之一,虽然在大二开学初我对这门课并没有什么兴趣,觉得那些程序枯燥乏味,但在这次课程设计后我发现自己在一点一滴的努力中对单片机的兴趣也在逐渐增加。
两个星期前我们几个人还在为到底选那个课题而发生分歧,最后还是在老师的耐心分析和指导下完成了课题的选定,但是随之而来的问题却远比我们想想的要困难的多没想到这项看起来不需要多少技术的工作却是非常需要耐心和精力在两个星期后的今天我已明白课程设计对我来说的意义,它不仅仅是让我们把所学的理论知识与实践相结合起来,提高自己的实际动手能力和独立思考的能力,更重要的是同学间的团结,虽然我们这次花去的时间比别人多,但我相信我们得到的也会更多!
参考文献
[1]于殿泓,王新年.单片机原理与程序设计实验教程[M].西安:
西安电子科技大学出版社,2007,8.
[2]赵文博,刘文涛.单片机语言C51程序设计[M].北京:
人民邮电出版社,2005,10.
[3]周航慈.单片机应用程序设计技术[M].北京:
北京航空航天大学出版社,2011,2.
[4]李朝青.单片机原理及接口技术[M].北京:
北京航空航天大学出版社,2005,10.
[5]孙育才.MCS-51系列单片微型计算机及其应用[M].东南大学出版社,2004,6.
[6]沈红卫.单片机应用系统设计实力与分析[M].北京:
北京航空航天大学出版社,2003.
[7]徐爱钧,彭秀华.单片机高级语言C51应用程序设计[M].北京航空航天大学出版社,2006.
[8]曾一江.单片微机原理与接口技术[M].北京:
科技出版社,2009,12.
[9]康华光.电子技术基础(模拟部分)[M].北京:
高等教育出版社,2004,4.
[10]程相波,卫安军.基于MCS-51单片机的八路抢答器设计方法研究[J].北京工业职业技术学院学报,2007,
(2).
[11]林凌,李刚,丁茹,李小霞.新型单片机接口器件与技术[M].西安:
西安电子科技大学出版社,2005年.
[12]马轲瀛.八路数字抢答器系统[J].华商,2007,(23).
[13]高伟.AT89单片机原理及应用[M].北京:
国防工业出版社,2008年.
[14]蔡朝阳.单片机控制实习与专题制作[M].北京:
北京航空航天大学出版社,2006年.
[15]杨凌霄.微型计算机原理及应用[M].江苏:
中国矿业大学出版社,2004年.
[16]丁建伟.抢答器电路设计[J].兰州工业高等专科学校学报,2008,(04).
指导教师评语:
成绩:
指导教师签字:
年月日
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 三路抢答器 副本 副本1 抢答