机电一体化专业毕业论文27551.doc_第1页
机电一体化专业毕业论文27551.doc_第2页
机电一体化专业毕业论文27551.doc_第3页
机电一体化专业毕业论文27551.doc_第4页
机电一体化专业毕业论文27551.doc_第5页
免费预览已结束,剩余12页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1 毕业设计说明书 课题名称: 单片机秒表 专 业 机电一体化 2 摘要 数字电子秒表具有显示直观、读取方便、精度高的优点,在计时中广 泛使用。本设计用单片机组成数字电子秒表,力求结构简单、精度高为目 标。设计中包括硬件电路的设计和系统程序的设计。其硬件电路主要有主 控制器,计时与显示电路和启动和停表电路等。主控制器采用单片机 at89c51。显示电路采用共阴极 led 数码管显示计时时间。文中设计了一种 以单片机为控制核心的数字秒表。该数字秒表采用汇编语言开发,通过数 码管显示计时结果 关键词:at89c51 单片机;数字秒表;led 数码管显示 3 目 录 引 言 4 一 概述 5 1.1.设计意义 .5 1.2.设计内容 .5 二 硬件简介与电路设计 6 2.1.单片机 at89c51 介绍 .6 2.2.复位和按键电路设计 .6 2.3.显示电路的选择与设计 .7 2.4.晶振电路与电源电路的设计 .8 2.5.总电路图 .9 三 软件程序设计 .10 3.1.程序设计思想 10 3.2.程序设计 10 3.3.源程序 10 四 软件仿真 .13 五 总结与展望 .15 致谢 .16 参考文献 .17 4 引 言 单片微型计算机简称单片机,是典型的嵌入式微控制器,常用英文字母的 缩写 mcu 表示单片机,它最早是被用在工业控制领域。单片机由芯片内仅有 cpu 的专用处理器发展而来。最早的设计理念是通过将大量外围设备和 cpu 集 成在一个芯片中,使计算机系统更小,更容易集成进复杂的而对体积要求严格 的控制设备当中。intel 的 z80 是最早按照这种思想设计出的处理器,从此以 后,单片机和专用处理器的发展便分道扬镳。早期的单片机都是 8 位或 4 位的。 其中最成功的是 intel 的 8031,因为简单可靠而性能不错获得了很大的好评。 此后在 8031 上发展出了 mcs51 系列单片机系统。基于这一系统的单片机系统直 到现在还在广泛使用。随着工业控制领域要求的提高,开始出现了 16 位单片机, 但因为性价比不理想并未得到很广泛的应用。90 年代后随着消费电子产品大发 展,单片机技术得到了巨大提高。随着 intel i960 系列特别是后来的 arm 系列 的广泛应用,32 位单片机迅速取代 16 位单片机的高端地位,并且进入主流市 场。而传统的 8 位单片机的性能也得到了飞速提高,处理能力比起 80 年代提高 了数百倍。目前,高端的 32 位单片机主频已经超过 300mhz,性能直追 90 年代 中期的专用处理器。当代单片机系统已经不再只在裸机环境下开发和使用,大 量专用的嵌入式操作系统被广泛应用在全系列的单片机上。而在作为掌上电脑 和手机核心处理的高端单片机甚至可以直接使用专用的 windows 和 linux 操作 系统。单片机比专用处理器更适合应用于嵌入式系统,因此它得到了最多的应 用。事实上单片机是世界上数量最多的计算机。现代人类生活中所用的几乎每 件电子和机械产品中都会集成有单片机。手机、电话、计算器、家用电器、电 子玩具、掌上电脑以及鼠标等电脑配件中都配有 1-2 部单片机。而个人电脑中 也会有为数不少的单片机在工作。汽车上一般配备 40 多部单片机,复杂的工业 控制系统上甚至可能有数百台单片机在同时工作!单片机的数量不仅远超过 pc 机和其他计算的总和,甚至比人类的数量还要多。 本次毕业设计以单片机为核心,设计简单的电子秒表系统,使得系统能够 正确地运行,并且可以用数码管显示,在现实生活中应用广泛,具有现实意义。 5 一、概论 1.1、设计意义 1.使学生掌握汇编语言程序设计的基本方法和技巧,能够运用汇编语 言编写应用程序。提高学生分析问题、解决问题的能力以及实际动手能力。 2.使学生基本掌握汇编语言程序设计的基本理论、方法和技巧、正确 的使用结构化、模块程序设计技术。培养学生良好的程序设计风格。 3.通过单片机的定时器、计数器定时的计数原理,设计简单的计时器 系统,拥有正确的计时、转换、复位功能,并同时可以用数码管显示,在 现实生活中广泛应用,具有现实意义。 1.2、设计内容 用单片机设计一台秒表,要求 3 位 led 数码显示“秒表” ,显示时间为 0099 秒,每秒自动加 1,另设计一个“开始”按键,和一个“复位”按 键,一个转换键,可以将所计时间显示数字转换成分钟显示和秒显示,用 3 位 led 表示。功能可进行创新和改进。 6 xtal218 xtal119 ale30 ea31 psen29 rst9 p0.0/ad0 39p0.1/ad1 38p0.2/ad2 37 p0.3/ad3 36p0.4/ad4 35p0.5/ad5 34 p0.6/ad6 3p0.7/ad7 32 p1.01 p1.12 p1.23 p1.34 p1.45 p1.56 p1.67 p1.78 p3.0/rxd10p3.1/txd1p3.2/int0 12 p3.3/int1 13p3.4/t0 14 p3.7/rd17p3.6/wr16p3.5/t1 15 p2.7/a15 28 p2.0/a8 21p2.1/a9 2p2.2/a10 23 p2.3/a1 24p2.4/a12 25p2.5/a13 26 p2.6/a14 27 u1 at89c51 2、硬件简介与电路设计 2.1 单片机 at89c51 介绍 本设计的最主要的元器件就是 at89c51 单片机。at89c51 单片机在一块芯 片上集成了 cpu,存储器 ram,rom 以及输入与输出接口电路,这种芯片习惯上 被称为单片微型计算机。 at89c51 单片机由 cpu,振荡器与时序 电路, 4 个 8 位的 i/o 端口 (p0,p1,p2,p3) ,串行口等组成。 p0 口有三个功能: 1、外部扩展存储器时,当作数据总线 (如图中的 d0d7 为数据总线接口) 。 2、外部扩展存储器时,当作地址总线 (如图中的 a0a7 为地址总线接口) 。 3、不扩展时,可做一般的 i/o 使用, 但内部无上拉电阻,作为输入或输出时应 在外部接上拉电阻。 p1 口只做 i/o 口使用:其内部有上拉 电阻。 p2 口有两个功能: 1、扩展外部存储器时,当作地址总线使用; 图 2-1:单片机 89c51 2、做一般 i/o 口使用,其内部有上拉电阻; p3 口有两个功能: 除了作为 i/o 使用外(其内部有上拉电阻) ,还有一些特殊功能,由寄存器 来设置。 ale:地址锁存控制信号 psen:外部程序存储器读选通信号 ea/vpp:访问和序存储器控制信号 rst:复位信号 xtal1 和 xtal2 vcc:供电电压 gnd:接地 2.2 复位和按键电路设计 本方案采用 at89c51 单片机为中心器件,利用其定时器、计数器定时 和计数的原理,结合硬件电路如电源电路,晶振电路,复位电路,显示电 7 路,以及一些按键电路来设计计时器,将软件、硬件结合起来。设计中包 括硬件电路的设计和系统程序的设计。其硬件电路主控制采用单片机 at89c51,显示电路采用二位共阳极 led 数码管显示计时时间。利用中断系 统使其能实现开始/暂停、复位和分/秒显示转换的功能。 初始状态下计时器显示 00,当按下开始/暂停键时,外部中断 int0 向 cpu 发出中断请求,cpu 转去执行外部中断 0 服务程序,即开启定时器 t0.计时采用定时器 t0 中断完成,定时溢出中断周期为 1s,当一处中断后 向 cpu 发出溢出中断请求,每发出一次中断请求就对计数器单元加一,达 到 1 次就对秒位进行加一,依次类推,直到 99 秒重新复位。在计时过程中, 只要按下继续/复位、分/秒显示转换。利用这四个键来实现秒表暂停键, 外部中断 tnt1 向 cpu 发出中断请求,cpu 转去执行外部中断 1 服务程序, 即关闭定时器 t0,调用显示程序,实现暂停功能,同时将此次计时时间存 入中间缓冲区。再次按下继续/暂停键,定时器 t0 再次开启,调用中间缓 存区的数据,秒表继续加一。当秒表计时超过 99 时,则程序跳转从 0 开始。 在秒表暂停时,按下复位开关,中间缓存区的数据清零,程序回到开始。 而在秒表暂停时,按下分、秒显示转换开关,则将中间缓存区中的数据转 换为以分秒显示的状态送入显示区。根据要求秒表设计主要实现的功能是 计时和显示。因此设置了四个按键和二位数码管显示时间,四个按键分别 是开始、继续/暂停、的全部功能,而二位数码管则能显示最多 99 秒的计 时。 图 2-2:按键电路 2.3 显示电路的选择与设计 对于数字显示电路,通常采用液晶显示或数码管显示。一般的段式液 晶屏,需要专门的驱动电路,而且液晶显示作为一种被动显示,可视性差, 不适合远距离观看:对于具有驱动电路和单片机接口的液晶显示模块,一 般多采用并行接口,对单片机的接口要求较高,占用资源多:另外, at89c51 单片机本身无专门的液晶驱动接口。而数码管作为一种主动显示器 件,具有亮度高、响应速度快、防潮防湿性能好、温度特性极性、价格便 宜、易于购买等优点,而且有远距离视觉效果,很适合夜间或是远距离操 作。因此,本设计的显示电路采用 8 段数码管作为显示介质。 8 图 2-3:显示电路 2.4 晶振电路和电源电路的设计 系统总电路除以上的显示电路,按键电路和复位电路组成外,其次还剩 晶振电路和电源电路。再将单片机与以上各部分电路合理的连接就组成了系 统总电路。at89c51 单片机为主电路的核心部分,各个电路均为和单片机相 连接,由单片机统筹和协调各个电路的运行工作。 at89c51 单片机提供了 xtal1 和 xtal2 两个专用引脚接晶振电路,因此 只要将晶振电路接到两个专用引脚即可为单片机提供时钟脉冲,但在焊接晶 振电路时要尽量使晶振电路靠近单片机,这样可以为单片机提供稳定的时钟 脉冲。 图 2-4 震荡电路 9 3.5 总电路图 图 2-5:总电路图 10 三、软件程序设计 3.1 程序设计思想 本设计采用了汇编语言编写,汇编语言由于采用了助记符号来编写程 序,比用机器语言的二进制代码编程要方便些,在一定程度上简化了编程 过程。汇编语言的特点是用符号代替了机器指令代码,而且助记符与指令 代码一一对应,基本保留了机器语言的灵活性。使用汇编语言能面向机器 并较好发挥机器的特性,得到质量较高的程序。 在程序设计过程中,为了有效的完成任务,把所有完成的任务精心的 分割成若干个相互独立但相互有仍可有联系的任务模块,这些任务模块使 得任务变得相对单纯,对外的数据交换相对简单,容易编写,容易检测, 容易阅读和维护。这种程序设计思想称为模块化程序设计思想。模块化结 构程序的设计,可以使系统软件便于调试与优化,也使其他人更好的理解 和阅读系统的程序设计。程序的主要模块有:主程序、显示程序、定时溢 出中断服务程序、外部中断服务程序。 3.2 程序设计 因为秒表设计相对较为简单,因此在软件设计中我们一般采用模块化程序 设计的方法。模块是一个具有独立功能的程序,可以单独设计、调试与管理, 模块可分为功能模块和控制模块两类。我们通过模块化程序设计可按适当的原 则把一个情况复杂、规模较大的程序系统划分为一个个较小的、功能相关而又 相对独立的模块。每个小的模块完成一个确定的功能,在这些小的模块之间建 立必要的联系,互相协作完成整个程序要完成的功能。它具有明显的优点,把 一个多功能的复杂的程序划分为若干个简单的、功能单一的程序模块,有利于 程序的设计和调试,有利于程序的优化和分工,提高了程序的阅读性和可靠性, 使程序的结构层次一目了然。 其中的模块即为子程序,子程序是功能独立的程序段。子程序的基本思想 是编写一次,可以重复使用。子程序的形式可以是一个程序文件,也可以是一 个过程或函数。子程序总被其他程序调用而不单独执行,这与主程序相对。 这个主程序也是由多个子程序模块组成,各程序模块都要完成一个明确的 任务,实现某个具体的功能,复位,计数和显示等,在具体需要时调用相应的 模块即可。 3.3 源程序 org 0000h ljmp main org 0030h main: mov ie,#82h mov tmod,#01h 11 setb tr0 mov r0,#00h mov r1,#00h mov r2,#00h mov r3,#00h mov dptr,#tab lp: mov th0,#0d8h mov tl0,#0f0h mov a,r0 movc a,a+dptr mov p2,#01h mov p0,a ll: jbc tf0,dp sjmp ll dp: mov p1,#0feh jb p1.3,lk inc r2 cjne r2,#10,lk mov r2,#00h inc r0 cjne r0,#10,lk mov r0,#00h inc r1 cjne r1,#6,sa mov r3,#01h sa: cjne r1,#10,lk ljmp main lk: mov p1,#0feh jnb p1.4,main mov th0,#0d8h mov tl0,#0f0h mov p1,#0feh mov a,r1 jb p1.5,az cjne r3,#01h,az mov r5,#6 subb a,r5 az: movc a,a+dptr mov p2,#02h mov p0,a lr: jbc tf0,lq sjmp lr lq: mov th0,#0d8h mov tl0,#0f0h 12 mov p2,#04h mov p0,#0bfh kl: jbc tf0,hd sjmp kl hd: mov th0,#0d8h mov tl0,#0f0h mov p1,#0feh jb p1.5,sd mov a,r3 ajmp qw sd: mov a,r4 qw: movc a,a+dptr mov p2,#08h mov p0,a hk: jbc tf0,lp sjmp hk tab: db 0c0h,0f9h,0a4h,0b0h,99h db 92h,82h,0f8h,80h,90h end 13 四 软件仿真 利用 keil 软件对源程序进行编译,编译成功后,把编译结果保存。然后根 据我们的软件在 proteus 中设计出相应的硬件电路,并将该电路保存到与 wave 程序相同的文件夹中,最后将程序装载到单片机中,通过 isis7proteus 仿真, 看程序是否能够实现预想的功能。 14 仿真图如下所示: 15 五 总结与展望 本篇论文是利用单片机和接口外围电路组成的电子秒表电路。 整个电路由 硬件电路和软件程序两部分组成。硬件电路使用原件少,电路结构简单,功能 强;软件程序设计结构合理,思路清晰,利用询问程序对各种事件进行处理, 提高微处理器的工作效率。 硬件电路由单片机 at89c51、3 位 led 数码管显示电路、按键电路等构成。 系统总电路由以上设计的显示电路,时钟电路,按键电路和复位电路组成,只 要将单片机与以上各部分电路合理的连接就组成了系统总电路。at89c51 单片 机为主电路的核心部分,各个电路均和单片机相连接,由单片机统筹和协调各 个电路的运行工作。 通过以上设计已经将

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论