基于单片机的电子时钟的设计毕业答辩论文Word格式文档下载.docx

上传人:b****3 文档编号:7020740 上传时间:2023-05-07 格式:DOCX 页数:38 大小:362.45KB
下载 相关 举报
基于单片机的电子时钟的设计毕业答辩论文Word格式文档下载.docx_第1页
第1页 / 共38页
基于单片机的电子时钟的设计毕业答辩论文Word格式文档下载.docx_第2页
第2页 / 共38页
基于单片机的电子时钟的设计毕业答辩论文Word格式文档下载.docx_第3页
第3页 / 共38页
基于单片机的电子时钟的设计毕业答辩论文Word格式文档下载.docx_第4页
第4页 / 共38页
基于单片机的电子时钟的设计毕业答辩论文Word格式文档下载.docx_第5页
第5页 / 共38页
基于单片机的电子时钟的设计毕业答辩论文Word格式文档下载.docx_第6页
第6页 / 共38页
基于单片机的电子时钟的设计毕业答辩论文Word格式文档下载.docx_第7页
第7页 / 共38页
基于单片机的电子时钟的设计毕业答辩论文Word格式文档下载.docx_第8页
第8页 / 共38页
基于单片机的电子时钟的设计毕业答辩论文Word格式文档下载.docx_第9页
第9页 / 共38页
基于单片机的电子时钟的设计毕业答辩论文Word格式文档下载.docx_第10页
第10页 / 共38页
基于单片机的电子时钟的设计毕业答辩论文Word格式文档下载.docx_第11页
第11页 / 共38页
基于单片机的电子时钟的设计毕业答辩论文Word格式文档下载.docx_第12页
第12页 / 共38页
基于单片机的电子时钟的设计毕业答辩论文Word格式文档下载.docx_第13页
第13页 / 共38页
基于单片机的电子时钟的设计毕业答辩论文Word格式文档下载.docx_第14页
第14页 / 共38页
基于单片机的电子时钟的设计毕业答辩论文Word格式文档下载.docx_第15页
第15页 / 共38页
基于单片机的电子时钟的设计毕业答辩论文Word格式文档下载.docx_第16页
第16页 / 共38页
基于单片机的电子时钟的设计毕业答辩论文Word格式文档下载.docx_第17页
第17页 / 共38页
基于单片机的电子时钟的设计毕业答辩论文Word格式文档下载.docx_第18页
第18页 / 共38页
基于单片机的电子时钟的设计毕业答辩论文Word格式文档下载.docx_第19页
第19页 / 共38页
基于单片机的电子时钟的设计毕业答辩论文Word格式文档下载.docx_第20页
第20页 / 共38页
亲,该文档总共38页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

基于单片机的电子时钟的设计毕业答辩论文Word格式文档下载.docx

《基于单片机的电子时钟的设计毕业答辩论文Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《基于单片机的电子时钟的设计毕业答辩论文Word格式文档下载.docx(38页珍藏版)》请在冰点文库上搜索。

基于单片机的电子时钟的设计毕业答辩论文Word格式文档下载.docx

MicrocontrollerisaCPU,RAM,ROM,timer/counterandavarietyofinterfacesinoneofthemicro-controller.Itssmallsize,lowcost,powerful,widelyusedinsmartproductsandindustrialautomation.And51ofthemicrocontrollerMCUisthemosttypicalandmostrepresentativeone.Thisdesignisbasedon51single-chipelectronicclock,usingbothassemblylanguagefortheprogramminglanguage,toovercomethedrawbacksofconventionalelectronicclock.

Thedesignofthebasicfunctionstobeachievedforthemicrocontrollertimerdisplay.SCMcanreflectthescalabilityadvantagesofelectronicclock,addtimetoadjust,theuseofbuttons,adjustthedateandtimeofyear,month;

tojointhelunarcalendardisplay.

Keywords:

microcontroller,electronicclock,assemblylanguage

第一章绪论

1.1单片机的定义

单片机是指一个集成在一块芯片上的完整计算机系统。

尽管他的大部分功能集成在一个小芯片上,但是它具有一个完整计算机所需要的大部分部件:

CPU、内存、内部和外部总线系统,目前大部分单片机还会具有外存。

同时集成诸如通讯接口、定时器,实时时钟等外围设备。

而现在最强大的单片机系统甚至可以将声音、图像、网络、复杂的输入输出系统集成在一块芯片上。

单片机也被称为微控制器(Microcontroller),是因为它最早被用在工业控制领域。

单片机由芯片内仅有CPU的专用处理器发展而来,最早的设计理念是通过将大量外围设备和CPU集成在一个芯片中,使计算机系统更小、更容易集成于复杂的而对体积要求严格的控制设备当中。

INTEL的Z80是最早按照这种思想设计出的处理器,从此以后,单片机和专用处理器的发展便分道扬镳[1]。

单片机技术是现代电子工程领域一门迅速发展的技术,它的应用已经渗透到各种嵌入式系统中。

可以毫不夸张地说:

掌握单片机技术是电子信息类专业学生就业的一个重要条件。

同时单片机技术又是一门实践性很强的学科。

只有我们不断地通过实践研究才能学习好单片机课程。

1.2单片机分类

按照单片机的类型,单片机有:

(1)51系列单片机,为首推系列单片机。

其中首推Intel公司的单片机4K字节的一次性程序存储器(OTP)。

(2)具有ISP功能的单片机,ISP功能能够实现在系统可编程,可以省去通用的编程器,单片机在用户板上即可下载和烧录用户程序,而无需将单片机从生产好的产品上取下。

(3)PIC系列单片机,PIC单片机系列是美国微芯公司(Microship)的产品,CPU采用RISC结构,具有精简的指令集。

PIC系列单片机的I/O口是双向的,其输出电路为CMOS互补推挽输出电路。

具有在线调试及编程(ISP)功能。

(4)AVR单片机:

AVR单片机是Atmel公司推出的较为新颖的单片机)其显著的特点为高性能、高速度、低功耗。

AVR型号的管脚,与对应的51系列兼容。

(5)AT89S52单片机:

AT89S52是一种低功耗、性能高具有8K在系统可编程Flash存储器,向下完全兼容51子系列。

1.3单片机的特点

单片机是以工业测控对象、环境、接口特点出发向着增强控制功能,提高工业环境下的可靠性方向发展。

主要特点如下:

·

种类多,型号全

提高性能,扩大容量,性能价格比高

增加控制功能,向真正意义上的“单片”机发展

低功耗

1.4单片机的应用领域

目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。

导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能IC卡,民用豪华轿车的安全保障系统,录像机、摄像机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机。

更不用说自动控制领域的机器人、智能仪表、医疗器械了。

因此,单片机的学习、开发与应用将造就一批计算机应用与智能化控制的科学家、工程师。

单片机广泛应用于仪器仪表、家用电器、医用设备、航空航天、专用设备的智能化管理及过程控制等领域[2],大致可分如下几个范畴:

·

在智能仪器仪表上的应用

在工业控制中的应用

在家用电器中的应用

在计算机网络和通信领域中的应用

单片机在医用设备领域中的应用

在各种大型电器中的模块化应用

此外,单片机在金融,科研、教育航空航天等领域都有着十分广泛的用途。

采用以上方案具有以下优势:

从经济性、可移植性、可推广性角度讲,建立这样的课程设计平台是非常有意义的;

利用仿真系统,可以节约开发时间和开发成本,同时具有很大的灵活性和可扩展性。

为了更好地学习单片机,我们采用Proteus软件与Keil软件整合构建单片机虚拟实验平台。

首先我们要在PC上利用Proteus软件自己搭建硬件电路,并利用系统提供的功能完成电路分析、系统调试和输出显示的硬件设计部分;

同时在Keil软件中编制程序,进行相应的编译和仿真,完成系统的软件设计部分。

当系统的设计工作完成后,就可以在PC上看到最终的运行效果。

最后再通过proteus设计PCB,再完成真正硬件的调试。

1.5电子时钟的特点及应用领域

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

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

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

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

一是用软件实现,即用单片机内部的可编程定时/计数器来实现,一是用专门的时钟芯片实现。

数字钟能长期、连续、可靠、稳定地下作;

同时还具有体积小,功耗低等特点,便于携带,使用方便。

同时由于数字集成电路的发展和石英晶体振荡器的广泛应用,使得数字钟的精度远远超过老式钟表.钟表的数字化给人们生产生话带来了极大的方便,而且大大地扩展了钟表原先的报时功能,数字钟是采用数字电路实现对‘时、分、秒”数字显示的计时装置。

使得电子时钟广泛应用于个人家庭、车站、码头、办公室等场所的各个角落,已成为人们口常生话中不可缺少的必需品。

第二章MCS-51单片机简介

2.1单片机的结构

MCS-51单片机是美国INTE公司于1980年推出的产品,与MCS-48单片机相比,它的结构更先进,功能更强,在原来的基础上增加了更多的电路单元和指令,指令数达111条,MCS-51单片机可以算是相当成功的产品,一直到现在,MCS-51系列或其兼容的单片机仍是应用的主流产品,MCS-51系列单片机主要包括8031、

图2.1

8051和8751等通用产品。

2.1.1MCS-51的引脚说明

MCS-51单片机结构框架[4]如图2.1_

MCS-51系列单片机中的8031、8051及8751均采用40Pin封装的双列直接DIP结构,下图是它们的引脚配置,40个引脚中,正电源和地线两根,外置石英振荡器的时钟线两根,4组8位共32个I/O口,中断口线与P3口线复用。

现在我们对这些引脚的功能加以说明:

图2.2

Pin9:

RESET/Vpd复位信号复用脚,当8051通电,时钟电路开始工作,在RESET引脚上出现24个时钟周期以上的高电平,系统即初始复位。

初始化后,程序计数器PC指向0000H,P0-P3输出口全部为高电平,堆栈指针写入07H,其它专用寄存器被清“0”。

RESET由高电平下降为低电平后,系统即从0000H地址开始执行程序。

然而,初始复位不改变RAM(包括工作寄存器R0-R7)的状态,8051的初始态。

8051的复位方式可以是自动复位,也可以是手动复位,见下图2.3。

此外,RESET/PDF还是一复用脚,Vcc掉电其间,此脚可接上备用电源,以保证单片机内部RAM的数据不丢失。

图2.3

2.2单片机的存储器

单片机的结构有两种类型,一种是程序存储器和数据存储器分开的形式,即哈佛(Harvard)结构,另一种是采用通用计算机广泛使用的程序存储器与数据存储器合二为一的结构,即普林斯顿(Princeton)结构。

INTEL的MCS-51系列单片机采用的是哈佛结构的形式。

2.2.1程序存储空间

程序存储空间可以被映射为内部程序存储器或者外部程序存储器。

AT89C51单片机内部具有的4KB程序存储器被映射到程序存储空间的0000H~0FFFH区间。

这部分程序存储空间也可以被映射为外部程序存储器,它具体被映射为哪一种程序存储器取决于引脚(引脚31)所接的电平。

当引脚为高电平,内部程序存储器被映射到这部分程序存储空间;

当引脚为低电平,外部程序存储器被映射到这部分程序存储空间。

高于0FFFH的程序存储空间只能被映射为外部程序存储器。

2.2.2数据存储空间

AT89C51的内部数据存储器有256字节,它们被分为两部分:

高128字节和低128字节。

低128字节的内部数据存储器是真正的RAM区,可以被用来写入或读出数据。

这一部分存储容量不是很大,但有很大的作用。

它可以进一步被分为3部分,如图2.4所示。

图2.4内部数据存储器低128字节

在内部数据存储器低128字节中,地址从00H~1FH的最低32个字节组成4组工作寄存器,每组有8个工作寄存器。

每组中的8个工作寄存器都被命名为从R0到R7。

在一个具体时刻,CPU只能使用其中的一组工作寄存器。

当前正在使用的工作寄存器组由位于高128字节的程序状态字寄存器(PSW)中第3位(RS0)和第4位(RS1)的数据决定。

程序状态字寄存器中的数据可以通过编程来改变,这种功能为保护工作寄存器的内容提供了很大的方便。

如果用户程序中不需要全部使用4组工作寄存器,那么剩下的工作寄存器所对应的内部数据存储器也可以作为通用数据存储器使用。

【4】工作寄存器在内部数据存储器中的地址映射如表1.1所示。

表1.1工作寄存器地址映射表

0组(RS1=0,RS0=0)

1组(RS1=0,RS0=1)

2组(RS1=1,RS0=0)

3组(RS1=1,RS0=1)

地址

寄存器

00H

R0

08H

10H

18H

01H

R1

09H

11H

19H

02H

R2

0AH

12H

1AH

03H

R3

0BH

13H

1BH

04H

R4

0CH

14H

1CH

05H

R5

0DH

15H

1DH

06H

R6

0EH

16H

1EH

07H

R7

0FH

17H

1FH

在工作寄存器区上面,内部数据存储器的地址从20H~2FH的16个字节范围内,既可以通过字节寻址的方式进入,也可以通过位寻址的方式进入,位地址范围从00H到7FH[5]。

字节地址与位地址的对应关系。

内部数据存储器地址从30H~7FH部分仅可以用作通用数据存储器。

内部数据存储器的高128字节被称为特殊功能寄存器(SFR)区。

特殊功能寄存器被用作CPU和在片外围器件之间的接口【6】,它们之间的联系方框图如图2.5所示。

图2.5殊功能寄存器(SFR)工作框图

CPU通过向相应的特殊功能存储器写入数据实现控制对应的在片外围器件的工作,从相应的特殊功能存储器读出数据实现读取对应的在片外围器件的工作结果。

在AT89C51单片机中,包括前面提到的程序状态字寄存器(PSW)的特殊功能存储器共有26个,它们离散地分布在80H~FFH的内部数据存储器地址空间范围内[7],对于没有定义的存储单元用户不能使用。

如果向这些存储单元写入数据将产生不确定的效果,从它们读取数据将得到一个随机数。

对于字节地址低位为8H或者FH的特殊功能存储器,既可以进行字节操作,也可以进行位操作。

例如前面提到的用来确定当前工作寄存器组的程序状态字寄存器(PSW),它的地址为00H,因此对它可以进行字节操作,也可以进行位操作。

采用位操作可以直接控制程序状态字寄存器中的第3位(RS0)或第4位(RS1)数据而不影响其他位的数据。

低位地址不为8H或FH的特殊功能存储器只可以进行字节操作,当需要修改这些特殊功能存储器中的某些位时,对其他的位应注意保护【3】。

片外数据存储空间可以被映射为数据存储器、扩展的输入/输出接口、模拟/数字转换器和数字/模拟转换器等。

这些外围器件统一编址,所有外围器件的地址都占用数据存储空间的地址资源,因此CPU与片外外围器件进行数据交换时可以使用与访问外部数据存储器相同的指令。

CPU通过向相应的外部数据存储器地址单元写入数据实现控制对应的片外外围器件的工作,从相应的外部数据存储器地址单元读出数据实现读取对应的片外外围器件的工作结果。

第三章数码管的简介

3.1数码管的分类

数码管按段数分为七段数码管和八段数码管,八段数码管比七段数码管多一个发光二极管单元(多一个小数点显示);

按能显示多少个“8”可分为1位、2位、4位等等数码管;

按发光二极管单元连接方式分为共阳极数码管和共阴极数码管。

共阳极数码管是指将所有发光二极管的阳极接到一起形成公共阳极(COM)的数码管。

共阳极数码管在应用时应将公共极COM接到+5V,当某一字段发光二极管的阴极为低电平时,相应字段就点亮。

当某一字段的阴极为高电平时,相应字段就不亮。

共阴极数码管是指将所有发光二极管的阴极接到一起形成公共阴极(COM)的数码管。

共阴极数码管在应用时应将公共极COM接到地线GND上,当某一字段发光二极管的阳极为高电平时,相应字段就点亮。

当某一字段的阳极为低电平时,相应字段就不亮【8】。

3.1.1数码管驱动方式的分类

数码管要正常显示,就要用驱动电路来驱动数码管的各个段码,从而显示出我们要的数字,因此根据数码管的驱动方式的不同,可以分为静态式和动态式两类。

3.1.2静态显示驱动[9]

静态驱动也称直流驱动。

静态驱动是指每个数码管的每一个段码都由一个单片机的I/O端口进行驱动,或者使用如BCD码二-十进制译码器译码进行驱动。

静态驱动的优点是编程简单,显示亮度高,缺点是占用I/O端口多,如驱动5个数码管静态显示则需要5×

8=40根I/O端口来驱动,要知道一个89S51单片机可用的I/O端口才32个呢:

),实际应用时必须增加译码驱动器进行驱动,增加了硬件电路的复杂性。

3.1.3动态显示驱动

数码管动态显示接口是单片机中应用最为广泛的一种显示方式之一,动态驱动是将所有数码管的8个显示笔划"

a,b,c,d,e,f,g,dp"

的同名端连在一起,另外为每个数码管的公共极COM增加位选通控制电各自独立的I/O线控制,当单片机输出字形码时,所有数码管都接收到相同的字形码,但究竟是那个数码管会显示出字形,取决于单片机对位选通COM端电路的控制,所以我们只要将需要显示的数码管的选通控制打开,该位就显示出字形,没有选通的数码管就不会亮。

通过分时轮流控制各个数码管的COM端,就使各个数码管轮流受控显示,这就是动态驱动。

在轮流显示过程中,每位数码管的点亮时间为1~2ms,由于人的视觉暂留现象及发光二极管的余辉效应,尽管实际上各位数码管并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示数据,不会有闪烁感,动态显示的效果和静态显示是一样的,能够节省大量的I/O端口,而且功耗更低【5】。

3.2数码管的应用

数码管是一类显示屏通过对其不同的管脚输入相对的电流会使其发亮从而显示出数字。

可以显示、时间、日期、温度等所有可以用数字代替的参数。

由于它的价格便宜使用简单,所以在电器特别是家电领域应用极为广泛,如:

空调、热水器、冰箱等等。

绝大多数热水器用的都是数码管其他家电也用液晶屏与荧光屏。

3.2.1数码管使用的电流与电压[10]

电流:

静态时,推荐使用10-15mA;

动态时,16/1动态扫描时,平均电流为4-5mA,峰值电流50-60mA。

电压:

当选择红色时,使用1.9V;

当选择绿色时,使用2.1V。

第四章电子时钟的设计

4.1可实现的功能

1.采用六位数码管显示小时、分钟、秒,并且可以任意设定时间。

2.可以查看并且设定日期,日期采用年、月、日的显示方式。

3.可以查看并设定闹钟,闹钟的显示方式采用与时间相同的显示方式。

4.可以查看并设定星期,数码管的最后一位显示星期,用数字8表示星期日。

5.系统设定详细说明:

系统的初始状态为显示时钟状态,此时显示小时、分钟、秒。

初始状态下,按K0键进入时间调整程序,按K1键查看闹钟,按K2键查看日期,按K3键查看星期。

进入时间调整状态后,首先调整分钟,此时分钟闪烁显示,按K1键加一,按K2键减一。

按K0键开始调整小时,此时小时闪烁显示,按K1键加一,按K2键减一,再按K0键后系统返回到显示时间状态。

在调整时间状态下按下K3键进入调整闹钟状态,此时显示原先的闹钟时间,并且闹钟分钟闪烁显示,此时按K1键加一,按K2键减一;

调整后按K0键转换到闹钟小时调整单元,此时按K1键加一,按K2键减一。

闹钟调整完毕后按K0键回到调整时间状态,按K3键转到调整日期状态。

在调整日期状态下,日单元闪烁显示,此时按K1键加一,按K2键减一;

按下K0键进入调整月,此时按K1键加一,按K2键减一;

按下K0键进入调整年,此时按K1键加一,按K2键减一。

此时按下K0键返回到调整时间状态,按下K3键进入调整星期状态。

在调整星期状态下,星期闪烁显示,此时按K1键加一,按K2键减一。

按下K0键返回到调整时间状态。

此时分钟闪烁显示,按K0键开始调整小时,此时小时闪烁显示,再按K0键后系统返回到显示时间状态。

4.2软件设计流程

秒计数器的计数时钟信号为1Hz的标准信号,可以由CPLD板上提供的20MHZ的信号通过分频得到。

秒计数器的进位输出信号作为分钟计数器的计数信号,分钟计数器的进位输出信号又作为小时计数器的计数信号[11].设计一个同时显示时、分、秒6个数字的数字钟,则需要6个七段显示器。

若同时点亮这6个七段显示器,则电路中会产生一个比较大的电流,很容易造成电路烧坏,我们通过扫描电路来解决这一问题,通过产生一个扫描信号LT(0)一LT(5)来控制6个七段显示器,依次点亮6个七段显示器,也就是每次只点亮一个七段显示器。

只要扫描信号的频率超过人的眼睛视觉暂留频率24Hz以上,就可以达到尽管每次点亮单个七段显示器,却能具有6个同时显示的视觉效果,而目显示也不致闪烁抖动。

其中6位扫描信号一方面控制七段显示器依次点亮,一方面控制6选1选择器输出相应显示数字。

控制电路用来将控制时钟的一些功能加入到整个正常计数的显示电路中,通过最终的显示来验证控制电路的正确性【12】。

图4.1为整体系统设计标图(下页图4.1)。

图4.1主程序流程图

图4.2计时中断服务程序流程图

4.3电子时钟设计的部分主要流程

C语言是计算机提供给用户的最快最有效的语言,也是能够利用计算机的所有硬件特性并能够直接控制硬件的唯一语言。

对于对电子时钟的设计这样的程序来说,用c语言是最快最有效的语言,下面是用c语言进行编写的基于单片机的电子时钟的设计的部分主要流程程序(见附录)

第五章电子时钟的仿真

5.1单片机调试仿真软件

源文件的输入:

Keil单片机模拟调试软件内集成了一个文本编辑器,用该文本编辑器可以编辑源程序。

打开”FILE”“NEW”就打开的此编辑器。

在图5.1中已经完成了汇编语言源文件的输入,并且完成了源程序向当前工程的添加。

然后再创建工程的步骤如下:

打开”project”“newuvisionproject”然后显示一个对话框,在对话框里选择ATMEL,在ATMEL的下拉框中找AT89C51选择后点击“OK”就创建了一个工程,注意:

创建时把此工程保存在熟悉的文件夹里,以便于后面的查找使用。

图5.1Keil单片机模拟调试软件的集成开发环境

完成c语言源文件的输入后,接着需要把c语言源文件加入工程之中。

选择图5.1中的工程管理器窗口的子目录SourceGroup1,再单击鼠标右键打开快捷菜单。

在快捷菜单中选择“AddFiletoGroup“SourceGroup1”,加入文件对话框被打开。

在这个对话框的“查找范围”下拉列表框中选择存储汇编语言源文件的文件夹,在“文件类型”下拉列表框中选择AsmSourcefile(*.a*;

*.src),这时存储的d语言源文件将显示出来。

双击要加入的文件名,或者选择要加入的文件名再单击Add按钮即可完成把d语言源文件加入工程。

这时工程管理窗口的文件选项卡中子目录SourceGroup1下出现一

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

当前位置:首页 > 解决方案 > 学习计划

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

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