学位论文-—基于mcs51单片机控制的八路答器设计.doc
《学位论文-—基于mcs51单片机控制的八路答器设计.doc》由会员分享,可在线阅读,更多相关《学位论文-—基于mcs51单片机控制的八路答器设计.doc(25页珍藏版)》请在咨信网上搜索。
1、 摘 要 抢答器是一种常见的电子产品,尤其是在各类智力竞猜中,为了实现选手的公平性,性能优良的抢答器往往更能得到各单位的青睐。这里通过两种设计方案的对比,最终选定了用单片机实现抢答器电路。由于单片机具有可编程定时器和中断设备,便于实现编程和时间的精确控制。所用方案电路结构简单,易于实现,它用4个七段数码管来显示,且具有简单精准的报警电路。所选方案的一个很重要的特点在于具有灵活性,主持人可以根据题目难易进行时间设定,这样进一步保证了公平性。由于它具有成本低廉,结构简单,且性能优良的诸多优点,必定会得到广泛的应用。关键词:抢答器 ,单片机 ,七段数码管,时间设定 目 录一 绪论11.1 课程设计任
2、务11.2 原理示意图1 1.3抢答器的程序流程2二 抢答器单元设计及其说明82.1主要芯片的介绍82.2程序流程图102.3 MAX7219122.3.1 MAX7219引脚说明122.3.2 基本的工作方法132.3.3 MAX7219初始化142.3.4 部分程序功能介绍142.4LCD简介162.4.1LCD和LED的区别162.4.3显示电路设计和LCD的引脚功能说明172.4.4液晶显示模块18三 设计总结 19四 参考文献20五 元件清单20一 绪论1.1 课程设计要求 (1) 抢答器同时为8组选手分别提供抢答按钮,按钮分别为PB1、PB2、PB3、PB4、PB5、PB6、PB7
3、、PB8; (2) 设置一个复位按钮PB9,实现系统电路的复位,由主持人控制; (3) 设置一个启动按钮PB10,由主持人控制;(4) 设置一个限时开关PB11,由主持人控制;(5) 当主持人打开启动开关PB10后,在设定时间T0 内,如果某一组抢先按下抢答按钮,则驱动音效电路发出声响,指示灯L1 亮,并且在七段LED显示出抢答成功的组号,此时电路实现互锁,其它组再按下抢答按钮为无效; (6) 如果在时间T0 内,无人应答,则驱动音效电路发出声响,指示灯L2 亮,表示抢答者均放弃该题; (7) 在抢答成功后,主持人打开限时开关PB11,启动定时器,显示倒计时时间,在设定的时间T1内回答有效,当
4、到达设定时间T1 时,驱动音效电路,指示灯L3 亮,表示答题时间到。1.2 原理示意图如图(1-1)所示为八路智力抢答器设计的物理模块划分如下:单片机抢答模块(八路输入)控制模块(主持人操作)显示模块(倒计时、选手号)语音提示模块 图1-1 设计物理框图通过主持人的相关操作(包括开始、停止、调时、锦囊使用等),以及选手的抢答,显示模块与语音模块应能迅速做出正确回应。如主持人按下开始,语音模块立刻给以语音提示,显示模块立刻显示抢答倒计时;当有选手抢答,显示模块应马上显示最先抢答的选手号,并进入答题倒计时 而这一切,都有赖于本设计的核心模块51单片机来控制。通过一系列的汇编程序,来控制、实现相应的
5、逻辑功能。本设计中大部分的较为复杂的逻辑控制,都是用相应的汇编程来控制实现的。根据相应的设计要求,对本设计可作如下分析:1、 由设计要求1,本设计应具有抢答时间调整和回答时间调整程序,并由相应引脚来控制:P3.2抢答时间调整,P3.3回答时间调整,P3.4为加1s,P3.5为减1s; 2、根据设计要求2,本设计应具有抢答、回答倒计时功能,即倒计时程序。通过查询开始键的状态来决定是否进入抢答倒计时,开始键按下后有人抢答便立即进入回答倒计时,倒计时小于5s时,调用发声程序;3、程序中应不断查询停止 键的状态,一旦其按下,应立即退出,并进入查询程序(用来查询开始键与八路抢答键的状态);4、 为使本设
6、计具有锦囊功能,在回答倒计时过程中,若按下开始键,回答倒计时重新开始。1.3 抢答器的程序流程本设计采用P3.2、P3.3分别接抢答时间调节和答题时间调节按钮,即通过外部中断0、外部中断1分别控制抢答、答题时间的调整。因此,设计的软件部分可分为工作模块、外部中断0模块、外部中断1模块。对流程图的分析,也分三部分来介绍。(1)工作时(非调节时间时)的流程平时正常工作时,程序的流程图绘制如图1-2:对工作流程图中的某些部分解释如下:初始化部分:包括对定时计数器的工作方式、初始化数值的设置,还包括对抢答时间与答题时间的预设,另外,还应对外部中断0、外部中断1进行开放。抢答倒计时、回答倒计时部分:由于
7、二者功能的相似性,本设计将二者在一个子程序倒计时程序中一起编写。犯规程序部分:包括对犯规选手号的显示、报警器的间断工作。另外,由于在设计要求主持人能随时对工作过程终止,因此,要不断查询停止键的状态,一旦按下,便回到初始化后的状态;在倒计时过程中还要不断将与5S比较,当小于5S时,还需调用发声程序;小于5S后, 又需要不断将与0较,当其等于零时,立即返回。图1-2 工作流程图(2)外部中断0(抢答时间调整)流程外部中断0(抢答时间调整)的流程图见图1-3:INT0中断Y显示当前抢答时间P3.4按下?P3.5按下?抢答时间加1sNYN结果为100s?结果置0N结果为0s?结果置100抢答时间减1s
8、YYN停止键按下?中断返回NY图1-3 INT0流程图一旦因P3.2对应键的按下,便进入INT0中断过程。通过不断对P3.4(加1s)和P3.5(减1s)进行不断的查询,来对抢答时间进行调整:发现P3.4按下,就对原抢答时间加1s, 发现P3.5下,就对原抢答时间减1s并调用显示程序。根据设计要求,当加至99s时,若再加1s,则时间变为0;当减至0s后,若再减一秒,时间变为99s。因此,流程中应该对当前时间于99s或0s比较,再作出相应处理。另外,在中断过程中还需要不时对停止按钮进行查询,一旦发现其按下,立即中断返回。由于本中断过程在返回前一直是循环执行的,因此,只需要在每次循环末查询一次即可
9、,如流程图所示(3)外部中断1(答题时间调整)流程外部中断1(答题时间调整)流程与外部中断1流程大同小异。其程序流程参见图1-4:与抢答时间调整类似,一旦因P3.3对应的按钮按下,便进入INT1中断过程。通过不断对P3.4(加1s)和P3.5(减1s)进行不断的查询,来对抢答时间进行调整:发现P3.4按下,就对原抢答时间加1s, 发现P3.5下,就对原抢答时间减1s并调用显示程序。当加至99s时,若再加1s,则时间变为0;当减至0s后,若再减一秒,时间变为99s。因此,流程中应该对当前时间于99s或0s比较,再作出相应处理。同上,在中断过程中,也还需要不时对停止按钮进行查询,一旦发现其按下,立
10、即中断返回。INT1中断Y显示当前答题时间P3.4按下?P3.5按下?答题时间加1sNYN结果为100s?结果置0N结果为0s?结果置100答题时间减1sYYN停止键按下?中断返回NY图1-4 INT1流程图二 抢答器单元设计及其说明2.1主要芯片的介绍 AT89SC52的引脚图如图2-1所示图2-1 AT89SC52芯片引脚图1) 主要性能本方案所使用的主要芯片是AT89SC52, 它与MCS-51单片机产品兼容 、8K字节在系统可编程Flash存储器、 1000次擦写周期、 全静态操作:0Hz33Hz 、 三级加密程序存储器 、 32个可编程I/O口线 、三个16位定时器/计数器 八个中断
11、源 、全双工UART串行通道、 低功耗空闲和掉电模式 、掉电后中断可唤醒 、看门狗定时器 、双数据指针 、掉电标识符 。2) 功能特性描述 At89sc52 是一种低功耗、高性能CMOS8位微控制器,具有 8K 在系统可编程Flash 存储器。使用Atmel 公司高密度非 易失性存储器技术制造,与工业80C51 产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于 常规编程器。在单芯片上,拥有灵巧的8 位CPU 和在系统 可编程Flash,使得AT89SC52为众多嵌入式控制应用系统提 供高灵活、超有效的解决方案。 AT89S52具有以下标准功能: 8k字节Flash,25
12、6字节RAM, 32 位I/O 口线,看门狗定时器,2 个数据指针,三个16 位 定时器/计数器,一个6向量2级中断结构,全双工串行口, 片内晶振及时钟电路。另外,AT89S52 可降至0Hz 静态逻 辑操作,支持2种软件可选择节电模式。空闲模式下,CPU 停止工作,允许RAM、定时器/计数器、串口、中断继续工 作。掉电保护方式下,RAM内容被保存,振荡器被冻结, 单片机一切工作停止,直到下一个中断或硬件复位为止。8 位微控制器 8K 字节在系统可编程 Flash AT89S52。3) P0、P1口介绍 P0 口:P0 口是一组8 位漏极开路型双向I/O 口, 也即地址/数据总线复用口。作为输
13、出口用时,每位能吸收电流的方式驱动8 个TTL逻辑门电路,对端口P0 写“1”时,可作为高阻抗输入端用。在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低8 位)和数据总线复用,在访问期间激活内部上拉电阻。在Flash 编程时,P0 口接收指令字节,而在程序校验时,输出指令字节,校验时,要求外接上拉电阻。 P1 口:P1 是一个带内部上拉电阻的8 位双向I/O 口, P1 的输出缓冲级可驱动(吸收或输出电流)4 个TTL 逻辑门电路。对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL
14、)。与AT89C51 不同之处是,P1.0 和P1.1 还可分别作为定时/计数器2 的外部计数输入(P1.0/T2)和输入(P1.1/T2EX),参见表2-1表2-1 P1.0 P2.0 引脚功能特性4) 本方案中用到的一些引脚介绍 XTAL1:振荡器反相放大器的及内部时钟发生器的输入端。 XTAL2:振荡器反相放大器的输出端。 特殊功能寄存器: 在AT89C52 片内存储器中,80H-FFH 共128 个单元为特殊功能寄存器(SFE)。 并非所有的地址都被定义,从80HFFH 共128 个字节只有一部分被定义,还有相当一部分没有定义。对没有定义的单元读写将是无效的,读出的数值将不确定,而写入
15、的数据也将丢失。不应将数据“1”写入未定义的单元,由于这些单元在将来的产品中可能赋予新的功能,在这种情况下,复位后这些单元数值总是“0”。 AT89C52除了与AT89C51所有的定时/计数器0 和定时/计数器1 外,还增加了一个定时/计数器2。定时/计数器2 的控制和状态位位于T2CON,T2MOD,寄存器对(RCAO2H、RCAP2L)是定时器2 在16 位捕获方式或16 位自动重装载方式下的捕获/自动重装载寄存器。2.2程序流程图 图2-2 程序流程图2.3 MAX72192.3.1 MAX7219引脚说明引脚说明见表2-2表2-2 MAX7219引脚说明引脚号名称功能说明1Din串行数
16、据输入端在CLK的上升沿数据被锁入芯片内部16位移位寄存器。2358.10.11DIG0DIG78位LED位选线,从共阴极LED中吸入电流。49GND地线(两个GND必须连在一起)。12Load锁入输入的数据在Load上升沿最后的16位串行数据被锁入。13CLK时钟输入,最高时钟频率为10MHZ,在CLK的上升沿数据被锁入内部移位寄存器,在CLK的下降沿,数据从Dout脚被输出。1417 2023SegASegG.DP7段驱动和小数点驱动18Iset该脚通过一个电阻与V+相连,设置峰值段电流。19V+电源电压,+5V。24Dout串行数据输出。输入到Din的数据在16.5个时钟周期后在Dout
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 学位 论文 基于 mcs51 单片机 控制 八路 设计
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【精***】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【精***】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。