ImageVerifierCode 换一换
格式:DOCX , 页数:18 ,大小:396.58KB ,
资源ID:17554570      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/17554570.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(篮球记分器单片机课程设计Word文档下载推荐.docx)为本站会员(b****4)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

篮球记分器单片机课程设计Word文档下载推荐.docx

1、第3章 硬件设计3.1 AT89C51的介绍AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROMFalsh Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器,俗称单片机。AT89C2051是一种带2K字节闪烁可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除100次。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89C2051是它的

2、一种精简版本。AT89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。3.2 复位电路为确保微机系统中电路稳定可靠工作,复位电路是必不可少的一部分,复位电路的第一功能是上电复位。一般微机电路正常工作需要供电电源为5V5%,即4.755.25V。由于微机电路是时序数字电路,它需要稳定的时钟信号,因此在电源上电时,只有当VCC超过4.75V低于5.25V以及晶体振荡器稳定工作时,复位信号才被撤除,微机电路开始正常工作。目前为止,单片机复位电路主要有四种类型:(1)微分型复位电路;(2)积分型复位电路;(3)比较器型复位电路;(4)看门狗型复位电路现在详细介绍看门狗复位电路:看门狗型复位

3、电路主要利用CPU正常工作时,定时复位计数器,使得计数器的值不超过某一值;当CPU不能正常工作时,由于计数器不能被复位,因此其计数会超过某一值,从而产生复位脉冲,使得CPU恢复正常工作状态。典型应用的Watchdog复位电路如图3-1所示。图3-1 看门狗型复位电路此复位电路的可靠性主要取决于软件设计,即将定时向复位电路发出脉冲的程序放在何处。一般设计,将此段程序放在定时器中断服务子程序中。然而,有时这种设计仍然会引起程序走飞或工作不正常3。原因主要是:当程序“走飞”发生时定时器初始化以及开中断之后的话,这种“走飞”情况就有可能不能由Watchdog复位电路校正回来。因为定时器中断一真在产生,

4、即使程序不正常,Watchdog也能被正常复位。为此提出定时器加预设的设计方法。即在初始化时压入堆栈一个地址,在此地址内执行的是一条关中断和一条死循环语句。在所有不被程序代码占用的地址尽可能地用子程序返回指令RET代替。这样,当程序走飞后,其进入陷阱的可能性将大大增加。而一旦进入陷阱,定时器停止工作并且关闭中断,从而使Watchdog复位电路会产生一个复位脉冲将CPU复位。当然这种技术用于实时性较强的控制或处理软件中有一定的困难。3.3 键盘控制电路在键盘中按键数量较多时,为了减少I/O口的占用,通常将按键排列成矩阵形式。在矩阵式键盘中,每条水平线和垂直线在交叉处不直接连通,而是通过一个按键加

5、以连接。这样,一个端口(如P1口)就可以构成4*4=16个按键,比之直接将端口线用于键盘多出了一倍,而且线数越多,区别越明显,比如再多加一条线就可以构成20键的键盘,而直接用端口线则只能多出一键(9键)。如图3-2所示。图3-2 矩阵式键盘电路需要的键数比较多时,采用矩阵法来做键盘是合理的。矩阵式结构的键盘显然比直接法要复杂一些,识别也要复杂一些,上图中,列线通过电阻接正电源,并将行线所接的单片机的I/O口作为输出端,而列线所接的I/O口则作为输入。这样,当按键没有按下时,所有的输出端都是高电平,代表无键按下。行线输出是低电平,一旦有键按下,则输入线就会被拉低,这样,通过读入输入线的状态就可得

6、知是否有键按下了。具体的识别及编程方法如下所述。矩阵式键盘的按键识别方法确定矩阵式键盘上何键被按下介绍一种“行扫描法”。行扫描法行扫描法又称为逐行(或列)扫描查询法,是一种最常用的按键识别方法,如上图所示键盘,介绍过程如下。判断键盘中有无键按下将全部行线Y0-Y3置低电平,然后检测列线的状态。只要有一列的电平为低,则表示键盘中有键被按下,而且闭合的键位于低电平线与4根行线相交叉的4个按键之中。若所有列线均为高电平,则键盘中无键按下。判断闭合键所在的位置在确认有键按下后,即可进入确定具体闭合键的过程。其方法是:依次将行线置为低电平,即在置某根行线为低电平时,其它线为高电平。在确定某根行线位置为低

7、电平后,再逐行检测各列线的电平状态。若某列为低,则该列线与置为低电平的行线交叉处的按键就是闭合的按键,矩阵键盘与80C51的接口电路如图3-3所示。图3-3 矩阵键盘与80C51的接口电路3.4 显示电路显示器采用两个四位共阴极LED显示器,来实现显示器的动态扫描,八个二极管连接一个阴极的结构,只要另一段为高电平,二极管就会发光,从而形成一段。将八段顺序排列后就成为具有一定编码的共阴显示器了。动态扫描的频率有一定的要求,频率太低,LED将出现闪烁现象。如频率太高,由于每个LED点亮的时间太短,LED的亮度太低,肉眼无法看清,所以一般均取几个ms左右为宜,这就要求在编写程序时,选通某一位LED使

8、其点亮并保持一定的时间,程序上常采用的是调用延时子程序。显示电路如图3-4所示。图3-4 显示电路接线图第4章 软件设计4.1 主程序设计开始主程序主要由系统初始化段、开中断、键盘识别、键值处理、两个4位共阴极LED显示器扫描显示子程序和中断处理子程序等组成。通过对以上各段和子程序的结合,以实现系统功能。该系统主程序流程图如下图4-1所示。图4-1 主程序流程图4.2 键盘识别及处理程序设计按键识别及处理程序主要由键盘识别和键值处理组成。其中键盘识别子程序不断地对键盘进行判断是否有键按下。当有键按下时则转到键码处理即甲、乙总分处理子程序对相应按键进行相应处理,即可实现对甲、乙两队总分的计算与处

9、理。 键盘识别即依次判断第一列、第二列、第三列、第四列是否有键按下。如果有键按下,先得出列,再反向赋值得出行,最后得出所在行和列的位置。 键值处理即先定义09这九个按键,再对三次按键值进行保存,再来判断是甲队还是乙队加减分,再判断是加还是减,最后判断加或减多少分,实现分别给甲、乙总分进行加分和减分。键值处理即甲、乙总分处理子程序流程图如下图4-2所示。图4-2 键值处理子程序流程图4.3 显示子程序设计由于该系统使用的是8位LED显示器显示计分器比分,因此显示采用动态扫描显示方法,即由显示器扫描显示子程序控制显示器逐个循环从左至右依次点亮各个显示器。这样虽然在任一时刻只要一个显示器点亮,但是由

10、于人眼具有视觉残留效应,看起来与全部显示器持续点亮效果一样。显示器扫描显示子程序显示每一位用如图4-3所示流程方法完成。图4-3 显示子程序流程图4.4 复位程序设计按钮与单片机P0.6/AD6引脚相连,当每次按下该按钮后,系统将通过软件实现对计分复位功能。在主程序运行过程中,只要系统识别到与单片机P0.6/AD6引脚相连的按键按下,程序则会转去执行复位程序,完成对甲、乙总分寄存单元的清零,显示器各位的显示数寄存单元的复位,执行完毕后,返回主程序。流程图如4-4所示。图4-4 复位程序流程图第5章 系统调试5.1 软件模拟调试本设计主要是用proteus软件绘图以及伟福软件进行编程仿真的。调试

11、步骤由两个部分组成:首先,确定程序中错误的确切性质和位置;然后,对程序代码进行分析,确定问题的原因,并设法改正这个错误。具体地说,由以下步骤组成:1.从错误的外部表现入手,确定程序中出错的位置;2.分析有关程序代码,找出错误的内在原因;3.修改程序代码,排除这个错误;4.重复进行暴露了这个错误的原始测试以及某些回归测试,以确保该错误确实被排除且没有引入新的错误;5.如果所作的修正无效,则撤消这次改动,重复上述过程,直到找到一个有效的办法为止。5.2 硬件接线及调试这个电路是在老师的指导下设计的,电路的设计在理论上完全行得通,不过接线是设计中最关键的一步,我的接线原则是从全局出发,逐个模块连接调

12、试,最后总体调试。在这个指导思想下,我的安装还算是是成功的。逐个模块接线再调试,可以为总体调试省去很多时间,只要每个模块正常运行,几个模块通过地址总线连接之后,就不会出现太大的问题了。调试前的直观检查:1、连线是否正确,在通电之前应先检查一下电路的连线是否正确,包括错线,少线和多线的情况。查找的方法有:按照电路图检查安装的线路,这种方法的特点是,根据电路图来确定,按一定的顺序逐一检查安装好的线路,由此,可容易查出错线和少线的情况,还有一种方法就是按照实际的线路来对照原理电路进行查线,这是一种以元件为中心进行查线的方法。把每个元件引脚的连线一次查清 ,检查每个接线处在电路图上是否存在,这种方法不

13、但可以查出错线和少线,还容易查处多线的情况。2、元器件安装时情况检查元、器见引脚之间有无短路;连接处有无接触不良;二极管和电容极性等是否连接有误。电源、信号源连接是否正确。4、电源端对地是否存在短路,在通电前,断开一根电源线,用万用表检查电源对地端是否存在短路模拟调试结果记录如下:通电后,显示器初始显示“100-100”。按照键盘分布说明按键,分布给甲、乙加1分、2分和3分,显示器跟踪显示出总分,然后模拟比赛细节,随意给甲、乙加分或是减分,均达到预期效果。在甲、乙均有一定总分的情况下对甲、乙进行减分处理,当减到0后便不能够再进行减分操作,与程序设计相符。在甲、乙均有一定总分的情况下,按清零按钮

14、,显示结果清零。重复进行上面操作,结果均符合设计要求。第6章 总结6.1 设计心得为期两周的单片机课程设计拉下了帷幕,我深刻体会到了其中的苦与乐,感悟甚是深切.在没有做课程设计以前,觉得课程设计只是对知识的单纯总结,但是通过这次课程设计发现自己的看法有点太片面,课程设计不仅是对前面所学知识的一种检验,也是对自己能力的一种提高,通过这次课程设计使自己明白了原来的那点知识是非常欠缺的,要学习的东西还很多,通过这次课程设计,明白学习是一个长期积累的过程,在以后的工作和生活中都应该不断的学习,努力提高自己的知识和综合素质,并将理论与实际相结合,学以致用,不再是纸上谈兵,。对我们学生来说,理论与实际同样

15、重要,这是我们以后在工作中说明自己能力的一个重要标准。在这次课程设计中,同学之间互相帮助,有什么不懂的大家在一起商量,发现我们所学的知识实在是有限,不过我们能够充分利用网络的优势去查阅资料。而且,课程设计中涉及到的电路图用了比较新的一款PROTEUS进行设计和仿真,使我多掌握了一个得力的仿真工具。 我在整个设计过程中懂得了许多东西,当遇到一不了的问题,跟同伴一起商量、合作,或许能收到事半功倍的效果。不管学什么,一定要打好基础,并将其学好、学精,但空有知识也不一定就能说明什么,还得能为己所用;还有更重要的是培养了独立思考和设计的能力,树立了对知识应用的信心,相信会对今后的学习工作和生活有非常大的

16、帮助,并且提高了自己的动手实践操作能力, 使自己充分体会到了在设计过程中的成功喜悦。虽然这个设计做的不是很完美,但是在设计过程中所学到的东西是这次课程设计的最大收获和财富,使我终身受益;最后,也是我感触比较深的一点,这次课程设计时为数不多的独立完成的一次,虽然过程中遇到很多困难,让自己犯愁过,彷徨过,急躁过,可当自己很快调整好心态,从跌倒的地方爬起来继续,最后取得成功,不止是成功后的喜悦,也是一次锻炼!通过这次课程设计,明白学习是一个长期积累的过程,在以后的工作和生活中都应该不断的学习,努力提高自己的知识和综合素质,并将理论与实际相结合,理论与实际同样重要。 实习中,我感受到了老师对学生的那种

17、悔人不卷的精神,每天的固定时间,老师都来给我们指导,使我们少走弯路,顺利完成实习任务,请允许我向你们致意崇高的敬意,感谢你们,老师!在这次课程设计中,我在整个设计过程中懂得了许多东西,也培养了独立思考和设计的能力,树立了对知识应用的信心,相信会对今后的学习工作和生活有非常大的帮助,并且提高了自己的动手实践操作能力, 使自己充分体会到了在设计过程中的成功喜悦。虽然这个设计做的不是很理想,但是在设计过程中所学到的东西是这次课程设计的最大收获和财富,使我受益良多。6.2 参考文献 1、微型计算机原理及应用许立梓编 机械工业出版社 20022、微型计算机接口技术及应用刘乐善编 华中理工大学出版社 20

18、00 3、计算机硬件技术基础试验教程邹逢兴编 高等教育出版社 20004、16位微型计算机原理接口及其应用周佩玲编 中国科学技术大学出版社2000 5、微型计算机原理与接口技术吴秀清编 中国科学技术出版社 20016、微型计算机接口技术邓亚平编 清华大学出版社 20017、单片机原理及及应用王迎旭编 机械工业出版社 20018、单片机应用程序设计技术 周航慈 著 北京航空航天大学出版社 20029、单片机实用技术问答 谢宜仁 主编 人民邮电出版社 2002附录附录A 程序清单ORG 0000HSTART:MOV 2AH,#100MOV 4AH,#100MOV DPTR ,#TABMOV 6AH

19、,#0FEHMOV 6BH,#0FDHMOV 6CH,#0DFHMOV 6DH,#0F7HMOV 6EH,#0EFHMOV 6FH,#0FBHMAIN:MOV P2,#0F0HK0:JB P2.4 ,K1MOV A,P2MOV 30H,AMOV P2,#0FFHMOV P2,#0FHORL A,30HMOV 31H,ALJMP KKK1:JB P2.5,K2K2: JB P2.6, K3K3:JB P2.7, LLKK:MOV DPTR,#TABMOV A,31HMOV 31H,#0HCJNE A,#07EH ,Z0MOV A,#4HADD A,2AHMOV 2AH,ALJMP LOOPZ0:

20、 CJNE A,#07DH , Z1MOV A,2AHSUBB A,#4H MOV 2AH,A LJMP LOOPZ1: CJNE A,#07BH ,Z2ADD A,4AHMOV 4AH,AZ2: CJNE A,#077H, Z3MOV A,4AH MOV 4AH,AZ3: CJNE A,#0D7H ,Z4SUBB A,#2HZ4:CJNE A,#0EBH ,Z5MOV A,#1HZ5:CJNE A,#0DBH ,Z6MOV A,#2HZ6:CJNE A,#0BBH ,Z7MOV A,#3HLL:Z7:CJNE A,#0EDH ,Z8SUBB A,#1HZ8:CJNE A,#0DDH ,Z9Z

21、9:CJNE A,#0BDH ,Z10SUBB A,#3HZ10:CJNE A,#0EEH ,Z11Z11:CJNE A,#0DEH ,Z12Z12:CJNE A,#0BEH ,Z13Z13:CJNE A,#0E7H ,Z14Z14:CJNE A,#0B7H ,LOOPLOOP:MOV B ,#100DIV AB MOV 3AH,A MOV A,B MOV B ,#10 DIV AB MOV 3BH,A MOV 3CH,B MOV R0,#3AH MOV R1,#6AH MOV R3,#3L0P1:MOV A,R0MOVC A,A+DPTRMOV P1,AMOV A,R1MOV P0,AMOV R6,#0FFHDJNZ R6,$MOV P0,#0FFHINC R0INC R1DJNZ R3,L0P1MOV 5AH,AMOV A,BMOV B ,#10MOV 5BH,AMOV 5CH,BMOV R0,#5AHMOV R1,#6DHMOV R3,#3LOP2:MOV P3,AMOV R6,#8FHDJNZ R3,LOP2JNB P0.6 ,SSLJMP MAINSS:LJMP STARTTAB: DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H, 7FH,6FH附录B 总电路原理图

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1