基于单片机的简易电子时钟单片机的科研实践学位论文Word文件下载.docx

上传人:b****6 文档编号:17299762 上传时间:2022-12-01 格式:DOCX 页数:26 大小:387.79KB
下载 相关 举报
基于单片机的简易电子时钟单片机的科研实践学位论文Word文件下载.docx_第1页
第1页 / 共26页
基于单片机的简易电子时钟单片机的科研实践学位论文Word文件下载.docx_第2页
第2页 / 共26页
基于单片机的简易电子时钟单片机的科研实践学位论文Word文件下载.docx_第3页
第3页 / 共26页
基于单片机的简易电子时钟单片机的科研实践学位论文Word文件下载.docx_第4页
第4页 / 共26页
基于单片机的简易电子时钟单片机的科研实践学位论文Word文件下载.docx_第5页
第5页 / 共26页
点击查看更多>>
下载资源
资源描述

基于单片机的简易电子时钟单片机的科研实践学位论文Word文件下载.docx

《基于单片机的简易电子时钟单片机的科研实践学位论文Word文件下载.docx》由会员分享,可在线阅读,更多相关《基于单片机的简易电子时钟单片机的科研实践学位论文Word文件下载.docx(26页珍藏版)》请在冰豆网上搜索。

基于单片机的简易电子时钟单片机的科研实践学位论文Word文件下载.docx

5.2硬件调试17

5.3实物调试17

结论19

参考文献20

附录1元件清单21

附录2实物图22

附录3程序代码23

基于单片机的简易电子钟设计

摘要:

单片机自20世纪70年代问世以来,以其极高的性能价格比,受到人们的重视和关注,应用很广、发展很快。

单片机体积小、重量轻、抗干扰能力强、环境要求不高、价格低廉、可靠性高、灵活性好、开发较为容易。

由于具有上述优点,在我国,单片机已广泛地应用在工业自动化控制、自动检测、智能仪器仪表、家用电器、电力电子、机电一体化设备等各个方面,而51单片机是各单片机中最为典型和最有代表性的一种。

这次毕业设计通过对它的学习、应用,以STC89C51单片机为核心,辅以必要的电路,设计了一个简易的电子时钟,它由5V直流电源供电,通过数码管能够准确显示时间,调整时间,从而到达学习、设计、开发软、硬件的能力。

数字钟是采用数字电路实现对“时”、“分”、“秒”数字显示的计时装置。

数字钟的精度、稳定度远远超过老式机械钟。

在这次设计中,我们采用LED数码管显示时、分、秒,以24小时计时方式,根据数码管动态显示原理来进行显示,用12MHz的晶振产生振荡脉冲,定时器计数。

在此次设计中,电路具有显示时间的其本功能,还可以实现对时间的调整。

数字钟是其小巧,价格低廉,走时精度高,使用方便,功能多,便于集成化而受广大消费的喜爱,因此得到了广泛的使用。

关键词:

单片机,数码管,电子时钟

第1章概述

1.1课题意义

20世纪末,电子技术获得了飞速的发展,在其推动下,现代电子产品几乎渗透了社会的各个领域,有力地推动了社会生产力的发展和社会信息化程度的提高,同时也使现代电子产品性能进一步提高,产品更新换代的节奏也越来越快。

目前,单片机正朝着高性能和多品种方向发展趋势将是进一步向着CMOS化、低功耗、小体积、大容量、高性能、低价格和外围电路内装化等几个方面发展。

单片机模块中最常见的是数字钟,数字钟是一种用数字电路技术实现时、分、秒计时的装置,与机械式时钟相比具有更高的准确性和直观性,且无机械装置,具有更更长的使用寿命,因此得到了广泛的使用。

现今,高精度的计时工具大多数都使用了石英晶体振荡器,由于电子钟,石英表,石英钟都采用了石英技术,因此走时精度高,稳定性好,使用方便,不需要经常调校,数字式电子钟用集成电路计时时,译码代替机械式传动,用LED显示器代替显示器代替指针显示进而显示时间,减小了计时误差,这种表具有时,分,秒显示时间的功能,还可以进行时、分和秒的校对,片选的灵活性好。

时钟电路在计算机系统中起着非常重要的作用,是保证系统正常工作的基础。

在一个单片机应用系统中,时钟有两方面的含义:

一是指为保障系统正常工作的基准振荡定时信号,主要由晶振和外围电路组成,晶振频率的大小决定了单片机系统工作的快慢;

二是指系统的标准定时时钟,即定时时间,它通常有两种实现方法:

一是用软件实现,即用单片机内部的可编程定时/计数器来实现,但误差很大,主要用在对时间精度要求不高的场合;

二是用专门的时钟芯片实现,在对时间精度要求很高的情况下,通常采用这种方法。

本文主要介绍用单片机内部的定时/计数器来实现电子时钟的方法,本设计由单片机STC89C51单片机和LED数码管为核心,辅以必要的电路,构成了一个单片机电子时钟。

1.2课题内容

此设计是在数码管上显示时、分和秒,电路包括:

键盘、单片机、显示驱动电路及发生驱动。

各部分说明:

(1)键盘用于校正、调节数码管上显示的时间。

(2)单片机通过输出各种电脉冲信号开驱动控制各部分正常工作。

(3)单片机发送的信号经过显示电路通过译码最终在数码管上显示出来。

(4)整点或半点蜂鸣器响,小灯整点闪10下,半点的时候闪5下。

系统工作过程:

时间的主要处理过程是在CPU中完成的。

CPU会随时对时间进行读取数据的操作。

在读取了相应的寄存器的值后,CPU将读取的值进行处理,再通过I/O口把数据显示在数码管上。

第二章单元电路方案论证

根据设计要求,本系统主要由控制器模块、显示驱动模块和输入模块构成。

为较好的实现各模块的功能,我们分别设计了以下几种方案并分别进行了论证。

2.1控制器模块

方案1:

采用51系列作为系统控制器

单片机算术运算功能强,软件编程灵活、自由度大,可用软件编程实现各种算法和逻辑控制。

由于其功耗低、体积较小、技术成熟和成本低等优点,在各个领域应用广泛。

而且抗干扰性能好。

方案2:

采用凌阳系列单片机为系统的控制器

凌阳系列单片机可以实现各种复杂的逻辑功能,模块大,密度高,它将所有器件集成在一块芯片上,减少了体积,提高了稳定性。

凌阳系列单片机提高了系统的处理速度,适合作为大规模实时系统的控制核心。

因51单片机价格比凌阳系列低得多,且本设计不需要很高的处理速度,从经济和方便使用角度考虑,本设计选择了方案1。

2.2计时模块

数字时钟是本设计的最主要的部分。

根据需要,可利用两种方案实现。

方案一:

本方案采用Dallas公司的专用时钟芯片DS12C887。

该芯片内部采用石英晶体振荡器,其芯片精度不大于10ms/年,且具有完备的时钟闹钟功能,因此,可直接对其以用于显示或设置,使得软件编程相对简单。

为保证时钟在电网电压不足或突然掉电等突发情况下仍能正常工作,芯片内部包含锂电池。

当电网电压不足或突然掉电时,系统自动转换到内部锂电池供电系统。

而且即使系统不上电,程序不执行时,锂电池也能保证芯片的正常运行,以备随时提供正确的时间。

方案二:

本方案完全用软件实现数字时钟。

原理为:

在单片机内部存储器设三个字节分别存放时钟的时、分、秒信息。

利用定时器与软件结合实现1秒定时中断,每产生一次中断,存储器内相应的秒值加1;

若秒值达到60,则将其清零,并将相应的分字节值加1;

若分值达到60,则清零分字节,并将时字节值加1;

若时值达到24,则将十字节清零。

该方案具有硬件电路简单的特点。

但由于每次执行程序时,定时器都要重新赋初值,所以该时钟精度不高。

而且,由于是软件实现,当单片机不上电,程序不执行时,时钟将不工作。

基于硬件电路的考虑,本设计采用方案二完成数字时钟的功能。

2.3显示模块

采用LED数码管

显示用LED数码管。

虽然显示的内容有限,但是也可以显示数字和几个英文字母,在此设计中已经足够了,并且价格比液晶字符式要低的多,为了降低设计制作的成本,在此设计中我们选用LED数码管显示。

采用液晶字符显示器

显示用液晶,可以用软件达到很好的控制,硬件不复杂,液晶字符显示器可以显示很丰富的内容,显示清晰,但是液晶字符式价格昂贵,在本设计中不需要用到复杂的显示内容,因此我们放弃了此方案。

从经济的角度考虑,我们选择了方案1。

2.4最终方案

经过反复论证,最终确定了如下方案:

(1)采用STC89C51单片机作为主控制器。

(2)采用单片机内部定时器计时。

(3)采用LED数码管作为显示器。

第三章系统硬件介绍

本设计采用STC89C51单片机作为主控制器,外部加上74HC573驱动数码管。

系统总体框图如下:

图1系统总体框图

3.1STC89C51单片机简介

单片机是美国STC公司最新推出的一种新型51内核的单片机。

片内含有Flash程序存储器、SRAM、UART、SPI、PWM等模块。

(一)STC89C51主要功能、性能参数如下:

(1)内置标准51内核,机器周期:

增强型为6时钟,普通型为12时钟;

(2)工作频率范围:

0~40MHZ,相当于普通8051的0~80MHZ;

(3)STC89C51RC对应Flash空间:

4KB;

(4)内部存储器(RAM):

512B;

(5)定时器\计数器:

3个16位;

(6)通用异步通信口(UART)1个;

(7)中断源:

8个;

(8)有ISP(在系统可编程)\IAP(在应用可编程),无需专用编程器\仿真器;

(9)通用I\O口:

32\36个;

(10)工作电压:

3.8~5.5V;

(11)外形封装:

40脚PDIP、44脚PLCC和PQFP等。

(二)STC89C51单片机的引脚说明

如图2所示:

图2STC89C51单片机引脚图

VCC:

供电电压;

GND:

接地。

P0口:

P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。

当P1口的管脚第一次写1时,被定义为高阻输入。

P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。

在FIASH编程时,P0口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。

P1口:

P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。

P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。

在FLASH编程和校验时,P1口作为第八位地址接收。

P2口:

P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。

并因此作为输入时,P2口的管脚被外部拉低,将输出电流。

这是由于内部上拉的缘故。

P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。

在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。

P2口在FLASH编程和校验时接收高八位地址信号和控制信号。

P3口:

P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。

当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。

作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。

P3.0RXD(串行输入口);

P3.1TXD(串行输出口);

P3.2/INT0(外部中断0);

P3.3/INT1(外部中断1);

P3.4T0(记时器0外部输入);

P3.5T1(记时器1外部输入);

P3.6/WR(外部数据存储器写选通);

P3.7/RD(外部数据存储器读选通);

P3口同时为闪烁编程和编程校验接收一些控制信号。

RST:

复位输入。

当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。

ALE/PROG:

当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。

在FLASH编程期间,此引脚用于输入编程脉冲。

在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。

因此它可用作对外部输出的脉冲或用于定时目的。

然而要注意的是:

每当用作外部数据存储器时,将跳过一个ALE脉冲。

如想禁止ALE的输出可在SFR8EH地址上置0。

此时,ALE只有在执行MOVX,MOVC指令是ALE才起作用。

另外,该引脚被略微拉高。

如果微处理器在外部执行状态ALE禁止,置位无效。

/PSEN:

外部程序存储器的选通信号。

在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。

但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。

/EA/VPP:

当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。

注意加密方式1时,/EA将内部锁定为RESET;

当/EA端保持高电平时,此间内部程序存储器。

在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。

XTAL1:

反向振荡放大器的输入及内部时钟工作电路的输入。

XTAL2:

来自反向振荡器的输出。

(三)STC89C51单片机最小系统:

最小系统包括单片机及其所需的必要的电源、时钟、复位等部件,能使单片机始终处于正常的运行状态。

用STC89C52单片机构成最小应用系统时,只要将单片机接上时钟电路和复位电路即可,原理图如图3所示。

图3单片机最小系统原理图

3.2数码管驱动模块

数码管是一种把多个LED显示段集成在一起的显示设备。

有两种类型,一种是共阳型,一种是共阴型。

共阳型就是把多个LED显示段的阳极接在一起,又称为公共端。

共阴型就是把多个LED显示段的阴极接在一起,即为公共商。

阳极即为二极管的正极,又称为正极,阴极即为二极管的负极,又称为负极。

通常的数码管又分为8段,即8个LED显示段,这是为工程应用方便如设计的,分别为A、B、C、D、E、F、G、DP,其中DP是小数点位段。

而多位数码管,除某一位的公共端会连接在一起,不同位的数码管的相同端也会连接在一起。

即所有的A段都会连在一起,其它的段也是如此,这是实际最常用的用法。

数码管显示方法可分为静态显示和动态显示两种。

静态显示就是数码管的8段输入及其公共端电平一直有效。

动态显示的原理是,各个数码管的相同段连接在一起,共同占用8位段引管线;

每位数码管的阳极连在一起组成公共端。

利用人眼的视觉暂留性,依次给出各个数码管公共端加有效信号,在此同时给出该数码管加有效的数据信号,当全段扫描速度大于视觉暂留速度时,显示就会清晰显示出来。

图4数码管

本设计采用共阴数码管,显示方式为动态显示,利用数码管的dp点将小时、分钟和秒分隔开。

3.374HC573芯片介绍

74HC573包含八路D型透明锁存器,每个锁存器具有独立的D型输入,以及适用于面向总线的应用的三态输出。

所有锁存器共用一个锁存使能(LE)端和一个输出使能(OE)端。

当LE为高时,数据从Dn输入到锁存器,在此条件下,锁存器进入透明模式,也就是说,锁存器的输出状态将会随着对应的D输入每次的变化而改变。

当LE为低时,锁存器将存储D输入上的信息一段就绪时间,直到LE的下降沿来临。

当OE为低时,8个锁存器的内容可被正常输出;

当OE为高时,输出进入高阻态。

OE端的操作不会影响锁存器的状态。

本设计只用到了74HC573的驱动作用,来驱动数码管的形,使得数码管更亮,单片机直接控制数码管的位,实现数码管的驱动显示,电路中的应用图5如下:

图574HC573驱动电路

3.4按键调时模块

单片机键盘有独立键盘和矩阵式键盘两种:

独立键盘每一个I/O口上只接一个按键,按键的另一端接电源或接地(一般接地),这种接法程序比较简单且系统更加稳定;

而矩阵式键盘式接法程序比较复杂,但是占用的I/O少。

根据本设计的需要这里选用了独立式键盘接法。

在用单片机对键盘处理的时候涉及到了一个重要的过程,那就是键盘的去抖动。

这里说的抖动是机械的抖动,是当键盘在未按到按下的临界区产生的电平不稳定正常现象,并不是我们在按键时通过注意可以避免的。

这种抖动一般10~200毫秒之间,这种不稳定电平的抖动时间对于人来说太快了,而对于时钟是微秒的单片机而言则是慢长的。

硬件去抖动就是用部分电路对抖动部分加之处理,软件去抖动不是去掉抖动,而是避抖动部分的时间,等键盘稳定了再对其处理。

所以这里选择了软件去抖动,实现法是先查寻按键当有低电平出现时立即延时10~200毫秒以避开抖动(经典值为20毫秒),延时结束后再读一次I/O口的值,这一次的值如果为1表示低电平的时间不到10~200毫秒,视为干扰信号。

当读出的值是0时则表示有按键按下,调用相应的处理程序。

硬件电路如图6所示:

图6键盘控制电路图

本设计的按键功能是:

当K1按键的时候是小时加一,当K2按下的时候分钟加一,当K3按下的时候秒清零。

就是通过这3个按键实现对时间的校正。

3.5整点提示模块

整点提示模块包括LED提示和蜂鸣器提示。

本设计中半点的时候LED小灯会闪烁5次,整点的时候会闪烁10次。

图7LED提示电路

设计的声音提示是用三极管驱动蜂鸣器。

利用三极管当做开关电路可以保护单片机,还可以起到放大电流的作用,当三极管基极为高电平时,发射极截止,为低电平时,发射极导通。

报警模块如图8所示。

图8蜂鸣器驱动模块

第四章.系统软件设计

4.1编程软件KeilC51

KeilC51是美国KeilSoftware公司出品的51系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。

用过汇编语言后再使用C来开发,体会更加深刻。

Keil_c软件界面如图1所示:

图1Keil_c软件界面

该软件是一款集编程和仿真于一体的软件,它支持汇编、C语言及二者的混合编程。

4.2仿真软件proteus

Proteus软件是英国Labcenterelectronics公司出版的EDA工具软件(该软件中国总代理为广州风标电子技术有限公司)。

它不仅具有其它EDA工具软件的仿真功能,还能仿真单片机及外围器件。

它是目前最好的仿真单片机及外围器件的工具。

虽然目前国内推广刚起步,但已受到单片机爱好者、从事单片机教学的教师、致力于单片机开发应用的科技工作者的青睐。

Proteus不仅可将许多单片机实例功能形象化,也可将许多单片机实例运行过程形象化。

前者可在相当程度上得到实物演示实验的效果,后者则是实物演示实验难以达到的效果。

它的元器件、连接线路等却和传统的单片机实验硬件高度对应。

这在相当程度上替代了传统的单片机实验教学的功能,例:

元器件选择、电路连接、电路检测、电路修改、软件调试、运行结果等。

图2proteus仿真软件

4.3程序流程图

程序流程图如图3所示:

图3程序流程图

第5章调试与实现

5.1软件调试

利用KeilC编写程序,根据4.1讲诉的方法对编写的程序进行调试,调试结果如图5-1所示。

图5-1程序调试最终结果

此次程序,先调试数码管显示程序,再调试控制按键程序:

小时加、分钟加和秒清零,最后进行整点半点提示调试。

程序调试是本次设计较为困难的一部分,需要反复的调试,才能达到理想的效果。

其中时间的准确度是本设计的重点调试对象,要反复调整定时器中断的初值,来达到设计的准确性。

5.2硬件调试

利用Proteus软件进行模拟仿真,这是实物制作很重要的一步。

主要是结合编译产生的hex文件对程序进一步调试,51单片机通过加载hex文件进行仿真,通过仿真的结果检验本次设计最终的效果。

Proteus最终调试结果如图5-2所示。

图5-2Proteus最终调试结果

5.3实物调试

经过仿真软件的成功,接下来就是实物的制作,再是程序的烧写,最后进行实物的调试。

最终调试结果如图5-3、5-4所示。

图5-3半点调试

图5-4整点调试

本次调试中应注意的事项或情况有:

线路焊接好后,不要忙于通电,首先要检测有没有短路,万一有短路又通电后,将会很麻烦,容易烧毁电路板或元器件,更容易引发安全隐患。

初次按下按键的时候,按键会加好几个数,按键的延时去抖已经加了为什么还会这样呢,经过反复的查找和更改程序,最终知道原来按键的处理程序没有加等待按键释放程序,如果不加,就在轻轻按下按键的一瞬间程序已经走了好几遍,所以会出现这个情况。

再一个遇到的问题就是整点的时候小灯会闪,但是蜂鸣器不会响。

首先检测程序发现没有问题,仿真是没问题的。

通过排除发现一定是硬件的原因,用万用表测量单片机的引脚有电平变化,那一定就是蜂鸣器驱动那里的问题了,最终发现是三极管的引脚接错了,发射极和集电极接反了,重新焊接就正常了。

结论

我在这一次数字电子钟的设计过程中,很是受益匪浅。

通过对自己在大学三年时间里所学的知识的回顾,并充分发挥对所学知识的理解和对毕业设计的思考及书面表达能力,最终完成了。

这为自己今后进一步深化学习,积累了一定宝贵的经验。

撰写论文的过程也是专业知识的学习过程,它使我运用已有的专业基础知识,对其进行设计,分析和解决一个理论问题或实际问题,把知识转化为能力的实际训练。

培养了我运用所学知识解决实际问题的能力。

通过这次课程设计我发现,只有理论水平提高了;

才能够将课本知识与实践相整合,理论知识服务于教学实践,以增强自己的动手能力。

这个实验十分有意义 

我获得很深刻的经验。

通过这次课程设计,我们知道了理论和实际的距离,也知道了理论和实际想结合的重要性,也从中得知了很多书本上无法得知的知识。

我们的学习不但要立足于书本,以解决理论和实际教学中的实际问题为目的,还要以实践相结合,理论问题即实践课题,解决问题即课程研究,学生自己就是一个专家,通过自己的手来解决问题比用脑子解决问题更加深刻。

学习就应该采取理论与实践结合的方式,理论的问题,也就是实践性的课题。

这种做法既有助于完成理论知识的巩固,又有助于带动实践,解决实际问题,加强我们的动手能力和解决问题的能力。

.

参考文献

【1】51单片机C语言应用程序设计实例精讲/戴佳,戴卫恒编著.--北京:

电子工业出版社,2006.4(电子工程应用精讲系列)

【2】51单片机C语言程序设计经典实例/陈忠平编著.--北京:

电子工业出版社,2012.5(卓越工程师培养计划)

附录1元件清单

序号

名称

型号、参数

备注

数量

1

CPU

STC89C52

DIP40封装

2

数码管

7SEG-MPX4-CC

3

7SEG-MPX2-CC

4

驱动数码管

74HC573

5

晶振

11.0592MHz

49S型

6

元片电容

30pf

7

电解电容

470uf/16V

8

按钮

6*6按钮-4P

6mm×

6mm

9

电阻

1K/0.25W

金属膜1/4W

10

220/0.25

11

排阻

10k

12

蜂鸣器

13

三极管

8055

附录2实物图

附录3程序代码

/************************************************************

作品名字:

简易声光报时时钟

功能:

六位数码管显示时分秒,整点半点报时,夜间只有灯光提醒

二十四小时制

到整点时长鸣1次,LED闪烁10次

到半点时短促鸣响1次,LED闪烁5次

制作说明:

P0接数码管段选,P2低6位接数码管位

**************************************************************/

#include<

reg52.h>

//头文件

#defineucunsignedchar

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 高等教育 > 研究生入学考试

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

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