毕业设计基于AT89C51单片机的数字时钟设计_第1页
毕业设计基于AT89C51单片机的数字时钟设计_第2页
毕业设计基于AT89C51单片机的数字时钟设计_第3页
毕业设计基于AT89C51单片机的数字时钟设计_第4页
毕业设计基于AT89C51单片机的数字时钟设计_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

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

文档简介

1、- 1 - 漯河职业技术学院漯河职业技术学院毕业设计(论文)毕业设计(论文)课题名称:基于课题名称:基于 at89c51at89c51 单片机的数字时钟设计单片机的数字时钟设计 专 业:电气自动化 班 级:10 级电气(3)班 学 号: 姓 名: 指导教师;制作时间:2013 年 03 月 21 日 - 2 -绪绪 论论一、课题设计(论文)目的及意义一、课题设计(论文)目的及意义人类的生活包括:工作、学习、休息以及参与社会的多种实践活动,环环有条理,更加丰富多彩。应该说时钟的计时功能与人类的各种行为和活动有着密切的联系,于是时钟的作用便体现出来,生活中有许多人,因为只顾工作而忘记时间,从而耽误

2、了重要的安排或者计划,造成不可挽回的损失,使之后悔莫及。我们要养成良好的时间观念,就需要电子钟时刻提醒我们。因此,电子钟已成为人们日常生活中必不可少,它的应用非常广泛,应用于家庭以及车站、码头、剧场、办公室等公共场所,给人们的生活、学习、工作、娱乐带来极大的方便。现在投入生产的大多是智能时钟,它的功能很全面,但价格有点昂贵,大多数学生或者经济条件较差的人,想要拥有它,都有点困难。因此,在这里设计一个较简单的电子钟,它能完成计时和校时的功能。这个时钟系统很简单,投入生产的成本很低,因此,它的价格比较便宜,对于学生很实用。二、课题设计(论文)提纲二、课题设计(论文)提纲时钟电路的核心是 at89c

3、51 单片机,其内部带有 2kb 的可反复擦写的只读 flash 程序存储器和 128 bytes 的随机存取数据存储器(ram),无须外扩程序存储器。电脑时钟没有大量的运算和暂存数据,现有的 128b 片内 ram 已能满足要求,也不必外扩片 ram。系统配备 8 位led 数码管显示和 3 个独立式按键,用 p0 口作为键盘接口电路,p1 口和 p3 口作为段码和位码输出口,并在字段码输出口接 74ls245 芯片,用该芯片来驱动 led 数码管显示。利用p0.0、p0.1 和 p0.2 作为功能按键输入口。三、课题设计(论文)思路、方法及进度安排三、课题设计(论文)思路、方法及进度安排(

4、1 1)显示方案)显示方案方案一:静态显示就是当 cpu 将要显示的字或字段码送到输出口,显示器就可以显示出所要显示的字符,如果 cpu 不去改写它,它将一直保持下去;静态显示硬件开销大,电路复杂,信息刷新速度慢。方案二:动态显示则是一位一位地轮流点亮显示器地各个位(扫描)。对于显示器的每一位而言,每隔一段时间点亮一次;动态显示耗能较小,但编写程序较复杂。动态显示硬件连接简单,信息刷新速度快。由于本次设计是对时间进行显示,如采用静态显示,则所占用的 i/o 口较多,电路较复杂,所以在此选择的是方案二,采用动态显示。(2 2)键盘方案)键盘方案方案一:独立式键盘。独立式键盘的各个按键相互独立,每

5、个按键独立地与一根数据输入线(单片机并行接口或其他芯片的并行接口)连接。独立式键盘配置灵活,软件结构简单,但- 3 -每个按键必须占用一根接口线,在按键数量不多时,接口线占用多。所以,独立式按键常用于按键数量不多的场合。方案二:矩阵式键盘。矩阵式键盘采用的是行列式结构,按键设置在行列的交点上.(当接口线数量为 8 时,可以将 4 根接口线定义为行线,另 4 根接口线定义为列线,形成 4*4 键盘,可以配置 16 个按键。)由于本设计只用了四个按键,不需要采用矩阵式键盘,所以选用第一种方案,采用独立式键盘。(3 3)计时方案)计时方案采用软件控制:利用单片机内部的定时/计数器进行定时,配合软件定

6、时实现时、分、秒的计时。该方案能够使设计者,在设计的过程中容易实现,且节省硬件成本,因此本系统将采用软件方法实现计时。方法及进度安排:第一周到第二周:通过搜集资料,参考文献,反复的硬件调试,第三周到第四周:基本完成各模块的性能要求。第五周到第六周:在研究过程中系统的部分模块属电子系统中常用模块的可以直接采用,但需要结合连接电路进行适当调试,以达到最佳效果。目目 录录摘 要 .1- 4 -第 1 章 引言 .21.1 电子钟的发展史 .21.2 设计的目的与意义 .21.3 设计的基本思路与主要内容 .3第 2 章 时钟系统的整体设计 .102.1 系统功能要求.102.2 整体方案 .11第

7、3 章 硬件设计与分析 .123.1 硬件设计原理 .123.2 各单元电路介绍.123.2.1 at89c51 单片机介绍.123.2.2 单片机最小应用系统.123.2.3 显示电路.133.2.4 键盘及其接口 .153.3 系统原理图 .16第四章 软件设计 .184.1 主程序的设计 .184.2 键输入程序 .194.3 显示程序 .204.4 延时程序 .212.5 中断程序 .24第 5 章 调试与运行 .255.1 电路仿真 .255.2 调试和运行 .26第第 6 6 章章 结结 论论 .2 27 7致 谢 .28参考文献 .29附录一 系统原理图.30附录二 元件清单 .

8、31附录三 程序清单 .32摘摘 要要 单片微型计算机简称单片机,它是把微型计算机的各个功能部件:中央处理器 cpu、随机- 5 -存取存储器 ram、只读存储器 rom、i/o 接口、定时器/计数器以及串行通信接口等待集成在一块芯片上,构成一个完整的微型计算机,故又把它称为单片微型计算机。当今信息科技高速发展,使用方便、低成本电子设备已逐步成为我们日常生活中电子产品的主力军。用软件代替硬件的电子设备能大大地节省成本,且有利于资源的节约,因此,以软代硬的设计必将成为我们现代设计的主流。本设计是利用 mcs-51 系列单片机内部的定时器/计数器进行中数年定时,配合软件延时实现时、分、秒的计时。该

9、方案节省硬件成本,且能够使设计者在定时/计数器的使用、中数年及程序设计方面得到锻炼和提高,因此本系统将采用软件方法实现计时。关键词: 单片机 数码管 程序设计- 6 -第 1 章 引引 言言1.11.1 电子时钟的发展史电子时钟的发展史 电子钟有着很长的历史,从民国 19 年的电钟,研制始於 60 年代中期的国内电晶体、半导体管钟,到研制始於 70 年代末的石英电子钟,再到今天我们所用的智能电子钟。以前的电子钟存在着很多缺点,其外观体积庞大,在功能上有死摆、走时时间不长、走时精确度不高等缺点。如今无论是外观,还是在功能上,电子钟都有了很大的改进。 虽然世界绝大多数钟表都是中国制造,但钟表对于国

10、内市场来说只是个小行业,2003 年总盘子不过才 100 多亿,但不是没有前景。近年来,市场在急剧膨胀。根据国外的统计数据显示,发达国家人均一生拥有手表 23 块,发展中国家 12 块,而目前中国的城镇人口人均拥有量不多于 6 块,空间很大。比如彩电一般是一个家庭一台,手表则是每人一块,但从销售量来看,光 tcl 一家公司两个月的彩电销量可以接近 300 万台,而我们手表每年总共才卖 200 多万只。所以绝对不是市场潜力不够的问题,而是我们应该如何去做的问题。1.21.2 设计的目的与意义设计的目的与意义人类的生活包括:工作、学习、休息以及参与社会的多种实践活动,环环有条理,更加丰富多彩。应该

11、说时钟的计时功能与人类的各种行为和活动有着密切的联系,于是时钟的作用便体现出来,生活中有许多人,因为只顾工作而忘记时间,从而耽误了重要的安排或者计划,造成不可挽回的损失,使之后悔莫及。我们要养成良好的时间观念,就需要电子钟时刻提醒我们。因此,电子钟已成为人们日常生活中必不可少,它的应用非常广泛,应用于家庭以及车站、码头、剧场、办公室等公共场所,给人们的生活、学习、工作、娱乐带来极大的方便。现在投入生产的大多是智能时钟,它的功能很全面,但价格有点昂贵,大多数学生或者经济条件较差的人,想要拥有它,都有点困难。因此,在这里设计一个较简单的电子钟,它能完成计时和校时的功能。这个时钟系统很简单,投入生产

12、的成本很低,因此,它的价格比较便宜,对于学生很实用。1.31.3 设计的基本思路与主要内容设计的基本思路与主要内容设计一个电子产品,首先了解它能实现的功能,时钟系统最基本的功能就是实现计时,在这里设计的数字电子时钟,它能实现计时和校时的功能,给电子钟加上电自动计时,设计一个按键对时钟进行复位和三个按键对时间进行调整。 硬件设计很简单,主要包括:单片机、按键电路、驱动显示电路,以及 led 显示器四个部分。单片机选用 at89c51 芯片,它无须外扩程序存储器,设计电路很简单。由于只用了四个按键,所以采用独立式按键使设计更简单。显示时、分、秒加两个分隔符,采用 8 位的数码管,用常用的 74ls

13、244 来驱动 led 数码管显示字符。- 7 - 简易数字时钟可实现校时和整点报时功能,该软件采用 c 语言来实现,主要包括主程序、键输入程序、显示程序、定时程序和中断程序等软件模块。把原程序加入原理图,做出电子钟的仿真,以秒计数并显示时、分、秒。其中秒和分为 60 进制,小时为 24 进制计数。可通过按键实现时钟复位和分、秒、时的校正。- 8 -第第 2 2 章章 简易数字时钟系统的整体设计简易数字时钟系统的整体设计2.12.1 系统功能要求系统功能要求 以单片机技术为核心,充分应用各种外围电路元器件,设计一个通过显示器显示时间(时、分、秒)的电子钟。要求: 1、上电时,时、分、秒显示为0

14、0时、00分、00秒,并以秒为单位开始计时;2、运行状态下,按动控制按扭s-set,对秒进行调整;3、运行状态下,按动控制按扭 m-set,对分进行调整;4、运行状态下,按动控制按扭 h-set,对小时进行调整。5、当数字时钟运行到正点时,实现自动报时功能。6、当按下 t-set 键是实现小时由 24 进制和 12 进制的相互转换。2.22.2 整体方案整体方案 电子钟的电路图主要由单片机(at89c51)、键盘电路、驱动显示电路和 led 显示器四部分组成,它主要实现时钟的显示,以及对时、分、秒进行调整,即实现调时的功能。其数字钟系统整体结构如图 2-1 所示。七段数码管at89c51驱动l

15、ed 显示器位选按 键图图 2-12-1 电子钟系统整体结构电子钟系统整体结构(1 1)显示方案)显示方案方案一:静态显示就是当 cpu 将要显示的字或字段码送到输出口,显示器就可以显示出所要显示的字符,如果 cpu 不去改写它,它将一直保持下去;静态显示硬件开销大,电路复杂,信息刷新速度慢。方案二:动态显示则是一位一位地轮流点亮显示器地各个位(扫描)。对于显示器的每一位而言,每隔一段时间点亮一次;动态显示耗能较小,但编写程序较复杂。动态显示硬件连接- 9 -简单,信息刷新速度快。由于本次设计是对时间进行显示,如采用静态显示,则所占用的 i/o 口较多,电路较复杂,所以在此选择的是方案二,采用

16、动态显示。(2 2)键盘方案)键盘方案方案一:独立式键盘。独立式键盘的各个按键相互独立,每个按键独立地与一根数据输入线(单片机并行接口或其他芯片的并行接口)连接。独立式键盘配置灵活,软件结构简单,但每个按键必须占用一根接口线,在按键数量不多时,接口线占用多。所以,独立式按键常用于按键数量不多的场合。方案二:矩阵式键盘。矩阵式键盘采用的是行列式结构,按键设置在行列的交点上.(当接口线数量为 8 时,可以将 4 根接口线定义为行线,另 4 根接口线定义为列线,形成 4*4 键盘,可以配置 16 个按键。)由于本设计只用了四个按键,不需要采用矩阵式键盘,所以选用第一种方案,采用独立式键盘。(3 3)

17、计时方案)计时方案采用软件控制:利用单片机内部的定时/计数器进行定时,配合软件定时实现时、分、秒的计时。该方案能够使设计者,在设计的过程中容易实现,且节省硬件成本,因此本系统将采用软件方法实现计时。- 10 -第第 3 3 章章 硬件设计与分析硬件设计与分析3.13.1 硬件设计原理硬件设计原理 时钟电路的核心是 at89c51 单片机,其内部带有 2kb 的可反复擦写的只读 flash 程序存储器和 128 bytes 的随机存取数据存储器(ram),无须外扩程序存储器。电脑时钟没有大量的运算和暂存数据,现有的 128b 片内 ram 已能满足要求,也不必外扩片 ram。系统配备 8 位le

18、d 数码管显示和 3 个独立式按键,用 p0 口作为键盘接口电路,p1 口和 p3 口作为段码和位码输出口,并在字段码输出口接 74ls245 芯片,用该芯片来驱动 led 数码管显示。利用p0.0、p0.1 和 p0.2 作为功能按键输入口。.1 at89c51at89c51 单片机介绍单片机介绍 at89c51 是一个低电压,高性能 cmos 8 位单片机,片内含 2k bytes 的可反复擦写的只读 flash 程序存储器和 128 bytes 的随机存取数据存储器(ram),器件采用 atmel 公司的高密度、非易失性存储技术生产,兼容标准 mcs51 指令系统,片内置

19、通用 8 位中央处理器和flash 存储单元,所以说 at89c51 是一个功能强大的单片机。 at89c51 是一个低功耗高性能单片机,它有 40 个引脚,32 个外部双向输入/输出(i/o)端口,同时内含 2 个外中断口,2 个 16 位可编程定时计数器,2 个全双工串行通信口,at89c51可以按照常规方法进行编程,也可以在线编程。其将通用的微处理器和 flash 存储器结合在一起,特别是可反复擦写的 flash 存储器可有效地降低开发成本。同时 at89c51 的时钟频率可以为零,即具备可用软件设置的睡眠省电功能,系统的唤醒方式有 ram、定时/计数器、串行口和外中断口,系统唤醒后即进

20、入继续工作状态。省电模式中,片内 ram 将被冻结,时钟停止振荡,所有功能停止工作,直至系统被硬件复位方可继续运行。.2 单片机最小应用系统单片机最小应用系统时钟电路和复位电路是单片机最小应用系统中必不可少的。单片机时钟电路图,如图 3-1 所示:xtal1 和 xtal2 分别为反向放大器的输入和输出。该反向放大器可以配置为片内振荡器。石晶振荡和陶瓷振荡均可采用。如采用外部时钟源驱动器件,xtal2 应不接。有余输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度。- 11 -图图 3-13-1 单片机时钟电路图单片

21、机时钟电路图复位是使单片机或系统中的其他部件处于某种确定的初始状态。单片机的工作就是从复位开始的,当在单片机的 rst 引脚引入高电平并保持 2 个机器周期时,单片机内部就执复位操作(若该引脚持续保持高电平,单片机就处于循环复位状态)。实际应用中,复位操作有两种基本的形式:一种是上电复位,另一种是上电与按键均有效的复位。由于本次设计采用的是上电复位,所以这里只介绍上电复位,如下图 3-3 所示: 图图 3-33-3 上电复位电路上电复位电路上电复位要求接通电源后,单片机自动实现复位操作。常用的上电复位如上图所示。上电瞬间 rst 引脚获得高电平,随着电容 c1 的充电,rst 引脚的高电平将逐

22、渐下降。.3 显示电路显示电路一、七段一、七段 ledled 显示器的原理显示器的原理显示器是单片机应用系统常用的设备,包括 led、lcd 等。led 显示器由若干个发光二极管组成。七段 led 通常构成字型“8”,还有一个发光二极管用来显示小数点。每段 led 分别引出一个电极,电极的名为 a、b、c、d、e、d、g、dp,其中 dp 是小数点段的引出电极。当发光二极管导通时,相应的一个笔画或一个点就发光。控制相应的二极管导通,就能显示出对- 12 -应字符。说明:在该设计中,没有用到电极(dp),而是用单位的数码管来显示分隔符,其七段 led 显示器如图 3-4 所示图图

23、 3-43-4 七段七段 ledled 显示器显示器二、二、动态显示动态显示本设计共用了八位 led 显示器,因此采用动态显示方式。所谓动态显示就是一位一位的轮流点亮显示器的各个位。对于显示器的每一位而言,每隔一段时间点亮一次。虽然在同一时刻只有一位显示器在工作,但由于人眼的视觉暂留效应和发光二极管熄灭时的余晖,我们看到的却是多个字符“同时“显示。显示器亮度既与点亮时的导通电流有关,也与点亮时间长短和时间间隔有关。显示器的位数不大于 8 位,则控制显示器公共极电位只需要一个 i/o 接口,称为扫描口或字位口,控制各位 led 显示器所显示的字型也需要一个 8 位接口,称为段数据口或字型口。图

24、3-5 为驱动显示电路框图。- 13 -图图 3-43-4 驱动显示电路框图驱动显示电路框图74ls244 是我们常用的芯片,用来驱动 led 或者其他的设备当 8051 单片机的 p1 口总线负载达到或超过 p1 最大负载能力时,必须接入 74ls244 等总线驱动器。当片选端/ce 低电平有效时,dir=“0”,信号由 b 向 a 传输;(接收).4 键盘及其接口键盘及其接口键盘是由若干个按键组成的,它是单片机最简单的输入设备。通过键盘输入数据或命令,就可实现简单的人机对话。一、按键的抖动现象一、按键的抖动现象按键就是一个简单的开关。当按键按下时,相当于开关闭合;当按键松开

25、时,相当于开关断开。按键在闭合和断开时,触点会存在抖动现象。按键抖动时间一般为 5ms10ms,抖动可能造成一次按键的多次处理问题。应采取措施消除抖动的影响。消除的方法很多,本设计采用软件延时的方法来消除抖动。当单片机检测到有按键按下时先定时,然后再检测按键的状态,若仍是闭合状态则认为真的有键按下。当检测到按键释放时,亦需要做同样的处理。二、按键电路二、按键电路 独立式键盘的各个按键相互独立,每个按键独立地与一根数据输入线(单片机并行接口或其他芯片的并行接口)连接。独立式键盘配置灵活,软件结构简单,但每个按键必须占用一根接口线,在按键数量不多时,接口线占用多。所以,独立式按键常用于按键数量不多

26、的场合。- 14 -该设计只用了三个按键,来实现功能控制。在运行状态下,按动控制按扭s-set,可对秒进行调整;按动控制按扭m-set,可对分进行调整;按动控制按扭h-set,可对时进行调整;因此采用独立式键盘方式,设计起来比较简单。如图3-6所示图图3-53-5 键盘电路键盘电路3.33.3 系统原理图系统原理图 at89c51的p1口接入三个按键,对时、分、秒进行调整。p0口输出字段码,控制要显示的字符,外接74ls245芯片,驱动led显示。p3口输出字位码,去控制要显示的位,其原理图如图3-6所示。- 15 -a7a7a6a6a5a5a4a4a3a3a2a2a1a1a0a0s7b7b6

27、b5b4b3b2b1b0s6s5s4s3s2s1s0b0b1b2b3b4b5b6b7s0s1s2s3s4s5s6s7xtal218xtal119ale30ea31psen29rst9p0.0/ad039p0.1/ad138p0.2/ad237p0.3/ad336p0.4/ad435p0.5/ad534p0.6/ad633p0.7/ad732p1.01p1.12p1.23p1.34p1.45p1.56p1.67p1.78p3.0/rxd10p3.1/txd11p3.2/int012p3.3/int113p3.4/t014p3.7/rd17p3.6/wr16p3.5/t115p2.7/a1528p

28、2.0/a821p2.1/a922p2.2/a1023p2.3/a1124p2.4/a1225p2.5/a1326p2.6/a1427u1at89c51s-setm-seth-seta02b018a13b117a24b216a35b315a46b414a57b513a68b612a79b711ce19ab/ba1u274ls245图图 3-63-6 电子钟原理图电子钟原理图当接入电源时,数字电子钟以秒为单位开始计时。运行状态下,按下控制按键 s-set,对秒进行调整;按下 m-set 调整分钟;按下 h-set 对小时进行调整。这样通过三个按键,分别对时、分、秒进行调整,从而实现调时。- 16

29、 -第第 4 4 章章 软件设计软件设计在软件设计中,整个程序的主框架是以定时 1s 计算的方式来实现电子钟。定时 1s 的程序段,使用动态显示程序实现延时,既完成了延时,也完成了数字的显示。在计算程序中,使对应于时、分、秒的变化量按照 60 进制和 24 进制进行计算,动态显示程序直接引用这些变量,达到显示的数字也随之不断变化,即完成了电子钟的功能。其软件功能模块主要有键输入程序、中断程序、显示程序,以及延时程序。需要说明的是,这里设计的是简易的电子钟,主要是用程序运行来计算时间,这样用程序来确定出 1s 的时间精度是很有限的,所以整个时钟的精度不太高。4.14.1 主程序的设计主程序的设计

30、初始化将时、分、秒各单元的内容清空,置 t0 为计数器方式 1,分别给计数器的高 8 位和低 8 位赋计数初值,启动 t0 工作。键入一个按键,如执行此动作,秒值加 1,否则重新键如按键。 主程序模块:主程序流程图,如图 4-1 所示 初始化键输入开始键执行结束图图 4-14-1 主程序流程图主程序流程图4.24.2 键输入程序键输入程序键输入程序用于调整时间。以秒为例,按下按键 s-set,判断 s-set 是否真的被按下,若没有键按下,转到 a1 程序段,再次键入按键,重新判断。若按键按下了,则调用延时程序,消除抖动现象秒值加 1,当秒值大于 60 时,秒清零,进行下一次计时,同时分加一,

31、并转到j0 显示。此过程循环执行,其程序流程图如图 4-2 所示:- 17 -显示s-set 是否按下否按下秒值加 1秒60 ?清零n调用延时yyn图图 4-24-2 键输入程序流程图键输入程序流程图a1:lcalldisplay;调用延时程序jnbs_set,s1;判断按键是否按下jnbm_set,s2jnbh_set,s3ljmpa1s1: lcalldelay;去抖动jbs_set,a1incsecond;秒值加 1mova,secondcjnea,#60,j0;判断是否加到 60 秒movsecond,#0 ;秒清 0ljmpj0j0:jbs_set,a1lcalldisplay ;调

32、用显示sjmpj04.34.3 显示程序显示程序 显示其时、分、秒的数值,和两个分隔符。以显示秒为例,当 p3.7 输入高电平时,- 18 -秒的个位所对应的字段码点亮,显示其秒的个位;当秒有十位输入时,p3.6 输入高电平,秒所十位对应的字段码点亮,显示其秒十位。其程序流程图如图 4-3 所示:取字段码取字位码显示秒个位显示秒十位调用延时图图 4-34-3 显示程序流程图显示程序流程图display:mov a,second;显示秒 movb,#10 divab clrp3.6 movca, a+dptr ;取字段码 movp0, a lcalldelay ;调用延时 setbp3.6 ;显

33、示秒十位mova,bclrp3.7movca,a+dptr ;取字段码movp0,alcalldelay ; 调用延时,去抖动setbp3.7 ;显示秒个位clrp 延时程序延时程序 按键抖动时间一般为 5ms10ms,因此延时 10ms,其流程图如图 4-4 所示:- 19 -#10 送 r6#250 送 r7返回(r6)=(r7) ?yn图图 4-44-4 延时程序流程图延时程序流程图delay:movr6,#10 ;延时 10msd1:movr7,#250djnzr7,$djnzr6,d1ret4.54.5 中断程序中断程序 中断程序主要用于控制显示的字符。当秒值大于

34、60 时,秒清零,重新计数,分值加 1,秒、分同时显示;当分值大于 60 时,分清零,重新计数,小时加 1,秒、分、时同时显示,当小时大于 23 时,一天的计时完毕,秒、分、时均清零,进行第二天的计时。此任务循环执行。其程序流程图如图 4-5 所示:- 20 -秒加 1秒59?小时23?分59?秒清 0,分加 1小时清 0分清 0,时加 1nyyynn图图 4-44-4 中断程序流程图中断程序流程图display: mova,second;显示秒movb,#10divabclrp3.6movca, a+dptrmovp0, alcalldelay ;调用延时setbp3.6 ;显示秒的十位mo

35、va,b- 21 -clrp3.7movca,a+dptrmovp0,alcalldelaysetbp3.7 ;显示秒的个位clrp3.5movp0,#40h;显示分隔符lcalldelaysetbp3.5mova,minute;显示分钟movb,#10divabclrp3.3movca,a+dptrmov p0,alcalldelaysetbp3.3 ;显示分的十位mova,bclrp3.4movca,a+dptrmovp0,alcalldelaysetbp3.4 ;显示分个位clrp3.2movp0,#40h;显示分隔符lcalldelaysetbp3.2 mova,hour;显示小时mo

36、vb,#10divabclrp3.0movca,a+dptrmov p0,alcalldelaysetbp3.0 ;显示时的十位- 22 -mova,bclrp3.1movca,a+dptrmovp0,alcalldelaysetbp3.1 ;显示时的个位ret- 23 -第第 5 5 章章 调试与运行调试与运行5.15.1 电路仿真电路仿真 此设计的电路在单片机仿真软件proteus.professional.7.1中进行仿真,仿真电路如图 5-1 所示:a7a7a6a6a5a5a4a4a3a3a2a2a1a1a0a0s7b7b6b5b4b3b2b1b0s6s5s4s3s2s1s0b0b1b

37、2b3b4b5b6b7s0s1s2s3s4s5s6s7xtal218xtal119ale30ea31psen29rst9p0.0/ad039p0.1/ad138p0.2/ad237p0.3/ad336p0.4/ad435p0.5/ad534p0.6/ad633p0.7/ad732p1.01p1.12p1.23p1.34p1.45p1.56p1.67p1.78p3.0/rxd10p3.1/txd11p3.2/int012p3.3/int113p3.4/t014p3.7/rd17p3.6/wr16p3.5/t115p2.7/a1528p2.0/a821p2.1/a922p2.2/a1023p2.3

38、/a1124p2.4/a1225p2.5/a1326p2.6/a1427u1at89c51s-setm-seth-seta02b018a13b117a24b216a35b315a46b414a57b513a68b612a79b711ce19ab/ba1u274ls245图图 5-15-1 电子钟仿真电路图电子钟仿真电路图5.25.2 调试和运行调试和运行 在 keil (单片机汇编) c51 软件中编写好的程序,将程序放入单片机仿真软件中,结合硬件电路进行调试与运行。 通过按键对时间进行调整。如显示时间为 14-30-22,既是 14 点 30 分 22 秒,通过以下调整则可实现。(1)按动

39、s-set 键,将秒调到 22;- 24 -(2)按动 m-set 键,将分调到 30;(3)按动 h-set 键,将时调到 14。 则将时间调到了所要显示的时间 14-30-22,通过此方法可将时间调整到任何需要显示的时间。- 25 -第第 6 6 章章 结结 论论 单片机是一门应用性很强的学科,课程设计是培养我们综合运用所学知识,发现、提出、分析和解决实际问题,锻炼实践能力的重要环节,是对我们实际工作能力的具体训练和考察过程,为自己今后从事与单片机控制系统有关的工作打下了基础。虽然在做课程设计以前已经系统的把单片机课本认真的学习了一下,但是在刚开始时还是有点一头雾水,不知道该从哪里下手。令

40、人欣慰的是经过几周的学习,虽然过程很艰辛,问了很多朋友,但是总算实现了定时闹钟的功能,所有的努力都很值得。这几周的大部分时间都在研究程序怎么处理,在这个过程中加深了我对汇编语言命令的应用,而且也更加了解到软硬件配套的重要性。以下是我本次单片机课程设计的几点心得与体会:1. 在设计程序之前,务必要对所学单片机课程的内容有一个系统的了解,知道单片机片内片外的内容及其功能。2. 设计程序采用什么编程语言并不是非常重要,关键要有一个清晰的思路和一个完整的软件流程图。模块化的设计思想在程序设计中的作用是十分大的,它可以为你提供一个比较清晰的思路,并且很容易找到头绪,不至于在设想一个程序时感觉到无从下手。

41、3. 在设计程序时,不能妄想一次就将整个程序设计好,反复修改,不断改进是程序设计的必经之路。程序刚开始编好时,一般情况下会存在很多错误,要不断地修改,不断的改进才能达到预期的目的,编写程序的时间并不是很长,主要是修改程序会花很多时间。4. 要养成注释程序的好习惯,一个程序的完美与否不仅仅是实现功能,而应该让人一看就能明白你的思路,这样也为资料的保存和交流提供了方便。刚开始我在编写程序时,很不习惯于写注释,感觉很麻烦,而且没用,但是在修改的过程中我就遇到了较大的麻烦,以至于不得不重新的作了注释,以增加程序的易读性,从而使修改过程变得容易一些。 总之,通过这次课程设计不仅使我巩固了本课程所学的基本

42、知识,还使我具有了撰写设计报告的初步训练能力,我相信这些能力在我以后的工作或者是再学习中一定会起到不小的作用,看到自己几周的小成果,感觉一切的辛苦和艰难都是值得的。- 26 -致致 谢谢本文从拟定题目到定稿,经历了很长一段时间。在本论文完成之际,首先要向我的导师邹老师致以诚挚的谢意。在论文的写作过程中,邹老师给予我许许多多的帮助,邹老师不厌其烦地为我讲解毕业设计中繁琐的问题,并且多次提出宝贵意见,使我的毕业设计能够更完整,更充实。同时,还要感谢三年中孜孜不倦的为我们讲课的老师们,是他们毫无保留地将他们的知识传授给我们,才使得今天的我能够顺利的完成我的毕业设计,感谢漯河职业技术学院,是这里给我提

43、供了良好的学习环境和生活环境,让我的大学生活丰富多彩,让我对今后的生活更加充满了信心。另外,衷心感谢我的同窗同学们,在我毕业论文写作中,与他们的探讨交流使我受益颇多;同时,他们也给了我很多无私的帮助和支持,我在此深表谢意!最后,向我亲爱的家人和朋友表示深深的谢意,他们给予我的爱、理解、关心和支持是我不断前进的动力。“惧怀逸兴思斗志,欲上青天揽日月。”- 27 -参考文献参考文献1.张大明,单片机控制实训指导及综合应用实例m。北京:机械工业出版社,2007.2.任万强。单片机原理与应用m。北京:中国电力出版社,2007. 3.周坚。单片机 c 语言轻松入门m。北京:北京航天航空大学出版社,200

44、6.4.汪德彪,mcs-51 单片机原理及接口技术m,北京:电子工业出版社,2008. 5.张国锋,单片机原理及应用m,北京:机械工业出版社,2009.6.谭浩强.c 程序设计m.北京:清华大学出版社,19997.陈娟.无刷直流电机的电梯门控制系统研究d.吉林:吉林大学,20068.顾明.无刷直流电机控制系统设计d.大连:大连理工大学,2006 9.杨帆.具有 pid 自整定功能的温度控制器研究与实现d.大连:大连理工大学,200610.姚剑峰.基于 pwm 技术的电动机模拟器d.天津:天津大学,200611.宋健,姜军生,赵文亮,孙学岩.基于单片机的直流电机 pwm 调速系统j.农业化研究,

45、2006- 28 -附录一附录一 系统原理图系统原理图a7a7a6a6a5a5a4a4a3a3a2a2a1a1a0a0s7b7b6b5b4b3b2b1b0s6s5s4s3s2s1s0b0b1b2b3b4b5b6b7s0s1s2s3s4s5s6s7xtal218xtal119ale30ea31psen29rst9p0.0/ad039p0.1/ad138p0.2/ad237p0.3/ad336p0.4/ad435p0.5/ad534p0.6/ad633p0.7/ad732p1.01p1.12p1.23p1.34p1.45p1.56p1.67p1.78p3.0/rxd10p3.1/txd11p3.2

46、/int012p3.3/int113p3.4/t014p3.7/rd17p3.6/wr16p3.5/t115p2.7/a1528p2.0/a821p2.1/a922p2.2/a1023p2.3/a1124p2.4/a1225p2.5/a1326p2.6/a1427u1at89c51s-setm-seth-seta02b018a13b117a24b216a35b315a46b414a57b513a68b612a79b711ce19ab/ba1u274ls245- 29 -附录二附录二 元件清单元件清单序号名称型号规格数量1单片机at89c511 片2译码驱动器74ls2451 片3led 数码管

47、7seg-mpx8-cc-blue1 个4按键button3 个5导线若干- 30 -附录三 程序清单s_setbitp1.0;数字钟秒控制位m_setbitp1.1;分钟控制位h_setbitp1.2;小时控制位secondequ30hminuteequ31hhourequ32htcntequ34h org00hsjmpstartorg0bhljmpint_t0 start: movdptr,#tablemovhour,#0;初始化movminute,#0movsecond,#0movtcnt,#0movtmod,#01h ;置 t0 为计数器方式 1movth0,#(65536-50000

48、)/256;定时 50 毫秒movtl0,#(65536-50000)mod 256movie,#82h setb tr0 ;启动 t0 工作a1: lcall displayjnbs_set,s1jnbm_set,s2jnbh_set,s3ljmpa1s1: - 31 - lcalldelay;去抖动jbs_set,a1incsecond;秒值加 1mova,secondcjnea,#60,j0;判断是否加到 60 秒movsecond,#0ljmpj0s2: lcalldelay jbm_set,a1k1: incminute;分钟值加 1mova,minutecjnea,#60,j1;判

49、断是否加到 60 分movminute,#0ljmpj1s3: lcalldelayjbh_set,a1k2: inchour;小时值加 1mova,hourcjnea,#24,j2;判断是否加到 24 小时movhour,#0 ljmpj2 j0:jbs_set,a1lcalldisplaysjmpj0j1:jb m_set,a1 lcalldisplay- 32 -sjmpj1j2: jb h_set,a1 lcall displaysjmp j2 int_t0: movth0,#(65536-50000)/256movtl0,#(65536-50000)mod 256inctcntmov

50、a,tcntcjnea,#20,retune;计时 1 秒incsecondmovtcnt,#0mova,secondcjnea,#60,retuneincminutemovsecond,#0mova,minutecjnea,#60,retuneinchourmovminute,#0mova,hourcjnea,#24,retunemovhour,#0 retune: retidisplay: mova,second;显示秒movb,#10divabclrp3.6movca, a+dptr- 33 -movp0, alcalldelaysetbp3.6mova,bclrp3.7movca,a+

51、dptrmovp0,alcalldelaysetbp3.7clrp3.5movp0,#40h;显示分隔符lcalldelaysetbp3.5mova,minute;显示分钟movb,#10divabclrp3.3movca,a+dptrmovp0,alcalldelaysetbp3.3mova,bclrp3.4movca,a+dptrmovp0,alcalldelaysetbp3.4clrp3.2movp0,#40h;显示分隔符lcalldelaysetbp3.2 mova,hour;显示小时movb,#10divab- 34 -clrp3.0movca,a+dptrmovp0,alcalld

52、elaysetbp3.0mova,bclrp3.1movca,a+dptrmovp0,alcalldelaysetbp3.1rettable: db 3fh,06h,5bh,4fh,66hdb6dh,7dh,07h,7fh,6fhdelay: movr6,#10d1:movr7,#250djnzr7,$djnzr6,d1retend- 35 -毕业设计(论文)成绩评定表毕业设计(论文)成绩评定表系别: 填表日期: 年 月 日学生姓名学号班级设计(论文)题目单片机数字时钟设计指导教师意见: 指导教师职称成绩- 36 -g an employment tribunal claiemployment

53、 tribunals sort out disagreements between employers and employees.you may need to make a claim to an employment tribunal if:you dont agree with the disciplinary action your employer has taken against youyour employer dismisses you and you think that you have been dismissed unfairly.for more informat

54、ion about dismissal and unfair dismissal, see dismissal.you can make a claim to an employment tribunal, even if you havent appealed against the disciplinary action your employer has taken against you. however, if you win your case, the tribunal may reduce any compensation awarded to you as a result

55、of your failure to appeal.remember that in most cases you must make an application to an employment tribunal within three months of the date when the event you are complaining about happened. if your application is received after this time limit, the tribunal will not usually accept i.if you are wor

56、ried about how the time limits apply to you, take advice from one of the organisations listed under further help.employment tribunals are less formal than some other courts, but it is still a legal process and you will need to give evidence under an oath or affirmation.most people find making a clai

57、m to an employment tribunal challenging. if you are thinking about making a claim to an employment tribunal, you should get help straight away from one of the organisations listed under further help.if you are being represented by a solicitor at the tribunal, they may ask you to sign an agreement wh

58、ere you pay their fee out of your compensation if you win the case. this is known as a damages-based agreement. in england and wales, your solicitor cant charge you more than 35% of your compensation if you win the case.if you are thinking about signing up for a damages-based agreement, you should m

59、ake sure youre clear about the terms of the agreement. it might be best to get advice from an experienced adviser, for example, at a citizens advice bureau. to find your nearest cab, including those that give advice by e-mail, click on nearest cab.for more information about making a claim to an empl

60、oyment tribunal, see employment tribunals.the (lack of) air up there watch mcayman islands-based webb, the head of fifas anti-racism taskforce, is in london for the football associations 150th anniversary celebrations and will attend citys premier league match at chelsea on sunday.i am going to be a

温馨提示

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

评论

0/150

提交评论