欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    电子跑表设计毕业设计.docx

    • 资源ID:14475113       资源大小:274.74KB        全文页数:24页
    • 资源格式: DOCX        下载积分:5金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要5金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    电子跑表设计毕业设计.docx

    1、电子跑表设计毕业设计电子跑表ABSTRACT: Because of its extremely high performance-price ratio, the single-chip computer (SCC) has been paid great attention to ever since it came out in 1970s of 20th Century, and has gained an extensive applicable field and fast development. Among all kinds of SCCs, 51 SCC is the mo

    2、st typical and representative one. This design, adopting 80C51 chip as the core part with some necessary peripheral circuits, is a simple electronic clock which uses 5V DC as the power supply. In hardware aspect, besides the CPU, four seven-segment LED digi-tubes are used for display, which work in

    3、a dynamically scanning display mode and driven by 74SL245 chip. The LEDs can accurately indicate hour and minute and two buttons can be used to adjust the time. While in the software aspect, the programming language is assembly language. The whole electronic clock system has functions of time displa

    4、y, adjustment, stopwatch and reset, etc. This design enables me to have greater insight into the basic circuit of SCC, and the basic methods of timer control and interruption programming, so that is a training of my ability of learning, designing and developing software and hardward.KEY WORDS:80C51

    5、LED digi-tubes Electronic clock Stopwatch摘要: 单片机自20世纪70年代问世以来,以其极高的性能价格比,受到人们的重视和关注,应用很广、发展很快。而51单片机是各单片机中最为典型和最有代表性的一种。本次设计以80C51芯片为核心,辅以必要的外围电路,设计了一个简易的电子跑表,它由5V直流电源供电。在硬件方面,除了CPU外,使用8个七段LED数码管来进行显示,LED采用的是动态扫描显示,使用74LS245芯片进行驱动。通过LED能够比较准确显示时、分。两个简单的按键实现对时间的调整。软件方面采用汇编语言编程。整个电子钟系统能完成时间的显示,调时,秒表计时

    6、,复位等功能。通过这次设计让我更深入了解单片机基本电路、如何控制和定时器和中断编程的基本方法,从而锻炼了我学习、设计和开发软、硬件的能力。关键字:80C51 LED数码管 电子钟 跑表一、设计目的 通过电子跑表的课程设计,巩固本学期学习的单片机知识; 通过过编写程序,深刻理解定时器T0、T1的编程方法; 通过PROTEUS仿真系统的仿真,对软件仿真进一步的了解; 提高对LED数码管的更进一步的认识,以及其驱动电路的认识; 学习单片机和其外围电路的接口方法; 熟悉独立式连接键盘和矩阵式键盘的原理; 提高查阅资料的能力以及知识之间相互联系的理解。二、设计要求 利用8051或者8031(2764)作

    7、为主控器,组成一个电子跑表,采用6位LED显示器。 上电或RESET后能启动当前时间(时:分:秒);首次上电复位显示为0时0分0秒,以后各次RESET均显示正确的当前时间。 当按下START键时,作为跑表使用,显示范围是000.0秒999.9秒,当按下STOP键时,跑表停止运行,并保留所停位置的时间显示不变,当再按下CLEAR键时跑表清零,再按下START键时,跑表从000.0开始计时,当跑到999.9时变成000.0。当按下SECOND键时跑表回到电子时钟的状态,并显示正确的时间。 利用SECOND作为秒钟校正,即按下SECOND(在时钟状态)时,秒钟加1,当加到60时,分钟加1,秒钟变为0

    8、。利用MINUTE作为分钟校正,即按下MINUTE(在时钟状态)时,分钟加1,当加到60时,时钟加1,分钟变为0,秒钟变为0。利用HOUR作为秒钟校正,即按下HOUR(在时钟状态)时,时钟加1,当加到24时,时钟为0,分钟为0,秒钟为0。三、方案选择 方案一:利用数字电子技术利用555电路组成作为时钟发生信号,让此脉冲作为一个计时电路的时钟信号,让计时电路产生的信号经过锁存驱动送到LED数码管显示。 方案二:可以利用8031芯片,但考虑到8031没有ROM,而要添加一个ROM,这样构成的电路会麻烦些。 方案三:利用80C51芯片,其内部有4KB的ROM,对与设计电子跑表已经足够,同时其有两个定

    9、时器T0、T1可以一个用来时钟定时,另外一个用来跑表计数,设置T0、和T1中断。然后通过74LS245驱动7段数码管动态显示P0口发过来的数据。 综上所述,考虑实际情况,此次课程设计选用方案三。四、仪器设备 80C51(一块)、74LS245驱动块一片、7段LED显示器8个、按键6个五、设计原理 1、工作原理 T0定时50ms,产生中断一次,定义一个变量TCNT,每次当T0中断产生一次,TCNT就加1。当TCNT等与20即已经计时1s时,把TCNT清零,分加1。当分钟等于60时,分钟清0,时钟加1。当时钟等于24时,时钟清零,分钟和表钟都清零。TCNT也清零。当按下START键,即进入秒表时,

    10、T1定时50ms,定一个变量TCNT1,当计时到1s时,SEOND1加1,当SECOND1加到100时,SECOND2加1,同时对SECOND1清零。当SECOND2加到100时,对其他边变量都清零。 2、80C51简介 1)基本组成: 单片机的结构特征是将组成计算机的基本部件集成体芯片上,构成一台功能独特的微型计算机。主要包括:中央处理器、存储器、并行I/O口、串行I/O口、定时/计数器、定时电路及单元。2)引脚及其功能:MCS-51是标准的4 0引脚双列直插式集成电路芯片。a) P0.0P0.7 P0口8位双向口线(在引脚的3932号端子)。 b) P1.0P1.7 P1口8位双向口线(在

    11、引脚的18号端子)。 c) P2.0P2.7 P2口8位双向口线(在引脚的2128号端子)。 d) P3.0P3.7 P2口8位双向口线(在引脚的1017号端子)。 这4个I/O口具有不完全相同的功能。 P0口有三个功能: a) 外部扩展存储器时,当做数据总线b) 外部扩展存储器时,当作地址总线c) 不扩展时,可做一般的I/O使用,但内部无上拉电阻,作为输入或输出时,在外部接上拉电阻。 P1口只做I/O口使用:其内部有上拉电阻。 P2口有两个功能: a) 扩展外部存储器时,当作地址总线使用 b) 做一般I/O口使用,其内部有上拉电阻; P3口有两个功能: 除了作为I/O使用外(其内部有上拉电阻

    12、),还有一些特殊功能,由特殊寄存器来设置。 在介绍这四个I/O口时提到了一个“上拉电阻”那么上拉电阻又是一个什么东东呢?他起什么作用呢?都说了是电阻那当然就是一个电阻,当作为输入时,上拉电阻将其电位拉高,若输入为低电平则可提供电流源;所以如果P0口如果作为输入时,处在高阻抗状态,只有外接一个上拉电阻才能有效。 ALE/PROG 地址锁存控制信号:在系统扩展时,ALE用于控制P0口的输出低8位地址送锁存器锁存起来,以实现低位地址和数据的隔离。ALE有可能是高电平也有可能是低电平,当ALE是高电平时,允许地址锁存信号,当访问外部存储器时,ALE信号负跳变(即由正变负)将P0口上低8位地址信号送入锁

    13、存器。当ALE是低电平时,P0口上的内容和锁存器输出一致。在没有访问外部存储器期间,ALE以1/6振荡周期频率输出(即6分频),当访问外部存储器以1/12振荡周期输出(12分频)。从这里我们可以看到,当系统没有进行扩展时ALE会以1/6振荡周期的固定频率输出,因此可以做为外部时钟,或者外部定时脉冲使用。 PORG为编程脉冲的输入端:在8051单片机内部有一个4K或8KB的程序存储器(ROM),ROM的作用就是用来存放用户需要执行的程序的,那么我们是怎样把编写好的程序存入进这个ROM中的呢?实际上是通过编程脉冲输入才能写进去的,这个脉冲的输入端口就是PROG。 PSEN 外部程序存储器读选通信号

    14、:在读外部ROM时PSEN低平有效,以实现外部ROM单元的读操作。 a) 内部ROM读取时,PSEN不动作; b) 外部ROM读取时,在每个机器周期会动作两次; c) 外部RAM读取时,两个PSEN脉冲被跳过不会输出; d) 外接ROM时,与ROM的OE脚相接。 EA/VPP 访问和序存储器控制信号a) 接高电平时: CPU读取内部程序存储器(ROM) b) 扩展外部ROM:当读取内部程序存储器超过0FFFH(8051)1FFFH(8052)时自动读取外部ROM。 c) 接低电平时:CPU读取外部程序存储器(ROM)。 在前面的学习中我们已知道,8031单片机内部是没有ROM的,那么在应用80

    15、31单片机时,这个脚是一直接低电平的。d) 8751烧写内部EPROM时,利用此脚输入21V的烧写电压。 RST 复位信号:当输入的信号连续2个机器周期以上高电平时为有效,用以完成单片机的复位初始化操作,当复位后程序计数器PC=0000H,即复位后将从程序存储器的0000H单元读取第一条指令码。 XTAL1和XTAL2 :外接晶振引脚。当使用芯片内部时钟时,二引脚用于外接石英晶体和微调电容;当使用外部时钟时,用于接外部时钟脉冲信号。 VCC:电源+5V输入 VSS:GND接地。 3)80C51的引脚图如图一所示:图一3)LED显示器原理 显示块的控制:数码管实际上是由若干个发光二极管组成8字形

    16、成的,加上小数点就是8个。一般的8字形显示块由a、b、c、d、e、f、g、dp,8个发光二极组成,如图二所示: 图二每个发光二极管称、为一个字段。8字形显示块有共阴极(如图三)和共阳极(如图四)两种结构。图三图四 字型与字段:为获得不同字形,显示块各段所加的电压也不同,因而编码也不一样,如表一所示:显示字符gfedcba字型码共阴极共阳极001111113FHC0H1000011006HF9H210110115BHA4H310011114FHB0H4110011066H99H511011016DH92H611111017DH82H7000011107HF8H811111117FH80H9110

    17、11116FH90HA111011177H88HB11111007CH83HC011100139HC6HD10111105EHA1HE111100179H86HF111000171H8EH 动态显示原理:动态显示意思是,几位的数码管的段选都是并联的。由他们的位选位来控制哪一位的数码管来亮。动态扫描显示接口是单片机中应用最为广泛的一种显示方式之一。其接口电路是把所有显示器的8个笔划段a-h同名端连在一起,而每一个显示器的公共极COM是各自独立地受I/O线控制。CPU向字段输出口送出字形码时,所有显示器接收到相同的字形码,但究竟是那个显示器亮,则取决于COM端,而这一端是由I/O控制的,所以我们就

    18、可以自行决定何时显示哪一位了。而所谓动态扫描就是指我们采用分时的方法,轮流控制各个显示器的COM端,使各个显示器轮流点亮。在轮流点亮扫描过程中,每位显示器的点亮时间是极为短暂的,但由于人的视觉暂留现象及发光二极管的余辉效应,尽管实际上各位显示器并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示数据,不会有闪烁感。4)键盘扫描原理: 键盘可以分为两类:独立式和矩阵式。因为本设计用到的按键少,所以用的是独立式的键盘。一般情况下,所有的数据输入线都被连成高电平。当任何一个键按下时,与之相连的数据线被置成低电平,只要用位处理就可以判断是否有按键按下。这种键盘的优点是结构简单,使用方便,

    19、但随着键数的增加,所占的I/O口线也增加。其原理图如图五所示:图五六、流程图 七、调试过程及现象在本次课程设计调试的过程中,遇到最大的困难是数码管的显示,因为在仿真的时候,数码管出现的总是乱码,后来经过反复的思考,琢磨因为我选用的数码管是要经过驱动的,原先的电路图的时候数码管是直接连接到P0口上面,因此显示的是乱码,后来我用74LS245驱动后就能真确显示。此外还有一个错误就是,在显示秒表的时候最高位不总是不能正确显示,后来经过单步调式,原来是在DISPLAY1显示子程序中少了有条语句(DIV AB),导致出现了显示不正确的现象。八、硬件电路以及仿真 时钟的仿真结果如图六图六 Proteus仿

    20、真时钟的仿真结果 秒表在proteus下面的仿真结果如图七所示图七 Proteus仿真秒表的仿真结果九、心得体会课程设计是培养学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程.随着科学技术发展的日新日异,单片机已经成为当今计算机应用中空前活跃的领域, 在生活中可以说得是无处不在。因此作为二十一世纪的大学来说掌握单片机与接口技术是十分重要的。基于单片机的重要性,我们这个学期开了单片机的课程,并进行了为期二个星期的单片机课程设计,而我选的课题是用电子跑表。通过这个课程设计,提高了自己的资料检索和编写程序的能力知识之间相互联系的理

    21、解,巩固了本学期学习的单片机知识;通过过编写程序,深刻理解定时器T0、T1的编程方法;通过PROTEUS仿真系统的仿真,对软件仿真有了进一步的了解;提高了对LED数码管的更进一步的认识,以及其驱动电路的认识;学习单片机和其外围电路的接口方法;更加熟悉独立式连接键盘和矩阵式键盘的原理;回顾起单片机课程设计,至今我仍感慨颇多,的确,从选题到定稿,从理论到实践,在整整二个多星期的日子里,可以说得是苦多于甜,但是可以学到很多很多的的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所

    22、学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到问题,可以说得是困难重重,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固,比如说指令的运用,对编程语言编程掌握得不好通过这次课程设计之后,一定把以前所学过的知识重新温故。最后在老师的辛勤指导下,终于游逆而解。同时,在老师的身上我学得到很多实用的知识,在次我表示感谢!同时,对给过我帮助的所有同学和各位指导老师再次表示忠心的感谢! 同时我在这次课程设计中懂得了一个道理:只有不断钻研,才能发现自己得不足

    23、,才会知道什么叫做太平洋!什么叫做珠穆朗玛!我会更加努力的!附录:程序源代码如下:S_SET BIT P1.0 ;数字钟秒控制位M_SET BIT P1.1 ;分钟控制位H_SET BIT P1.2 ;时钟控制位START BIT P1.3 ;跑表计时开始STOP BIT P1.4 ;跑表计时停止CLEAR BIT P1.5 ;跑表清零RETURN BIT P1.6 ;返回到时钟SECOND EQU 30H ;保存秒钟变量MINUTE EQU 31H ;保存分钟钟变量HOUR EQU 32H ;保存时钟变量SECOND1 EQU 35H ;保存跑表变量SECOND2 EQU 36HTCNT1

    24、EQU 37H ;时钟定时器TCNT EQU 34H ;跑表定时器ORG 0000HAJMP MAINORG 0BHLJMP INT_T0ORG 001BHLJMP INT_T1MAIN: MOV P1,#0FFHMOV P0,#0FFHMOV DPTR,#TABLEMOV HOUR,#0 ;初始化MOV MINUTE,#0MOV SECOND,#0MOV SECOND1,#50MOV SECOND2,#99MOV TCNT,#0MOV TCNT1,#0MOV TMOD,#01HMOV TH0,#(65536-50000)/256 ;定时50毫秒MOV TL0,#(65536-50000)MO

    25、D 256MOV TH1,#(65536-50000)/256 ;定时50毫秒MOV TL1,#(65536-50000)MOD 256MOV IE,#10001010BSETB TR0MOV IP,#00010000B;*;判断是否有控制键按下,是哪一个键按下A1: LCALL DISPLAYA2:JNB START,SEC_WATCH ;判断是否是跑表计时开始JNB STOP,STOP_WATCHJNB CLEAR,CLEAR_WATCHJNB S_SET,S1 ;判断设置时钟秒JNB M_SET,S2 ;判断设置时钟分JNB H_SET,S3 ;判断设置时钟时LJMP A1SEC_WAT

    26、CH:SETB TR1LCALL DELAY ;去抖JB START,A1A3: ACALL DISPLAY1JNB STOP,STOP_WATCHACALL DELAYJNB RETURN,A1AJMP A3STOP_WATCH:CLR TR1ACALL DISPLAY1JNB RETURN,A1JNB CLEAR,CLEAR_WATCHJNB START,SEC_WATCHAJMP STOP_WATCHCLEAR_WATCH:MOV SECOND1,#0MOV SECOND2,#0JMP A3ZHONG_ZHUAN_TIAO: ;中转跳AJMP A1S1: LCALL DELAY ;去抖动

    27、JB S_SET,A1INC SECOND ;秒值加1MOV A,SECONDCJNE A,#60,J0 ;判断是否加到60秒MOV SECOND,#0LJMP K1S2: LCALL DELAYJB M_SET,A1K1: INC MINUTE ;分钟值加1MOV A,MINUTECJNE A,#60,J1 ;判断是否加到60分MOV MINUTE,#0LJMP K2S3: LCALL DELAYJB H_SET,A1K2: INC HOUR ;小时值加1MOV A,HOURCJNE A,#24,J2 ;判断是否加到24小时MOV HOUR,#0MOV MINUTE,#0MOV SECOND

    28、,#0LJMP A1;*;等待按键抬起J0: JB S_SET,ZHONG_ZHUAN_TIAOLCALL DISPLAYSJMP J0J1: JB M_SET,ZHONG_ZHUAN_TIAOLCALL DISPLAYSJMP J1J2: JB H_SET,ZHONG_ZHUAN_TIAOLCALL DISPLAYSJMP J2;*;定时器中断服务程序,对秒,分钟和小时的计数INT_T0: MOV TH0,#(65536-50000)/256MOV TL0,#(65536-50000)MOD 256INC TCNTMOV A,TCNTCJNE A,#20,RETUNE ;计时1秒INC SECONDMOV TCNT,#0MOV A,SECONDCJNE A,#60,RETUNEINC MINUTEMOV SECOND,#0MOV A,MINUTECJNE A,#60,RETUNEINC HOURMOV MINUTE,#0MOV A,HOURCJNE A,#24,RETUNEMOV HOUR,#0MOV MINUTE,#0MOV SECOND,#0MOV TCNT,#0RETUNE: RETIINT_T1:MOV TH1,#(65536-50000)/256 ;定时50毫秒MOV


    注意事项

    本文(电子跑表设计毕业设计.docx)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开