课设报告 抢答器 6 11Word格式.docx
- 文档编号:16633399
- 上传时间:2022-11-24
- 格式:DOCX
- 页数:15
- 大小:137.43KB
课设报告 抢答器 6 11Word格式.docx
《课设报告 抢答器 6 11Word格式.docx》由会员分享,可在线阅读,更多相关《课设报告 抢答器 6 11Word格式.docx(15页珍藏版)》请在冰豆网上搜索。
作为现在工科的大学生,对一这一简单耐用运用非常广泛的设备,我们有必要好好学习并全面的加深对它原理的理解和对它的认识与运用。
2方案选择和论证
2.1项目要求:
基于AT89C51单片机设计制作一个抢答器。
晶振采用12MHZ。
具体设计要求如下:
1.设计一个智力竞赛抢答器,可同时供八名学生或八个代表队参加比赛,编号为1、2、3、4、5、6、7、8,可用八个按钮实现。
2.给节目主持人设置一个控制开关,用来控制系统的清零和抢答的结束。
3.抢答器具有数据所存功能、显示功能和声音提示功能。
抢答开始后,若有选手按动抢答按钮,编号立即锁存,并在LED数码管上显示选手的编号。
同时,灯亮且伴随声音提示。
此外,要封锁输入电路,禁止其他选手抢答,最先抢答选手的编号一直保持到主持人将系统清零。
2.2抢答器显示模块
2.2.1显示器件比较
在抢答器的设计中,对于选手编号的显示,我们考虑有以下两种方案:
方案一:
使用液晶屏显示。
由于只需要显示选手编号,信息量比较少,且由于液晶是以点阵的模式显示各种符号,需要利用控制芯片创建字符库,编程工作量大,控制器的资源占用较多,其成本也偏高。
在使用时,不能有静电干扰,否则易烧坏液晶显示芯片,不易维护。
方案二:
使用传统的数码管显示。
数码管具有:
低能耗、低损耗、低压、寿命长、耐老化、防晒、防潮、防火、防高(低)温,对外界环境要求低,易于维护,同时其精度高,称量快,精确可靠,操作简单。
数码显示是采用BCD编码显示数字,程序编译容易,资源占用较少。
基于以上分析拟订方案二。
2.2.2显示方法比较
点亮显示器分为静态和动态显示两种方法:
方法一:
静态显示,就是当显示器显示某一字符时,相应的发光二极管恒定的导通或是截止。
例如,其段数码管的a、b、c、d、e、f、导通,g截止,则显示0.这对这种显示方式每一位都要有一个8位输出口控制,所占硬件较多,一般用于显示位数较少(很少)的场合。
当位数较多时,用静态显示所需的I/O过多,一般采用动态显示方法。
方法二:
动态显示,就是逐位地轮流点亮各位显示器(扫描),对于每一位显示器而言,每个一段时间点亮一次。
显示器的点亮既与点亮时的导通电流有关,也与点亮时间和间隔时间比例有关。
调整电流和时间参数,可是实现亮度较高、较为稳定的显示,同时可减少工作电流。
对于共阳极数码管,当a、b、c、d、e、f、g、h端接低电平时,COM位高电平,数码管各段全部点亮。
例如,想让数码管显示“1”,就必须使数码管的b、
c段点亮,其它段熄灭;
所以使b、c段为低电平,其它各引脚均为高电平。
在设计电路时,可将这几位分别接到单片机的引脚上,还要加上限流电阻,这样就可
由程序控制数码管的工作情况了。
但是如果用一个端口驱动一个数码管,四位数码管就需要四个空闲端口,而在许多系统中并无四个端口可用。
此外,使用四个端口往往使得每一个数字都需要独立驱动(缓冲)电路和排阻,这将大大增加系统的成本。
最常见的解决方案是采用多路复用显示。
这是指对于每一个显示只驱动1/4时间。
只要在20Hz-50Hz之间循环所有显示,由于人眼存在视觉残留,在这样的显示方式下,数码管看起来时同时点亮的。
在这次课程设计中根据实际需要采用了七段数码管共阴极和静态显示方式。
2.3控制器模块
控制器主要用于各模块控制对显示、抢答、发声等。
控制器的选择有以下两钟方案:
采用FPGA(现场可编程门列阵)作为系统的控制器。
FPGA可以实现各种复杂的逻辑功能,规模大,密度高,它将所有器件集成在一块芯片上,减小了体积,提高了稳定性,并且可以应用EDA软件仿真、调试,易于进行功能扩展。
FPGA采用并行的输入输出方式,提高了系统的处理速度,适合作为大规模实时系统的控制核心。
但由于本设计对数据处理的速度要求不高,FPGA的高速处理的优势得不到充分体现,并且由于其集成度高,使其成本偏高,同时由于芯片的引脚较多,实物硬件电路板布线复杂,加重了电路设计和实际焊接的工作。
采用ATMEL公司的AT89C51作为系统控制器的CPU方案。
单片机AT89C51,由CPU、4KB的FPEROM,128B的RAM,两个16位的定时/计数器T0和T1,4个8位的I/O端P0、P1、P2、P3等组成。
片内带有4KB的Flash存储器,并允许在系统内改写或用编程器编程。
其算术运算功能强,软件编程灵活、自由度大,可以用软件编程实现各种算法和逻辑控制,并且由于其功耗低、体积小、技术成熟和成本低等优点,使其在各个领域应用广泛。
同时,单片机将很多任务交给了软件编程去实现,大大简化了外围硬件电路,使外围电路的实现简单方便[1]。
2.4电源模块
系统需要多个电源,AT89C51使用5V稳压电源,七段数码管供电电压为5V。
给出以下两个方案。
方案1:
采用升压型稳压电路。
用两片MC34063芯片分别将3V的电池电压进行直流崭波调压,得到5V稳压输出。
只需使用两节电池,既节省了电池,又减小系统体积重量但该电路供电电流小,供电时间短,无法使相对庞大的系统稳定运作。
方案2:
由于所做的设计不需要很高的精度要求,结合这个电源分析只要给系统5V的电压基本能输出显示和运用抢答,故只需利用5V电源便可使整个电路工作。
该方法方便简单,节省材料。
综上所述,选择方案二。
3系统设计
3.1硬件设计
3.1.1框图设计
基于AT89C51单片机抢答器由控制核心AT89C51单片机、复位电路、电源电路、选手按键、主持人按键、声音提示和数码显示等部分组成。
系统框图如图1所示:
图1系统原理框图
3.1.2系统原理图设计
根据上述分析,设计出基于AT89C51单片机抢答器,其工作原理为:
电源电路为单片机以及其他模块提供标准5v电源,晶振模块为单片机提供时钟标准,使系统各部分能协调工作。
复位电路模块为单片机系统提供复位功能,单片机作为主控制器,根据输入信号。
对系统进行相应的控制。
选手按下相应的按键,蜂鸣器发出提示音,直到按键释放。
数码管显示最先按下按键选手的编号。
选手回答完毕,主持人按下准备按钮,数码管清零,蜂鸣器停止发声,可以进入下一题的抢答。
电路原理图如图2所示。
图2系统电路原理图
如图2,P3.0-P3.7为八路抢答输入,AT89C51的23引脚接主持人按钮控制结束。
数码管段选P1口,扬声器输出为P2.2口。
3.1.3模块设计
3.1.3.1晶振电路
图3晶振电路
一般选用石英晶体振荡器。
此电路在加电大约延迟10ms后振荡器起振,在XTAL2引脚产生幅度为5v左右的正弦波时钟信号,其振荡频率主要由石英晶振的频率确定。
电路中两个电容C1,C2的作用有两个:
一是帮助振荡器起振;
二是对振荡器的频率进行微调。
C1,C2的典型值为30PF。
晶振的频率为12MHZ,提供89C51的时钟脉冲使89C51工作。
3.1.3.2复位电路
单片机的第9脚RST为硬件复位端,只要将该端持续4个机器周期的高电平即可实现复位,复位后单片机的各状态都恢复到初始化状态,其电路图如图4所示:
图4复位电路
在方案中由硬件复位可使寄存器及存储器的值都恢复到初始值,即复位电路使单片机初始化,单片机重新开始执行程序。
当复位开关按下RST由低电平变为高电平,则程序从头开始执行,在此次课程设计电路中当一个问题结束主持人后按下复位开关后进行下一题的准备。
3.1.3.3显示电路
显示电路使用了七段数码管7SEG-MPX1-CC,它是共阴极的,由高电平点亮。
此电路包括显示和驱动,显示采用数码管,驱动用P1口,正常抢答者编号,数码管采用静态显示。
驱动电路P1口,查询显示程序利用P0口做段选码口输出P2低3位做位选码输出,当为低电平则能驱动数码管使其显示数字。
在+5V电压下接10kΩ的电阻,保证正常压降。
图5阴极七段数码管
3.1.3.4按钮电路
图6按钮电路
该电路由八路开关所组成,每一竞赛者与一组开关相对应,选手的编号是1到8,抢答器的输入按钮使用常开开关,
这些常开开关组成了抢答按键,硬件电路简单,在程序设计上也不复杂,只要在程序中消除在按键过程中产生的“毛刺”
现象就可以了。
这里采用最常用的方法即延时法,其的原理为:
因为“毛刺”脉冲一般持续时间短,约为几ms,而按键的时间一般远远大于这个时间,所以当单片机检测到有按键动静后再延时一段时间(这里取10ms)后再判断此电平是否保持原状态,如果是则为有效按键,否则无效。
3.1.3.5发声电路
这里能利用程序来控制单片机P2.2口线反复输出高电平或低电平,接上扬声器就能发出一定频率的声音,再利用延时程序控制“高”“低”电平的持续时间,使扬声器发出声音。
发声电路如图7所示:
图7发声电路
3.2软件设计
3.2.1程序流程图
上电复位后,数码管清零,P2。
0置高电平,蜂鸣器不发声。
循环扫描p3口,看是否有按键按下,如果有按键按下,则转入判断是哪个选手按下按键,并在数码管上显示选手号;
p2.0置低电平,蜂鸣器发声,主持人按键按下,系统重新进入主程序,继续进行下一轮抢答[2]。
程序流程图如下图所示:
图8系统程序流程图
3.2.2程序清单:
基于AT89C51单片机抢答器的设计程序,清单如下:
ORG000
JMPBEGIN
TABLE:
;
共阴极数码管显示代码表
DB3FH,06H,5BH,4FH,66H;
01234
DB6DH,7DH,07H,7FH;
6789
DELAY:
MOVR5,#20;
延时20*20ms子程序
LOOP4:
MOVR6,#50
LOOP5:
MOVR7,#100
DJNZR7,$
DJNZR6,LOOP5
DJNZR5,LOOP4
RET
BEGIN:
MOVP2,#0FFH;
p2口置高电平,准备接收信号
MOVR4,#0
MOVA,R4;
R4位标志值送A寄存器
AGAIN:
MOVDPTR,#TABLE
MOVCA,@A+DPTR
MOVP1,A
LOOP1:
MOVA,P3;
接收P3口的抢答信号
CPLA
JZLOOP1
LOOP2:
RRCA;
有抢答信号则逐次移动判断是哪一位抢答
INCR4
JNCLOOP2
MOVA,R4
MOVCA,@A+DPTR;
找到相应位的显示代码
LOOP3:
JNBP2.2,BEGIN;
若主持人按了复位信号键,则转向程序复位
CPLP2.0;
若没有按复位信号键,则通过P2.2口给出高低
信号驱动蜂鸣器
LCALLDELAY;
调用延时程序
SJMPLOOP3;
P2.2口反复间隔0.4s变化,驱动蜂鸣器
END
4系统仿真及调试
系统调试包括硬件调试和软件调试,而且两者是密不可分的。
我们设计好的硬件电路和软件程序,只有经过联合调试,才能验证其正确性;
软硬件的配合情况以及是否达到设计任务的要求,也只有经过调试,才能发现问题并加以解决、完善,最终开发成实用产品。
4.1硬件调试
硬件调试分单元电路调试和联机调试,单元电路试验在硬件电路设计时已经进行,这里的调试只是将其制成印刷电路板后试验电路是否正确,并排除一些加工工艺性错误(如错线、开路、短路等)。
这种调试可单独模拟进行,也可通过开发装置由软件配合进行,硬件联机调试则必须在系统软件的配合下进行。
硬件的调试主要是把电路各种参数调整到符合设计要求,先排除硬件电路故障,包括设计性错误和工艺性故障。
一般原则是先静态后动态。
利用万用表或逻辑测试仪器,检查电路中的各器件及引脚是否连接正确,是否有短路故障。
4.2软件调试
软件调试一般包括分块调试和联机调试两个阶段。
软件调试时利用仿真工具进行在线仿真调试,除发现和解决程序错误外,也可以发现硬件故障。
程序的分块调试一般在单片机开发装置上进行,可根据所调程序功能块的入口参量初值编制一个特殊的程序段,并连同被调程序功能块一起在开发装置上运行;
也可配合对应硬件电路单独运行某程序功能块,然后检查是否正确,如果执行结果与预想的不一致,可以通过单步运行或设置断点的方法,查出原因并加以改正,直到运行结果正确为止。
程序联机调试就是将已调试好的各程序功能块按总体结构联成一个完整程序,在所研制的硬件电路上运行。
从而试验程序整体运行的完整性、正确性和与硬件电路的配合情况。
在联调中可能会有某些支路上的程序、功能块因受条件制约而得不到相应的输入参数,这时,调试人员应创造条件进行模拟调试。
在联调中如发现硬件问题也应及时修正,直到单片机系统的软件、硬件全部调试成功为止。
系统调试完成后,还要进行一段时间的试运行,从而检验系统的稳定性和抗干扰能力,验证系统功能是否达到设计要求,是否达到预期的效果。
本设计用Keil软件进行程序的编写和基本调试,进而结合Proteus软件进行仿真调试。
通过对出错的修改,进一步完善程序和仿真电路,达到预期效果,效果图如附录。
4.3调试中的问题
1.数码管显示问题:
本次设计的最终方案是采用数码管显示屏实现显示功能,最初数码管显示不正常,出现闪烁现象。
通过调试发现这是由于延时时间选择不当会使人眼产生视觉暂留效果,每一次显示时都必须加入适当的时间延时。
由于一开始所选用的延时时间太短因此出现闪烁现象,在增加显示延时之后,数码管显示正常。
2.蜂鸣器异常启动问题:
蜂鸣器的启动/关闭是通过单片机输出的控制信号来实现的,当前时间与闹钟设置时间比较吻合时,单片机将对闹铃控制口执行取反命令,从而启动蜂鸣器发声。
一开始编写程序时,没有对控制口的最初状态作正确设置,由于系统开机复位后,闹铃控制口处于高电平状态,因此出现一开机蜂鸣器就处于启动状态的情况。
通过在主程序最开始加入对闹铃控制口取零命令后,蜂鸣器启动/关闭控制恢复正常。
3.器件选择错误问题:
我们一开始调试时,LED数码管不亮,后经过仔细检查,发现是由于器件选择错误,应选择共阴极数码管;
在选择电解电容时,刚开始没有注意极性问题,以致选错器件,后改正,调试运行情况良好。
4.生成pcb板时的问题:
元件自动导入后,用工具栏中的自动连线方式生成完整版图的过程中,由于文件名是中文导致无法生成,后改为英文符号存放,问题解决。
5结论
本课程设计的是一个基于单片机AT89C51为控制核心的简易八路抢答器。
其电源电路为单片机以及其他模块提供标准5v电源,晶振模块为单片机提供时钟标准,使系统各部分能协调工作。
复位电路模块为单片机系统提供复位功能,单片机作为主控制器,根据输入信号对系统进行相应的控制。
在这次课程设计期间,我们充分利用所学的单片机技术、数字电子、模拟电子、制作电路板等相关知识连成一串,并理论联系实践。
课设初期,我们通过上网查资料和搜集有关的文献,最终确定课题为简易8路抢答器。
之后我们认真研究设计要求,运用所学知识并结合相关资料设计出硬件原理图、编写出程序。
接着在系统学习了Proteus、Keil软件的基础上,我们小组一起讨论绘制出电路原理图及PCB板图。
最后,我们根据单片机课程设计指导写作规范认真完成了此次课程设计报告的撰写。
课设过程中,我们培养了自学能力和动手能力,由原先的被动的接受知识转换为主动的寻求知识,这可以说是学习方法上的一个很大的突破。
在以往的传统的学习模式下,我们可能会记住很多的书本知识,但是通过这次课程设计,我们学会了如何将学到的知识转化为自己的东西,学会了怎么更好的处理知识和实践相结合的问题。
把握重点、攻克难关,学到用到、活学活用。
在设计过程中由于时间仓促有很多地方难免存在不足之处,硬件设计已经完成,在软件设计中有些功能还尚未开发出来。
但在以后的工作中,我们会严格要求自己,追求完美。
6参考文献
[1]郭文川.单片机原理与接口技术.中国农业出版社.
[2]杨居义.单片机课程设计指导.清华大学出版社.
[3]朱清慧,张凤蕊,翟天嵩,王志奎.proteus教程电子线路设计制版与仿真.清华大学出版社.
[4][5]
7致谢
我们的课程设计能够顺利的完成,是导师老师悉心指导的结果。
在开始的时候,王老师给了我们整个制作的大概框架和思路,引导我们该如何去做。
在我们制作的过程中,每次遇到不懂或不会的地方,王老师都会给我们一一的讲解,使我们每次都有一种茅塞顿开的感觉。
王老师以其严谨求实的治学态度,高度的敬业精神,兢兢业业的工作作风和大胆创新的进取精神对我们产生重要的影响。
在此我们向王老师表示衷心的感谢。
这次的课程设计我们可以顺利如期的完成,使我们有了很大的信心,让我们了解专业知识的同时也对本专业的发展前景充满信心。
课程设计除了针对我们理论课程掌握的同时,也是对我们大学生进行综合性实践训练的过程,是对整个专业知识的综合,可以使我们的理论知识与实践紧密相结合,锻炼我们独立思考和解决实际问题的能力。
在这次课程设计的过程中,我们学到许多以前在课本和课堂上无法学到的知识及技术能力,特别是在查找资料的过程中既积累了知识也体会到了许多的乐趣。
在设计的过程中,自己能在指导老师的提点下独立的分析问题、找出问题并解决问题,同时能够更加用心的思考每个细节,把专业知识和实际操作更好的结合起来,使自己能够在每天的学习过程中都有新的收获。
在本次设计中取得的点滴进步,都来自于各方面的帮助、指导,感谢大家!
8附录
附录1系统仿真电路图
附录2PCB板图
附录33D仿真图
元件
名称
型号
数量/个
用途
单片机
AT89C51
1
控制
核心
按键
8
选手
输入
晶振
12MHz
电路
主持人
电容
30Pf/10v
三极管
9015
蜂鸣器
及其驱
动电路
电解
10uF/10v
复位
电阻
500Ω
10kΩ
数码管
1位
共阴
显示
电源
10v/0.5A
集成块
74LS245
驱动
附录4原件清单
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 课设报告 抢答器 11 报告 抢答