基于单片机的抢答器设计报告(共24页).doc
《基于单片机的抢答器设计报告(共24页).doc》由会员分享,可在线阅读,更多相关《基于单片机的抢答器设计报告(共24页).doc(24页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上 湖南商学院单片机应用系统课程设计(实习)报告题目 基于单片机的抢答器设计 姓 名:胡飘学 号:专 业:电子信息工程班 级:电信1004班指导教师:肖婧职 称:实验师计算机与信息工程学院2013年6月课程设计(实习)评审表姓 名胡飘学 院计信学院学 号专业班级电信1004班题 目基于单片机的抢答器设计评审意见评审成绩指导教师签名职称评审时间 年 月 日课程设计(实习)作品验收表题目基于单片机的抢答器设计参与人员姓 名胡飘班 级电信1004班学 号设计任务与要求: 具有3路抢答输入(由独立按键实现),时间分辨率小于100ms。显示抢答剩余时间,初始为10秒。抢答成功,蜂
2、鸣器响,同时显示抢答成功的号码。作品完成情况: 上电显示10s,按开始键开始倒计时,若有按键显示时间和抢答者号码,同时蜂鸣器响,若倒计时为0,蜂鸣器响,按清除键则复位到10s。验收情况: 验收教师签名:_ 年 月 日注:1. 除“验收情况”栏外,其余各栏均由学生在作品验收前填写。2. “验收情况”栏由验收小组按实际验收的情况如实填写。目 录1 设计任务与要求1 2 系统功能描述13 系统总体设计14 系统详细设计34.1 主要电路设计34.1.1 输入模块设计34.1.2 单片机模块44.1.3 显示模块44.1.4 声音模块54.2 软件设计64.2.1 主程序设计64.2.2 定时器设计7
3、5 系统实现与测试75.1 Proteus软件75.2 安装和调试过程85.2.1 软硬件调试85.2.2 硬件安装86 课程设计总结106.1 心得体会10 6.2. 实践总结10参考文献11附录11专心-专注-专业基于单片机的抢答器设计1 设计任务与要求具有3路抢答输入(由独立按键实现),时间分辨率小于100ms。显示抢答剩余时间,初始为10秒。抢答成功,蜂鸣器响,同时显示抢答成功的号码。2 系统功能描述(1)具有3路抢答输入(由独立按键实现),时间分辨率小于100ms。(2)主持人按“开始”键,显示抢答剩余时间,初始为10秒。(3)抢答成功,蜂鸣器响,同时显示抢答成功的号码。(4)主持人
4、按“清除键”键,复位为初始10秒,进入准备状态。(5)若十秒倒计时时间到,则蜂鸣器响。3 系统总体设计抢答输入和控制输入共同控制单片机输出显示和蜂鸣器响,输出锁存控制输入的优先性。各模块如下:(1)输入模块:由独立按键实现抢答输入和“开始”“清除”控制输入。(2)单片机控制模块:采用AT89S51芯片控制输出。(3)输出锁存模块:采用74HC573芯片锁存数据。(4)显示输出模块:由四位共阳数码管输出显示倒计时和抢答者号码。(5)声音输出模块:由蜂鸣器的工作来控制声音。原理方框图如图1所示。显示输出声音输出输出锁存抢答输入模块控制输入模块单片机模块图1 原理方框图整体电路图如图2所示。图2 基
5、于单片机的抢答器系统整体电路图4 系统详细设计4.1 主要电路设计4.1.1 输入模块设计(1)抢答键输入模块抢答键输入电路图如图3所示。图3 抢答键输入电路图由3个独立按键表示1号,2号,3号抢答者,一端接地一端分别接接单片机的P1.0,P1.1,P1.2,如果按下,则相应I/O口变为低电平,从而控制单片机P1口。(2)“开始”“清除”控制键输入模块 “开始”“清除”控制键输入电路图如图4所示图4 “开始”“清除”控制键输入电路图由2个独立按键控制“开始”和“清除”,一端接地一端分别接接单片机的P3.6,P3.7,如果按下,则相应I/O口变为低电平,从而控制单片机P1口。4.1.2 单片机模
6、块单片机主要由程序设计和输入模块信号控制,用于对显示、声音等模块进行控制。单片机控制输出电路图如图5所示。接蜂鸣器接排阻和74HC753接数码管位选端图5 单片机控制输出电路图P0口连接有一个排阻,用作P0口的上拉电阻,保证P0口没有数据输出时候处于高电平状态。还接在74HC753芯片的D端,作为它的输入,锁存输出到数码管。P2口低四位接数码管未选端,P3.4接蜂鸣器。4.1.3 显示模块显示模块主要是显示抢答倒计时的时间,抢答者号码。数码管显示方法包括两种:一种是静态显示,一种是动态显示。其中静态显示的特点是显示稳定不闪烁,程序编写简单,但占用端口资源多;动态显示的特点是:显示稳定性没静态好
7、,程序编写复杂,但是相对静态显示而言占用端口资源少。在本设计中根据实际情况采用的是动态显示方法。4位七段数码管显示电路如图6所示。接74HC753即P0口接AT89S51的P2端口低四位图6 4位七段数码管显示电路图上图中数码管采用的是4位一体七段共阳数码管,其中AG段分别接到单片机的P0口,由单片机输出的P0口数据来决定段码值,位选码COM1, COM2,COM3,COM4分别接到单片机的P2.0,P2.1,P2.2 ,P2.3,由单片机来决定当前该显示的是哪一位。通过查表法,将其在数码管上显示出来,其中P0口为字型码输入端,P2口低4位为字选段输入段。在这里我们通过查表将字型码送给7段数码
8、管显示的数字。4.1.4 声音模块声音模块主要是单片机控制蜂鸣器发声。选取压电式无源蜂鸣器,声音的频谱范围约在几十到几千赫兹,编写程序控制单片机P3.4口的“高”“低”电平转换频率,产生一定频率的巨型波,接上蜂鸣器就能发出一定频率的声音,若再利用延时程序控制“高”“低”电平的持续时间,就能改变输出频率,从而改变音调,使蜂鸣器发出不同的声音。单片机控制蜂鸣器电路图如图7所示。图7 单片机控制蜂鸣器电路图单片机通过内部定时器的操作实现交替变换的波形输出驱动扬声器发声。4.2 软件设计4.2.1 主程序设计一上电数码管显示100,表示初始时间为10s,0表示没有抢答,先扫描“开始”“清除”键,判断“
9、开始”键是否按下,若按下,则开始倒计时,并扫描抢答键,若有抢答键按下,则显示抢答者号码和抢答的时间,判断倒计时是否为0,若是则蜂鸣器响。程序流程图如图8所示。开始扫描开始键和清除键蜂鸣器响,复位开始键按下?Y显示倒计时,扫描抢答键倒计时为0吗?YNN有抢答键按下吗Y显示抢答者号码,蜂鸣器响N清除键按下?Y复位结束图8 程序流程图4.2.2 定时器设计采用定时器/计数器T0的方式1定时,定时时间为50ms,对应的十进制数的初始值为15536,因使用的时钟为12MHz,所以定时的时间为1us*(65536-15536)=1us*50000=50ms。要想定时1s,需要20次中断,因此程序中定义了中
10、断次数单元count,来对中断次数进行计数。要使最小分辨率为50ms,在定时器计时一次即50ms时,对键盘进行一次扫描实现。因为采用74HC753芯片,因此程序变得简单,只需将秒单元进行“second / 10”运算,即可得到秒的十位的BCD码,秒的个位BCD码只需取余数“second % 10”运算就可得到,并都送P0口经锁存器利用动态方式显示。5 系统实现与测试5.1 Proteus 软件Proteus软件是由英国Labcenter Electronics公司于1989年推出的EDA工具软件,Proteus软件不仅具有原理布图,PCB自动制版或人工布线及互动电路仿真的功能,针对微处理器的应
11、用,还可以直接在基于原理图的虚拟原型上编程,并实现软件源码级的实时调试,如有显示及输出, 还能看到运行后输入输出的效果,配合系统配置的虚拟仪器如示波器,逻辑分析仪等,为单片机系统的虚拟仿真提供了功能强大的软硬件调试手段。Proteus软件的特点:(1)除了既可以仿真模拟电路又可仿真数字电路以及数字、模拟混合电路外,其独特是能够仿真各种单片机及嵌入式处理器。(2)具有各种仿真仪器仪表工具,如示波器、逻辑分析仪、各种信号发生器、计数器、电压源、电压表、电流表、虚拟终端等,同一种仪器仪表可在同一电路中随意调动。(3)可以进行软、硬件结合的仿真系统,且仿真是交互的、可视化的。5.2 安装和调试过程5.
12、2.1 软件调试利用Keil uVision4软件进行程序编写,编译,调试,生成.hex文件,利用Proteus进行电路原理图描绘,然后把.hex文件载入AT89S51芯片中,再仿真,通过功能对照,来检查修改程序,一步步使仿真与实现功能相近。一开始蜂鸣器怎么的都不响,通过查资料请教别人,最后发现是因为蜂鸣器的一次高低电平变换的程序没有循环,所以没有维持一定时间让它工作,通过在蜂鸣器的子程序中加入一个100次的循环,并是高低电平之间延时1ms发现蜂鸣器的工作是最合理的。后来又发现按下抢答键,倒计时不停止,经过很多次试验之后,发现是应该在判断抢答键是否按下的肯定条件下是定时器的使能标示位置0。当主
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 单片机 抢答 设计 报告 24
限制150内