数字电子时钟毕业设计

更新时间:2023-04-23 02:00:01 阅读量: 实用文档 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

设计电子钟

毕 业 设 计( 论 文 )

题作学专学

单片机的实时时 目 钟IC的系统 者 部 业 号

二〇 年 月 日

电气与信息工程

通信工程

指导教师

设计电子钟

本科生毕业设计(论文)任务书

系(教研室)主任批准 系(教研室) 签名 日期 学生姓名: 学号: 专业: 通信工程

1. 设计(论文)题目及专题 2. 学生设计(论文)期限:自 3. 设计(论文)所用原始资料: [1]苏家健,曹柏荣,汪志峰. 单片机原理与应用技术.高等教育出版社,2002. [2]严天峰 单片机应用系统设计与仿真调试. 北京航空航天大学出版社,2005.[3]廖芳.电子产品生产工艺与管理[M].电子工业出版社,2003.[4]李建民.模拟电子技术基础[M]. 清华大学出版社,2006.[5]谢嘉奎.电子线路(线性部)[M].第四版.北京:高等教育出版社,1999.[6]谢自美.电子电路设计.实验.测试[M].武昌:华中理工大学出版社,1994.[7]童诗白.模拟电子技术基础[M].第二版.北京:人民邮电出版社,1999.[8]康华光主编. 电子技术基础[M](数字部分、模拟部分),高等教育出版社,1998.[9]胡宴如.模拟电子技术[M].北京:高等教育出版社,2004,2.[10]杨志忠.数字电子技术[M].北京:高等教育出版社,2003,12.

4. 设计(论文)完成的主要内容: 通过毕业设计进一步了解8051单片机特性,掌握单片机硬件系统

结构以及软件对硬件的控制功能。熟练掌握8051单片机指令系统的应用及程序设计、开发环境。 5. 提交设计(论文)形式(设计说明书与图纸或论文等)及要求:(1)独立思考,认真分析设计题目,

找出最佳设计方案。(2)单片机最小系统能启动正常。(3)单片机最小系统能复位正常。(4)单片机通过控制相关时钟控制芯片,在数码管上实现实时时钟显示,并且能手动调整时间。(5)写出设计过程(包括原理、方案)。(6)画出完整的电路原理图,并描述各部分的功能。(7)按照规定提交符合规范要求的毕业设计论文。 6. 发题日期: 年月

指导老师(签名): 学 生(签名):

设计电子钟

毕业设计(论文)指导人评语

指导人: (签名)

年 月 日

指导人评定成绩:

设计电子钟

毕业设计(论文)评阅人评语

评阅人: (签名)

年 月 日

评阅人评定成绩:

设计电子钟

毕业设计(论文)答辩记录

日期:

学生: 学号: 班级: 题目: 提交毕业设计(论文)答辩委员会下列材料:

1 设计(论文)说明书 共 2 设计(论文)图 纸 共 3 指导人、评阅人评语 共

毕业设计(论文)答辩委员会评语:

页 页 页

答辩委员会主任: (签名)

委员: (签名)

(签名) (签名) (签名)

答辩成绩:

总评成绩:

设计电子钟

摘 要

数字时钟在日常生活中很常见,应用也很广泛。本次设计就是设计一款数字时钟,以AT89C51 单片机为核心,配备数码管显示模块、按键等功能模块。数字时钟采用24 小时制方式显示时间,在数码管上显示小时、分钟功能。 设计的核心主要包括硬件设计和软件编程两个方面。硬件电路设计主要包括中央处理单元电路、时钟电路、执行电路等几部分。软件用汇编语言来实现,主要包括主程序、键盘扫描子程序、时间设置子程序等软件模块。

关键词: AT89C51、 单片机、数码显示、中断

设计电子钟

ABSTRACT

Digital clock in daily life is very common, and is also widely used,This design is the design of a digital clock, with AT89C51, equipped with digital pipe display module, keys function modules.Digital clock with the 24-hour system in digital displays the time, displayed on the hour, minute tube function.the core of design mainly includes hardware design and software programming two aspects.Hardware circuit design includes the central processing unit circuit, clocking circuit and executive circuit segments.Software to realize with assembly language, including the main program, keyboard scan subroutines, time setting subroutines software modules.

Keywords: AT89C51, digital display, interrupts

设计电子钟

目 录

第一章 绪论 ...................................................................................................................................... 1

1.1 引言 ................................................................................................................................................ 1 1.2 方案论证 ....................................................................................................................................... 1

第二章 主要电路模块的设计 ................................................................................................. 3

2.1 系统方框图 ............................................................................................................. - 3 - 2.2 系统说明 ...................................................................................................................... 3 2.3总电路图 ....................................................................................................................... 3 2.4 单片机电路 .................................................................................................................. 4

2.4.1 时钟电路 ............................................................................................................ 4 2.4.2复位电路 ............................................................................................................. 4 2.5 按键电路 ...................................................................................................................... 5 2.6 显示电路 ...................................................................................................................... 6

2.6.1 方案论证 .......................................................................................................... 6 2.6.2 LED的结构与原理 ......................................................................................... 6 2.7 电源电路 ....................................................................................................................................... 7

第三章 软件设计流程图 ........................................................................................................... 9

3.1 时钟主程序流程图 ...................................................................................................... 9 3.2 按键扫描程序流程图 .................................................................................................. 9 3.3 时钟程序流程 ............................................................................................................ 10

第四章 电路仿真 ............................................................................................................................... 11

4.1 proteus 简介 ............................................................................................................... 11 4.2 keil简介 ...................................................................................................................... 11 4.3 设计中的实际仿真步骤 ............................................................................................ 11 4.4 仿真总结 .................................................................................................................... 14

第五章 软硬件系统的调试 ....................................................................................................... 15 参 考 文 献 ......................................................................................................................................... 17 致 谢 ....................................................................................................................................................... 18 附录A 系统硬件电路图 ............................................................................................................... 19 附录B 实物图..................................................................................................................................... 20 附录C 程序清单 ............................................................................................................................... 21

设计电子钟

第一章 绪论

1.1 引言

时钟,自从它被发明的那天起,就成为人们生活中必不可少的一种工具,尤其是在现在这个讲究效率的年代,时钟更是在人类生产、生活、学习等多个领域得到广泛的应用。然而随着时间的推移,人们不仅对于时钟精度的要求越来越高,而且对于时钟功能的要求也越来越多,时钟已不仅仅是一种用来显示时间的工具,在很多实际应用中它还需要能够实现更多其它的功能。诸如闹钟功能、日历显示功能、温度测量功能、湿度测量功能、电压测量功能、频率测量功能、过欠压报警功能等。钟表的数字化给人们的生产生活带来了极大的方便,而且大大地扩展了钟表原先的报时功能。诸如定时自动报警、按时自动打铃、时间程序自动控制、定时广播、自动起闭路灯、定时开关烘箱、通断动力设备、甚至各种定时电气的自动启用等,所有这些,都是以钟表数字化为基础的。可以说,设计多功能数字时钟的意义已不只在于数字时钟本身,更大的意义在于多功能数字时钟在许多实时控制系统中的应用。在很多实际应用中,只要对数字时钟的程序和硬件电路加以一定的修改,便可以得到实时控制的实用系统,从而应用到实际工作与生产中去。因此,研究数字时钟及扩大其应用,有着非常现实的意义。

怎样让时钟更好的为我们服务?怎样让时钟更符合实际应用的需求?这就要求人们不断设计出新型时钟,不断设计出适合实际应用的多功能时钟。本毕业设计方案正是根据以上所述并结合日常生活中对时钟功能需求的分析,运用单片机技术,设计出一个适合日常生活需要的多功能数字时钟。此多功能数字时钟除了传统的显示时间功能之外还具日历功能以及定时闹钟功能。

1.2 方案论证

方案一

采用TTL、CMOS集成电路实现的。数字钟主要由以下几个部分组成:信号源、分频器、十进制计数器、六进制计数器、二进制计数器、BCD—七段显示译码/驱动器、LED(Light-emitting-diode)七段显示数码管、时间校准电路和闹时电路。[1]

这是一种纯硬件电路系统,用时序逻辑电路实现时钟功能,用555定时器实现闹钟报时的设定。该电路具有抗干扰强、计算精确,使用元器件种类少等优点,但是这种实现方法可靠性差、控制精度低,灵活性小、线路复杂、安装调试不方便,且不具备对测温信号进行数据处理的功能。要实现测温功能必须再添加处理芯片,系统集成度低。

设计电子钟

方案二

利用可编程逻辑器件PLD(Programmable Logic Devices)实现。可编程逻辑器件PLD具有集成度高、速度快、功耗小、可靠性高等优点。且EDA(Electronic Design Automation)软件的功能和时序仿真功能使得电路的调试变得十分方便。这种方案与前一种相比,可靠性增加,同时可以很好的完成时钟的功能。但是对于温度测量,其不具备对测温数据的处理功能,无法很好的完成扩展功能的要求。同时这种方案只能选用数码管显示,显示的效果不够理想。因此,系统的灵活性不够。[2] 方案三

利用单片机内部具有的计数器实现时钟功能。以12MHz晶振为例,通过计算可知,使定时器每50ms产生一次中断,当产生20次中断后秒单元将加一,以此类推,从而实现时、分、秒的走时,并加以显示。虽然这种方法存在由于系统晶振误差、温漂、中断响应时间的不确定性及定时器重新装载时间常数所带来的误差等不足。而且用这种方法实现的时钟在断电的情况下将停止走时,通电后必须再初始化,需要重新调表。但是利用这种方法实现的系统具有一定的可扩展性。由于时钟的实现大部分是由软件的编程来实现的,因此没有前几种方案中来自硬件的束缚。只要对数字时钟的程序和硬件电路加以一定的修改,就可应用到一些实时控制的系统中去。系统的实用意义更大。

通过以上三种方案的比较,决定采用方案三。

设计电子钟

第二章 主要电路模块的设计

2.1 系统方框图

系统方框图如图2.1所示。系统要实现数字时钟的基本功能,单片机最小系统能启动正常,单片机最小系统能复位正常,单片机通过控制相关时钟控制芯片,在数码管上实现实时时钟显示,并且能手动调整时间。通过毕业设计进一步了解8051单片机特性,掌握单片机硬件系统结构以及软件对硬件的控制功能。熟练掌握8051单片机指令系统的应用及程序设计、开发环境。

图2.1 系统方框图

2.2 系统说明

系统由51系列单片机AT89C51、按键、数码管显示、电源等部分构成。单片机部分包括时钟电路、复位电路;按键部分能够实现对时间的调整、设定。三个按键的功能分别为:小时的调整,分钟的调整,复位。电源部分(试验室配备电源)可输出1个电压:5V。5V电压给小系统硬件提供电源。

2.3总电路图

电子钟总电路图见附录A所示。

设计电子钟

2.4 单片机电路

2.4.1 时钟电路

时钟电路由外接谐振器的时钟振荡器、时钟发生器及关断控制信号等组成。时钟振荡器是单片机的时钟源,时钟发生器对振荡器的输出信号进行二分频。

CPU 的时钟振荡信号有两个来源:一是采用内部振荡器,此时需要在 XTAL1 和XTAL2 脚连接一只频率范围为0—33MHZ 的晶体振荡或陶瓷振荡器及两只 30pf 电容。二是采用外部振荡,此时应将外部振荡器的输出信号接至 XTAL1 脚,将XTAL2 脚浮空。 [3]

利用单片机内部的定时功能来实现时钟的走时,通过编程实现每 50 毫秒产生一次中断,中断20 次后,秒单元加1,秒单元加到60 时,跳回到零再继续加,同时分单元加1;当分单元加到60 时,跳到零再继续加,同时时单元的个位加1,以次类推,从而实现秒、分、小时的走时。

本次设计中采用的是内部振荡器,频率为 12MHZ 的晶体振荡器及 30pf 的瓷片电容。如图2.2 所示。

图2.2 时钟电路

2.4.2复位电路

复位是指在规定的条件下,单片机自动将CPU 以及与程序运行相关的主要功能部件、I/O 口等设置为确定初始状态的过程。如果电路参数不符合规定的条件或干扰导致单片机不能正确的复位,系统将无法进行正常的工作,因此,复位电路除了要符合厂家规定的参数外,还要滤除可能的干扰。[4]

AT89S52 单片机内部有一个由施密特触发器等组成的复位电路。复位信号是从其9 脚,即RST 脚输入的。[1]AT89S52 单片机规定,当其处于正常工作基于51

单片机的

设计电子钟

数字时钟的设计状态,且振荡器工作稳定后,在RST 端有从高电平到低电平,且高电平时间大于两个机器周期的复位信号时,CPU 将完成对系统的复位。有两点需要注意:一、复位信号是高电平有效,二、高电平的保持时间必须大于两个机器周期,可见高电平保持时间与振荡频率有关。[5]

本次设计中采用上电复位电路,上电复位是指在系统上电时,RST 端自动产生复位所需要的信号将单片机复位,本次设计中的上电复位电路如图所示。上电时,RST 端高电平的维持时间取决于R(1k)和C(22uF)的值。要使单片机可靠的复位,设计中使其维持的时间足够长。如图2.3 所示。

图2.3 复位电路

2.5 按键电路

方案一:采用阵列式键盘 此类键盘是采用行列扫描方式,当按键较多时可以减少占用单片机的 I/O口数目。

方案二:采用独立式按键电路 每个键单独占有一根I/O接口线,每个I/O口的工作状态互不影响,此类键盘采用端口直接扫描方式。但是当按键较多时占用单片机的I/O数目较多。 本系统只需三个按键,因此选择方案二。

如果按键采用中断的话,可以使单片机工作更加灵活、效率更高。由于该系统要用到 3 个按键,考虑到单片机的中断资源不够,所以就只用P1.0及P1.2 和P1.3 口。电路如图2.4 所示。[6]

图2.4 按键电路

设计电子钟

2.6 显示电路

2.6.1 方案论证

方案一:采用动态显示 这种工作方式是分时轮流选通数码管的公共端,使得各个数码管轮流导通。当所有数码管依次显示一遍后,软件控制循环,使每位显示器分时点亮,外接7407组成显示电路。这种方式不但能提高数码管的发光效率,并且由于各个数码管的字段线是并联使用的,因而大大简化了硬件线路。 各个数码管虽然是分时轮流通电,但由于发光数码管具有余辉特性及人眼具有视觉暂留作用,所以适当选取循环扫描频率时,看上去所有数码管是同时点亮的,察觉不出有闪烁现象。

方案二:采用静态显示 数码管工作在静态显示方式下,共阴极或共阳极点连接在一起接地或高电平。每位的段选线与一个8 位并行口相连。只要在该位的段选线上保持段选码电平,该位就能保持相应的显示字符。该工作方式常采用串行口设定方式0 输出,外接74LS164 移位寄存器构成显示电路。

综合考虑,采用动态显示,采用一片7407芯片作为缓冲,分时选中三片数码管,从编程和提供的硬件等方面综合考虑后,决定采用动态显示的方法,如图2.5所示。

采用1片7407缓冲的方法来带动3片数码管显示。由软件控制分不同时间选中时分秒不同的三片六个数码管。电路如图2.5所示。有电路图可知P2的值和选通的数码管对应关系为:0x1F对应秒个位、0x2F对应秒十位、0x37对应分个位、0x3B对应分十位、0x3D对应时个位、0x3E对应时十位。

图2.5 显示电路 LED 显示器的结构与原理

2.6.2 LED的结构与原理

下面以最简单的七段数码显示器为例进行说明。通常用的七段数码显示器的内部有8 个发光二极管,其中7 个发光二极管组成了数字“8”,剩下一个发光二极管就是这位数字所带的小数点。数码管结构图如图2.6所示。

一般数码管内部有共阴和共阳两种连接方式。共阴就是将各个发光二极管的阴极接地,共阴极数码管如图(1)所示。图中一个发光二极管就相当于一个数码段。若给某段加上高电平,那么相对的段就会亮。根据要想显示的数值给各段数码管加上相应的高

设计电子钟

电平就可以显示不同的数值了。 共阳就是将各个发光二极管的阴极一起接在高电平上。共阳数码管如图(3)所示,从图(3)中可以看出共阳的显示器与共阴的显示器有一点区别,就是它将阳极连接在一起接到高电平上。这样在想显示某个数的时候,各个发光二极管赋低电平而不是在共阴时的高电平了,这就是共阴共阳的区别。图 2.6 是8 段LED 数码的结构示意图,其内部实质上是8 只发光二极管。

[7]

图2.6 (1)LED的引脚图

图2.6 (2)共阴数码 图2.6 (3)共阳数码

由于它内部构造不同,在显示时代码也有所不同,共阴七段LED 段选码表如表2.1 所示。

表2.1 共阴七段LED段选码

2.7 电源电路

设计电子钟

该部分有1 个输出电压5V。220V 交流市电通过电源变压器变换成交流12V 低压,再经过桥式整流电路 D1~D4 和滤波电容 2200uf 的整流和滤波,在固定式三端稳压器 LM7809 的 Vin 和 GND 两端形成一个并不十分稳定的直流电压(该电压常常会因为市电电压的波动或负载的变化等原因而发生变化)。此直流电压经过 LM7809 的稳压和 100uf 电容的滤波后,便在稳压电源的输出产生了精度高、稳定度好的直流输出9V 电压。9V 电压给可调分流基准芯片TL431 提供电源。TL431 的主要作用是给A/D 转换芯片TLC1549 提供比较精确的参考电压。9V 电源再经过LM7805 稳压后,给各个芯片提供电源。电路见图2.7。[8]

图2.7 电源电路

三端稳压器是标准化、系列化的通用线性稳压电源集成电路,以其体积小、成本低、性能好、工作可靠性高、使用简捷等特点,成为目前稳压电源中应用最为广泛的一种单片式集成稳压器件。三端稳压器的工作原理(以78 系列为例)如下:它与一般分立元件组成的串联式稳压电路基本相似。不同的是增加了启动电路、保护电路和恒流源。启动电路是为恒流源建立工作点而设置的。恒流源随着在基准电压形成和误差放大器电路中,是为了使稳压器能够在比较大的电压变化范围内正常可靠工作。在芯片内设置了两种较完善的保护电路:一是过流保护,一是过热保护。[9]

第三章 软件设计流程图

设计电子钟

3.1 时钟主程序流程图

时钟主程序流程图如图3.1所示。进入系统后首先实现程序的初始化,然后进入主程序,定时器开始计时,当定时器发生中断时刷新数码管同时显示,之后实现中断与显示的循环。

图3.1 时钟主程序流程

3.2 按键扫描程序流程图

按键扫描程序流程图如图3.2所示。主程序进入键盘扫描程序后判断是否按下了P1,0。若是按下了P1.0为了去除抖动再进行确认是否按下P1.0,当确认按下了P1.0后判断按下P1.0的次数,若按了一次则进行秒调整,若按了两次则进行分调整,若按了三次则进行时调整。然后进入显示程序段进行显示刷新。

图3.2 按键扫描程序流程

3.3 时钟程序流程

设计电子钟

时钟程序流程如图3.3所示。设计中,采用51单片机的定时器的方式一定时,所以如图所示,当程序产生定时溢出中断时要重新赋初值。[10]然后进行是否到一秒的判断,若到一秒则秒加一,若未到则直接退出中断。一秒到了加一以后进行是否秒到六十的判断,若秒到六十则秒清零,同时分加一,若秒未到六十则退出中断。分加一以后进行分是否到六十的判断,若未到六十则退出中断,若分到六十则分清零,同时小时加一。小时加一后进行小时是否到二十四的判断,若未到二十四则退出中断,若到二十四则清零,然后退出中断。

图3.3 时钟程序流程

设计电子钟

第四章 电路仿真

4.1 proteus 简介

Proteus ISIS是英国Labcenter公司开发的电路分析与实物仿真软件。它运行于Windows操作系统上,可以仿真、分析(SPICE)各种模拟器件和集成电路,该软件的特点是:①实现了单片机仿真和SPICE电路仿真相结合。具有模拟电路仿真、数字电路仿真、单片机及其外围电路组成的系统的仿真、RS232动态仿真、I2C调试器、SPI调试器、键盘和LCD系统仿真的功能;有各种虚拟仪器,如示波器、逻辑分析仪、信号发生器等。②支持主流单片机系统的仿真。目前支持的单片机类型有:68000系列、8051系列、AVR系列、PIC12系列、PIC16系列、PIC18系列、Z80系列、HC11系列以及各种外围芯片。③提供软件调试功能。在硬件仿真系统中具有全速、单步、设置断点等调试功能,同时可以观察各个变量、寄存器等的当前状态,因此在该软件仿真系统中,也必须具有这些功能;同时支持第三方的软件编译和调试环境,如Keil C51 uVision2等软件。④具有强大的原理图绘制功能。总之,该软件是一款集单片机和SPICE分析于一身的仿真软件,功能极其强大。本章介绍Proteus ISIS软件的工作环境和一些基本操作。

4.2 keil简介

单片机开发中除必要的硬件外,同样离不开软件,我们写的汇编语言源程序要变为

CPU可以执行的机器码有两种方法,一种是手工汇编,另一种是机器汇编,目前已极少使用手工汇编的方法了。机器汇编是通过汇编软件将源程序变为机器码,用于MCS-51单片机的汇编软件有早期的A51,随着单片机开发技术的不断发展,从普遍使用汇编语言到逐渐使用高级语言开发,单片机的开发软件也在不断发展,Keil软件是目前最流行开发MCS-51系列单片机的软件,这从近年来各仿真机厂商纷纷宣布全面支持Keil即可看出。Keil提供了包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(uVision)将这些部分组合在一起。运行Keil软件需要Pentium或以上的CPU,16MB或更多RAM、20M以上空闲的硬盘空间、WIN98、NT、WIN2000、WINXP等操作系统。掌握这一软件的使用对于使用51系列单片机的爱好者来说是十分必要的,如果你使用C语言编程,那么Keil几乎就是你的不二之选(目前在国内你只能买到该软件、而你买的仿真机也很可能只支持该软件),即使不使用C语言而仅用汇编语言编程,其方便易用的集成环境、强大的软件仿真调试工具也会令你事半功倍。

4.3 设计中的实际仿真步骤

本设计中,用到keil和proteus实现设计的仿真,首先在keil中编译程序,生成keil

本文来源:https://www.bwwdw.com/article/uivq.html

Top