基于单片机的定时器的设计与实现毕业设计.docx

上传人:b****5 文档编号:7600243 上传时间:2023-01-25 格式:DOCX 页数:48 大小:565.20KB
下载 相关 举报
基于单片机的定时器的设计与实现毕业设计.docx_第1页
第1页 / 共48页
基于单片机的定时器的设计与实现毕业设计.docx_第2页
第2页 / 共48页
基于单片机的定时器的设计与实现毕业设计.docx_第3页
第3页 / 共48页
基于单片机的定时器的设计与实现毕业设计.docx_第4页
第4页 / 共48页
基于单片机的定时器的设计与实现毕业设计.docx_第5页
第5页 / 共48页
点击查看更多>>
下载资源
资源描述

基于单片机的定时器的设计与实现毕业设计.docx

《基于单片机的定时器的设计与实现毕业设计.docx》由会员分享,可在线阅读,更多相关《基于单片机的定时器的设计与实现毕业设计.docx(48页珍藏版)》请在冰豆网上搜索。

基于单片机的定时器的设计与实现毕业设计.docx

基于单片机的定时器的设计与实现毕业设计

学校代码:

10128

学号:

 

 

本科毕业设计说明书

 

题目:

基于单片机的定时器的设计与实现

学生姓名:

wws

学院:

信息工程

系别:

电子信息工程

专业:

电子信息工程

班级:

...

指导教师:

...

 

二〇一二年六月

 

摘要

近年来随着计算机在社会领域的渗透和大规模集成电路的发展,单片机的应用正在不断地走向深入,由于它具有功能强,体积小,功耗低,价格便宜,工作可靠,使用方便等特点,因此特别适合于与控制有关的系统,越来越广泛地应用于自动控制,智能化仪器,仪表,数据采集,军工产品以及家用电器等各个领域,单片机往往是作为一个核心部件来使用,在根据具体硬件结构,以及针对具体应用对象特点的软件结合,以作完善。

数子时钟在日常生活中最常见,应用也最广泛。

本次做的数子时钟是以单片机(AT89C51)为核心,结合相关的元器件(时钟芯片DS1302、LCD液晶显示器),达到制作简易数字时钟的目的,文章的核心主要是硬件设计和软件编程两个大的方面。

硬件电路设计由包括中央处理单元电路、液晶显示电路、人机接口电路等几部分组成,软件用汇编语言来实现。

其硬件部分难点在于元器件的选择、布局及焊接。

关键词:

单片机AT89C51LCD液晶显示器时钟芯片DS1302

Abstract

Recentyears,theuseofsinglechipismovingtowarddeeplywiththefilterofcomputerinthesocietyandthedevelopmentofthelargescaleintegratedcircuit.Singlechipisespeciallyequaltothesystemrelationtothecontrolbecauseofitsstrongfuntion、samllvolume、lowpowerconsumption、inexpensiveprice、credibilityworkanditshandy.itisusedintheareaofautomata、Intelligentinstrument、appearance、dataacquisition、productionofwarindustry、domesticapplianceandsoon.thesinglechipisusedusuallyasthecenterpiece,ItcanbeperfectbasesthespecificHardwareinfrastructureandaimattheintegratedhardwareandsoftwaredeviceofthespecificcomplexion.

Digitalclockisthemostcommonandthemostwidelyusedinourdailylives.Thesinglechipisthehardcoreinthedigitalclockmadeinthistimethedigitalclockcanreachthepurposeoffacilitydigitalclockwiththecorrelationpartsofanapparatus(RealTimeClockchipDS1302,Display-panelLCDansoon)Toachievethepurposeofmakingsimpledigitalclock.Thecorepartofthisarticleincluedestwoaspeacts,oneishardwaredesign,theotherissoftwareprogramming.Thehardwaredesigncircuitconsistsofthecentralprocessingunitcircuit、theliquidcrystaldisplaycircuit、theman-machineinterfacecircuit.Thedifficulitesofthehardwarepartarechoiceandlayoutofcomponents,andthecomponentsofwelding.

Keywords:

singlechipAT89C51realtimeclockchipDS1302,LCDMonitor

引言

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

时间对人们来说总是那么宝贵,工作的忙碌性和繁杂性容易使人忘记当前的时间。

忘记了要做的事情,当事情不是很重要的时候,这种遗忘无伤大雅。

但是,一旦重要事情,一时的耽误可能造成无可挽回的重大损失。

所以精确的报时系统显得尤为重要。

单片机由于将cpu,内存和一些必要的接口集成到一个芯片上,并且针对面向控制功能将结构做了一定的优化,所以它具备通用芯片不具有的特点。

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

因此,单片机被广泛应用于测控系统,智能仪表仪器,机电一体化产品,智能接口以及单片机的多系统等领域。

它的应用主要表现在以下几个方面:

(1)单片机在智能仪表中的应用

单片机广泛地用于各种仪器仪表,使仪器仪表智能化,并可以提高测量的自动化程度和精度,简化仪器仪表的硬件结构,提高其性能价格比。

(2)单片机在机电一体化中的应用

机电一体化是机械工业发展的方向。

机电一体化产品是指集成机械技术、微电子技术、计算机技术于一体,具有智能化特征的机电产品,例如微机控制的车床、钻床等。

单片机作为产品中的控制器,能充分发挥它的体积小、可靠性高、功能强等优点,可大大提高机器的自动化、智能化程度。

(3)单片机在实时控制中的应用

单片机广泛地用于各种实时控制系统中。

例如,在工业测控、航空航天、尖端武器、机器人等各种实时控制系统中,都可以用单片机作为控制器。

单片机的实时数据处理能力和控制功能,可使系统保持在最佳工作状态,提高系统的工作效率和产品质量。

(4)单片机在分布式多机系统中的应用

在比较复杂的系统中,常采用分布式多机系统。

多机系统一般由若干台功能各异的单片机组成,各自完成特定的任务,它们通过串行通信相互联系、协调工作。

单片机在这种系统中往往作为一个终端机,安装在系统的某些节点上,对现场信息进行实时的测量和控制。

单片机的高可靠性和强抗干扰能力,使它可以置于恶劣环境的前端工作。

(5)单片机在人类生活中的应用

自从单片机诞生以后,它就步入了人类生活,如洗衣机、电冰箱、电子玩具、收录机等家用电器配上单片机后,提高了智能化程度,增加了功能,倍受人们喜爱。

单片机将使人类生活更加方便、舒适、丰富多彩。

综合所述,单片机已成为计算机发展和应用的一个重要方面。

另一方面,单片机应用的重要意义还在于,它从根本上改变了传统的控制系统设计思想和设计方法。

从前必须由模拟电路或数字电路实现的大部分功能,现在已能用单片机通过软件方法来实现了。

这种软件代替硬件的控制技术也称为微控制技术,是传统控制技术的一次革命。

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

数子时钟是采用数字电路实现对时,分,秒,数字显示的计时装置,广泛用于个人家庭,车站,码头办公室等公共场所,成为人们日常生活中不可少的必需品,由于数字集成电路的发展和石英晶体振荡器的广泛应用,使得数子时钟的精度,远远超过老式钟表,钟表的数字化给人们生产生活带来了极大的方便,而且大大地扩展了钟表原先的报时功能。

诸如定时自动报警、按时自动打铃、时间程序自动控制、定时广播、自动起闭路灯、定时开关烘箱、通断动力设备、甚至各种定时电气的自动启用等,所有这些,都是以钟表数字化为基础的。

因此,研究数子时钟及扩大其应用,有着非常现实的意义。

第一章硬件介绍

1.1AT89C51简介

AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—FalshProgrammableandErasableReadOnlyMemory)的低电压,高性能CMOS8位微处理器,俗称单片机。

该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。

由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器。

AT89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。

图1-1为AT89C51单片机的管脚图

图1-1单片机管脚图

5.1.1主要管脚说明

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口也可作为AT89C51的一些特殊功能口,如下所示:

口管脚备选功能

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口同时为闪烁编程和编程校验接收一些控制信号。

1.2AT89C51结构图

图1-2AT89C51结构图

1.3DS1302时钟芯片简介

DS1302是DALLAS公司推出的涓流充电时钟芯片,内含一个实时时钟/日历和31字节静态RAM,可以通过串行接口与单片机进行通信。

实时时钟/日历电路提供秒、分、时、日、星期、月、年的信息,每个月的天数和闰年的天数可自动调整,时钟操作可通过AM/PM标志位决定采用24或12小时时间格式。

DS1302与单片机之间能简单地采用同步串行的方式进行通信,仅需三根I/O线:

复位(RST)、I/O数据线、串行时钟(SCLK)。

时钟/RAM的读

/写数据以一字节或多达31字节的字符组方式通信。

DS1302工作时功耗很低,保持数据和时钟信息时,功耗小于1mW。

图1-3DS1302管脚图

各引脚的功能为:

Vcc1:

主电源;Vcc2:

备份电源。

当Vcc2>Vcc1+0.2V时,由Vcc2向DS1302供电,当Vcc2

SCLK:

串行时钟,输入,控制数据的输入与输出;

I/O:

三线接口时的双向数据线;

CE:

输入信号,在读、写数据期间,必须为高。

该引脚有两个功能:

第一,CE开始控制字访问移位寄存器的控制逻辑;其次,CE提供结束单字节或多字节数据传输的方法。

时时钟以及RAM。

虽然数据分成两种,但是对单片机的程序而言,其实是一样的,就是对特定的地址进行读写操作。

图1-4DS1302的内部结图

DS1302含充电电路,可以对作为后备电源的可充电电池充电,并可选择充电使能和串入的二极管数目,以调节电池充电电压。

不过对我们目前而言,最需要熟悉的是和时钟相关部分的功能,对于其它参数请参阅数据手册。

DS1302的工作原理

DS1302工作时为了对任何数据传送进行初始化,需要将复位脚(RST)置为高电平且将8位地址和命令信息装入移位寄存器。

数据在时钟(SCLK)的上升沿串行输入,前8位指定访问地址,命令字装入移位寄存器后,在之后的时钟周期,读操作时输出数据,写操作时输出数据。

时钟脉冲的个数在单字节方式下为8+8(8位地址+8位数据),在多字节方式下为8加最多可达248的数据。

DS1302的寄存器和控制命令

对DS1302的操作就是对其内部寄存器的操作,DS1302内部共有12个寄存器,其中有7个寄存器与日历、时钟相关,存放的数据位为BCD码形式。

此外,DS1302还有年份寄存器、控制寄存器、充电寄存器、时钟突发寄存器及与RAM相关的寄存器等。

时钟突发寄存器可一次性顺序读写除充电寄存器以外的寄存器。

 

日历、时间寄存器及控制字如表1所示:

表1-1:

日历、时钟寄存器与控制字对照表

 

最后一位RD/W为“0”时表示进行写操作,为“1”时表示读操作。

DS1302内部寄存器列表如表2所示:

表1-2:

DS14302内部主要寄存器分布表

寄存器名称

命令字

取值范围

各位内容

7

6

54

3

210

秒寄存器

80H

81H

00-59

CH

10SEC

SEC

分寄存器

82H

83H

00-59

0

10MIN

MIN

小时寄存器

84H

85H

01-12或00-23

12/24

0

AHR

HR

日期寄存器

86H

87H

01-28,29,30,31

0

0

10DATE

DATE

月份寄存器

88H

89H

01-12

0

0

0-10M

MONTH

周寄存器

8AH

8BH

01-07

0

0

00

0

DAY

年份寄存器

8CH

8DH

00-99

10YEAR

YEAR

DS1302内部的RAM分为两类,一类是单个RAM单元,共31个,每个单元为一个8位的字节,其命令控制字为COH~FDH,其中奇数为读操作,偶数为写操作;再一类为突发方式下的RAM,此方式下可一次性读写所有的RAM的31个字节,命令控制字为FEH(写)、FFH(读)。

我们现在已经知道了控制寄存器和RAM的逻辑地址,接着就需要知道如何通过外部接口来访问这些资源。

单片机是通过简单的同步串行通讯与DS1302通讯的,每次通讯都必须由单片机发起,无论是读还是写操作,单片机都必须先向DS1302写入一个命令帧,这个帧的格式如表1所示,最高位BIT7固定为1,BIT6决定操作是针对RAM还是时钟寄存器,接着的5个BIT是RAM或时钟寄存器在DS1302的内部地址,最后一个BIT表示这次操作是读操作抑或是写操作。

物理上,DS1302的通讯接口由3个口线组成,即RST,SCLK,I/O。

其中RST从低电平变成高电平启动一次数据传输过程,SCLK是时钟线,I/O是数据线。

具体的读写时序参考图5,但是请注意,无论是哪种同步通讯类型的串行接口,都是对时钟信号敏感的,而且一般数据写入有效是在上升沿,读出有效是在下降沿(DS1302正是如此的,但是在芯片手册里没有明确说明),如果不是特别确定,则把程序设计成这样:

平时SCLK保持低电平,在时钟变动前设置数据,在时钟变动后读取数据,即数据操作总是在SCLK保持为低电平的时候,相邻的操作之间间隔有一个上升沿和一个下降沿。

图1-5DS1302的命令字构

1.4LCD1602液晶显示器简介

1.4.1概述

液晶(LiquidCrystal)是一种高分子材料,因其特殊的物理、化学、光学特性,广泛应用轻薄显示器上。

液晶显示器(LiquidCrystalDisplay,LCD)的主要原理是以电流刺激液晶分子产生点、线、面并配合背部灯管构成画面。

各种型号的液晶通常是按照显示字符的行数或液晶点阵的行、列数来命名。

例如,1602表示每行显示16个字符,一共可以显示两行。

这类液晶通常称为字符型液晶,只能显示ASCII码字符。

12232表示液晶显示画面由122列、32行组成,共有122*32个点来显示各种图形。

用户可以通过程序控制这些点中任何一个点显示或不显示,从而构成各种图形画面。

因此,12232称为图形型液晶。

液晶体积小,功耗低,显示操作简单。

但其有致命的弱点,即使用温度范围很窄。

通用型液晶工作温度为0到+55摄氏度,存储温度为-20到+60摄氏度。

1.4.2LCD1602

11602的外形尺寸(毫米)

图1-6LCD1602外形尺寸

2

主要技术参数

图1-7LCD1602主要技术参数

3接口信号说明

表1-3LCD1602接口信号说明

 

4基本操作时序

读状态:

输入:

RS=L,RW=H,E=H输出:

D0~D7=状态字

写指令:

输入:

RS=L,RW=L,D0~D7=指令码,E=高脉冲输出:

读数据:

输入:

RS=H,RW=H,E=H输出:

D0~D7=数据

写数据:

输入:

RS=H,RW=L,D0~D7=数据,E=高脉冲输出:

5RAM地址映射图

控制器内部带有80B的RAM缓冲区。

对应关系如下图所示。

图1-8缓冲区对应关系图

向图中的00~0F、40~4F地址中的任意处写入显示数据时,液晶可立即显示出来;当写入到10~27或50~67地址时,必须通过移屏指令将他们一移入可显示区域方可正常显示。

1602液晶模块内部的字符发生存储器(CGROM)已经存储了160个不同的点阵字符图形,如下表所示。

表1-4CGROM和CGRAM中字符代码与字符图形对应关系

 

这些字符有:

阿拉伯数字、英文字母的大小写、常用的符号、和日文假名等,每一个字符都有一个固定的代码,比如大写的英文字母“A”的代码是01000001B(41H),显示时模块把地址41H中的点阵字符图形显示出来,我们就能看到字母“A”。

6状态字说明

表1-5状态字说明

STA7

D7

STA6

D6

STA5

D5

STA4

D4

STA3

D3

STA2

D2

STA1

D1

STA0

D0

STA0—6

当前数据地址指针的数值

STA7

读写操作使能

1:

禁止0:

允许

说明:

原则上每次对控制器进行读写操作前,都必须进行读写检测,确保STA7为0。

实际上,由于单片机的操作速度慢于液晶控制器的反应速度,因此可以不进行检测,或只进行简短的延时即可。

7指令说明

1602液晶模块内部的控制器共有11条控制指令。

(1)显示模式设置

表1-6显示模块设置

指令码

功能

0

0

1

1

1

0

0

0

设置16×2显示,5×7点阵,8位数据接口

(2)显示开/关及光标设置

表1-7显示开/关及光标设置

指令码

功能

0

0

0

0

1

D

C

B

D=1开显示;D=0关显示

C=1显示光标;C=0不显示光标

B=1光标闪烁;B=0光标不显示

0

0

0

0

0

1

N

S

N=1当读或写一个字符后地址指针加一,且光标加一

N=0当读或写一个字符后地址指针加一,且光标减一

S=1当写一个字符,整幕显示左移(N=1)或右移(N=0)

S=0当写一个字符,整屏显示不移动

(2)数据指针设置

表1-8数据指针设置

指令码

功能

80H+地址码(0—27H,40—67H)

设置数据地址指针

(4)其它设置

表1-9其它设置

指令码

功能

01H

显示清屏:

1.数据指针清零

2所有显示清零

02H

显示回车:

1.数据指针清零

8.控制接口时序说明:

表1-10时序参数

 

第二章硬件设计

2.1系统硬件框图

图2.1系统硬件框图

2.1.1框图说明:

本设计核心部件为AT89C51单片机芯片,配合外部配件如专用日历时钟芯片DS1302,键盘,LCD1602液晶显示器,声光报警器,以及一些外部辅助电路,以实现日期、时间的显示及定时器的功能。

很具有实际意义。

有广泛的应用性。

 

2.2电路原理图

图2-2电路原理图

2.2.1系统电路说明:

本系统由五个部分组成:

按键模块、复位电路模块、晶振电路模块、(注:

上图由于只要仿真,所以没有添加复位电路和晶振电路模块,不会影响到仿真结果)发声模块、时间模块。

晶振模块负责给单片机提供时钟周期,复位电路模块负责上电后自动复位,或按键后强制复位。

上电后,由单片机内部定时器计时,同时通过动态显示函数自动将时、分、秒显示到LCD上。

同时,按键扫描函数一直扫描按键引脚状态,一旦扫描到按键被按下,即进入到相应的功能函数。

如果检测到定时时间到,则驱动蜂鸣器发声。

单片机的晶振电路模块如图2-3所示:

图2-3晶振电路模块

石英晶振也连接在引脚的输入和输出之间,等效为一个并联谐振回路,振荡频率应该是石英晶体并联谐振频率,晶体旁边的两个电容接地,实际上就是电容三点式电路的分压电容,接地点就是分压点。

以接地点即分压为参考点,振荡引脚的输入和输出是反相的,但从并联谐振回路即石英晶体两端来看,形成一个正反馈以保证电路持续振荡。

复位电路如下:

图2-4复位电路

当AT89C51单片机的复位引脚RST(全称RESET)出现2个机器周期以上的高电平时,复位操作通常有两种基本形式:

上电复位和上电或开关复位。

上电或开关复位要求电源接通后,单片机自动复位,并且在单片机运行期间,用开关操作也能是单片机复位。

常用的上电或开关复位电路如图所示,上电后,由于电容C3的充电和反相门的作用,使RST持续一段时间的高电平。

当单片机已在运行当中时,按下复位开关后松开,能使RST为一段时间的高电平,从而实现上电或开关复位的操作。

发声模块:

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

当前位置:首页 > 农林牧渔 > 林学

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

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