基于单片机带温度显示的电子万年历设计1王超资料.docx

上传人:b****3 文档编号:3799449 上传时间:2022-11-25 格式:DOCX 页数:90 大小:186.79KB
下载 相关 举报
基于单片机带温度显示的电子万年历设计1王超资料.docx_第1页
第1页 / 共90页
基于单片机带温度显示的电子万年历设计1王超资料.docx_第2页
第2页 / 共90页
基于单片机带温度显示的电子万年历设计1王超资料.docx_第3页
第3页 / 共90页
基于单片机带温度显示的电子万年历设计1王超资料.docx_第4页
第4页 / 共90页
基于单片机带温度显示的电子万年历设计1王超资料.docx_第5页
第5页 / 共90页
点击查看更多>>
下载资源
资源描述

基于单片机带温度显示的电子万年历设计1王超资料.docx

《基于单片机带温度显示的电子万年历设计1王超资料.docx》由会员分享,可在线阅读,更多相关《基于单片机带温度显示的电子万年历设计1王超资料.docx(90页珍藏版)》请在冰豆网上搜索。

基于单片机带温度显示的电子万年历设计1王超资料.docx

基于单片机带温度显示的电子万年历设计1王超资料

摘要

单片机应用技术飞速发展,纵观我们现在生活的各个领域,从导弹的导航装置,到飞机上各种仪表的控制,从计算机的网络通讯与数据传输,到工业自动化过程的实时控制和数据处理,以及我们生活中广泛使用的各种智能IC卡、电子宠物等,这些都离不开单片机。

单片机是集CPU,RAM,ROM,定时,计数和多种接口于一体的微控制器。

它体积小,成本低,功能强,广泛应用于智能产业和工业自动化上。

本设计着重要描述的就是基于AT89S52的单片机的电子万年历。

本文首先描述系统硬件工作原理,随后说明了本系统所应用的各硬件接口技术(既芯片驱动程序)和各个接口模块的功能及工作过程。

本设计的主导思想是软硬件相结合来进行各功能模块的编写。

电子万年历以硬件C语言为主体进行软件设计,增加了程序的可读性和可移植性。

系统通过LCD液晶输出显示数据,可以显示当前时间、公农历日期、星期、温度,并附有以峰鸣器为提示的闹铃功能。

关键词:

单片机电子万年历公农历接口模块C语言

 

Abstract

MCUrapiddevelopmentofappliedtechnology,wenowliveLookingatthevariousfields,fromthemissile'snavigationdevices,tothevariousinstrumentsontheaircraftcontrol,computernetworkcommunicationsanddatatransmission,industrialautomationtotheprocessofreal-timecontrolanddataProcessing,andweliveintheextensiveuseofthesmartICcards,electronicpets,theseareinseparablefromtheSCM.SCMissetCPU,RAM,ROM,timing,countingononeinterfaceandavarietyofmicrocontrollers.Itssmallsize,lowcost,featurestrong,smartwidelyusedinindustryandindustrialautomation.

ThisdesignisgoingtodescribingthecalendarbasedonAT89S52.Systemhardwareofmainbodyisdescribedfirst,Followthefunction,principleofworkandhardwareinterface(thatmeansthechip’sdrives)areintroduced.Thedesign‘smainideasisthatcomposessoftandhardwaretoachievethedesign.

ThecalendarisdesignedwithhardwareClanguageastheRealizationtool,whichincreasedprocedurereadabilityandtransplanting.ThesystemshowstheoutputbyLCD1602,whichcandemonstratethecurrenttime,thelunarcalendardate,theweek,thetemperatureandthesystem,canalterpeoplewithasmallsounder.

Keywords:

MCUElectroniccalendarLunarcalendarInterfacemoduleCLanguage.

引言

近年来,随着我国科技的不断发展,我国经济发展的支柱产业——电子产业获得长足发展,近年来各种电子产品琳琅满目,随处可见,随着电子产品的更新速度的加快,各种功能强大,款式新颖的电子产品不断问世。

日历时钟便是这一发展趋势中的代表,各种功能的日历应有尽有,且功能不断更新。

日历时钟的研究也成为大多数相关专业的学生以及研究人员先研究的对象。

诸如定时自动报警、按时自动打铃、时间程序自动控制、定时广播、定时启闭电路、定时开关烘箱、通断动力设备,甚至各种定时电气的自动启用等。

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

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

市场上有许多电子钟的专用芯片如:

LM8363、LM8365等,但它们功能单一,电路连接复杂,不便于调试制作!

但是考虑到用单片机配合时钟芯片,可制成功能任意的日历时钟,而且可以做到硬件简单、成本低廉。

所以本系统采用了以广泛使用的单片机AT89S52技术为核心,配合时钟芯片DS1302。

软硬件结合,使硬件部分大为简化,提高了系统稳定性,并采用LCD显示电路、键盘电路,使人机交互简便易行。

本方案设计出的日历时钟可以显示时间、设置闹铃功能,重点研究实现了单片机时钟芯片这种模式的日历,在很多场合都能用到,也可以把此设计装在镜框中或其它工艺品中,以便更加实用。

1系统方案设计

1.1单片机芯片的选择方案

方案一:

采用89C51芯片作为硬件核心,采用FlashROM,内部具有4KBROM存储空间,能于3V的超低压工作,而且与MCS-51系列单片机完全兼容,但是运用于电路设计中时由于不具备ISP在线编程技术,当在对电路进行调试时,由于程序的错误修改或对程序的新增功能需要烧入程序时,对芯片的多次拔插会对芯片造成一定的损坏。

方案二:

采用AT89S52,片内ROM全都采用FlashROM;能以3V的超底压工作;同时也与MCS-51系列单片机完全该芯片内部存储器为8KBROM存储空间,同样具有89C51的功能,且具有在线编程可擦除技术,当在对电路进行调试时,由于程序的错误修改或对程序的新增功能需要烧入程序时,不需要对芯片多次拔插,所以不会对芯片造成损坏。

综上所述,选择采用AT89S52作为主控制系统更适合设计。

AT89S52单片机是一种低功耗高性能的CMOS8位微控制器,内置8KB可在线编程闪存。

该器件采用Atmel公司的高密度非易失性存储技术生产,其指令与工业标准的80C51指令集兼容。

片内程序存储器允许重复在线编程,允许程序存储器在系统内通过SPI串行口改写或用同用的非易失性存储器改写。

通过把通用的8位CPU与可在线下载的Flash集成在一个芯片上,AT89S52便成为一个高效的微型计算机。

它的应用范围广,可用于解决复杂的控制问题,且成本较低。

AT89S52的主要特性如下:

1、兼容MCS51产品

2、8K字节可擦写1000次的在线可编程ISP闪存

3、4.0V到5.5V的工作电源范围

4、全静态工作:

0Hz~24MHz

5、3级程序存储器加密

6、256字节内部RAM

7、32条可编程I/O线

8、3个16位定时器/计数器

9、8个中断源

10、UART串行通道

11、低功耗空闲方式和掉电方式

12、通过中断终止掉电方式

13、看门狗定时器

14、双数据指针

15、灵活的在线编程(字节和页模式)

1.2显示模块选择方案

方案一:

采用LED数码管动态扫描,虽然LED数码管价格适中,对于显示数字也比较合适,然而需要显示多位数字和字母时,编程就会变得很复杂,而且占用的单片机口线多。

方案二:

采用点阵式数码管显示,点阵式数码管是由八行八列的发光二极管组成,对于显示文字比较适合,如采用在显示数字显得太浪费,且价格也相对较高,所以也不用此种作为显示.

方案三:

采用LCD液晶显示屏,LCD液晶显示屏尽管价格比较贵,但它的显示功能强大,可显示大量字符,显示多样,清晰可见,,需要的接口线少。

所以综合考虑,采用方案三的LCD液晶显示屏作为显示更适合本设计。

1.3时钟芯片的选择方案

方案一:

直接采用单片机定时计数器提供秒信号,使用程序实现年、月、日、星期、时、分、秒计数。

采用此种方案虽然减少芯片的使用,节约成本,但是,实现的时间误差较大。

方案二:

采用DS1302时钟芯片实现时钟,DS1302芯片是一种高性能的时钟芯片,可自动对秒、分、时、日、周、月、年以及闰年补偿的年进行计数,而且精度高,位的RAM做为数据暂存区,工作电压2.5V~5.5V范围内,2.5V时耗电小于300nA.

综上所述,为显示时间更准确,实现功能更多,本设计采用DS1302时钟芯片提供时钟。

1.4温度传感器的选择方案

方案一:

使用热敏电阻作为传感器,用热敏电阻与一个相应阻值电阻相串联分压,利用热敏电阻阻值随温度变化而变化的特性,采集这两个电阻变化的分压值,并进行A/D转换。

此设计方案需用A/D转换电路,增加硬件成本而且热敏电阻的感温特性曲线并不是严格线性的,会产生较大的测量误差。

方案二:

采用数字式温度传感器DS18B20,此类传感器为数字式传感器而且仅需要一条数据线进行数据传输,易于与单片机连接,可以去除A/D模块,降低硬件成本,简化系统电路。

另外,数字式温度传感器还具有测量精度高、测量范围广等优点。

为提高测量精度,降低成本,所以本设计采用数字式温度传感器DS18B20测量温度。

1.5电路设计最终方案

综上各方案所述,对此次作品的方案选定:

采用AT89S52作为主控制系统;DS1302提供时钟;数字式温度传感器;LCD液晶显示屏作为显示模块。

2系统设计说明

2.1硬件模块图

系统的硬件模块图如图2.1所示。

DS1302时钟模块

(89S52)

主控模块

键盘输入电路

显示电路

峰鸣器

闹铃模块

DS18B20温度模块

 

图2.1系统硬件模块图

模块说明:

1、DS1302时钟模块可以输出其当前日期、时间及星期

2、键盘输入电路可以调整日期,时间及公农历的转换

3、DS18B20温度模块可以测量当前室内的温度

4、峰鸣器闹铃模块可以做整点报时

5、显示电路则显示当前的系统运行情况

2.2系统原理

本系统是由AT89C51单片机为控制核心;时钟电路由DS1302提供,它可以对年、月、日、周日、时、分、秒进行计时,具有闰年补偿功能;温度的采集由DS18B20构成;LCD1602用来显示数据;键盘输入电路可以调整日期,时间及公农历的转换。

通过用C语言[1]编程,从DS1302寄存器中读取年、月、日、周日、时、分、秒等数据信息;从DS18B20寄存器中读取温度信息,再编程将以上信息送到LCD1602显示出来。

同时,通过键扫描,编程实现调整日期,时间及公农历的转换。

 

2.3系统的软件流程图

系统的软件流程图如图2.2所示。

开始

初始化

读、写日期、时间和温度

分离日期\时间\温度显示值

键扫描子程序

显示子程序

闹铃子程序

结束

 

图2.2软件流程图

3系统单元模块设计

3.1主控模块(AT89S52模块)

目前,在我国比较流行的就是美国ATMEL公司的89C51它是一种带FlashROM的单片机,事实上,89C51目前正在用89S52代替。

本系统就是以AT89S52作为主控芯片。

 

图3.1AT89S52封装图

AT89S52采用40Pin封装的双列直接DIP结构,图4.1是它的封装图,40个引脚中,正电源和地线两根,外置石英振荡器的时钟线两根,4组8位共32个I/O口,中断口线与P3口线复用。

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

1、Pin20:

接地脚。

2、Pin40:

正电源脚,正常工作或对片内EPROM烧写程序时,接+5V电源。

3、Pin19:

时钟XTAL1脚,片内振荡电路的输入端。

4、Pin18:

时钟XTAL2脚,片内振荡电路的输出端。

时钟有两种方式,一种是片内时钟振荡方式,但需在18和19脚外接石英晶体(2-12MHz)和振荡电容,振荡电容的值一般取10p-30p。

另外一种是外部时钟方式,即将XTAL1接地,外部时钟信号从XTAL2脚输入。

输入输出(I/O)引脚:

 Pin32-Pin39为P0.0-P0.7输入输出脚,Pin1-Pin8为P1.0-P1.7输入输出脚,Pin21-Pin28为P2.0-P2.7输入输出脚,Pin10-Pin17为P3.0-P3.7输入输出脚,这些输入输出脚的功能阐述如下:

P0口(32脚~39脚):

是双向8位三态I/O口,在外接存储器时,与地址总线的低8位及数据总线复用,能以吸收电流的方式驱动8个TTL负载。

P1口(1脚~8脚):

是8位准双向I/O口。

由于这种借口输出没有高阻状态,输入也不能锁存,故不是真正的双向I/O口。

P1口能驱动(吸收或输出电流)4个TTL负载。

P2口(21脚~28脚):

是8位准双向I/O口。

访问外部存储器时,它可以作为高8位地址总线送出高8位地址。

P2可以驱动(吸收或输出电流)4个TTL负载。

P3口(10脚~17脚):

是8位准双向I/O口,P3口能驱动(吸收或输出电流)4个TTL负载。

P3口除了作为一般的准双向通用I/O口使用外,每个引脚还有第二功能。

P3口的8条线都定义有第二功能[6],如表4.1所列。

表3.1P3口的第二功能表

引脚

第二功能

P3.0

RXD(串行口输入端)

P3.1

TXD(串行口输出端)

P3.2

INT0(外部中断0请求输入端,低电平有效)

P3.3

INT1(外部中断0请求输入端,低电平有效)

P3.4

T0(定时器/计数器0的技数脉冲输入端)

P3.5

T1(定时器/计数器0的技数脉冲输入端)

P3.6

WR(片外数据存储器写选通信号输出端,低电平有效)

P3.7

RD(片外数据存储器写选通信号输出端,低电平有效)

Pin9:

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

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

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

然而,初始复位不改变RAM(包括工作寄存器R0-R7)的状态,单片机复位后的状态如下:

P0~P3=FFH,各口可用于输出,也可用于输入;

SP=07H,第一个入栈内容将写入08H单元;

IP、IE和PCON的有效位为0,各中断源处于低优先级且均被关断,串行通讯的波特率不加倍;

PSW=00H,当前工作寄存器为0组。

Pin30:

ALE/PROG当访问外部程序器时,ALE(地址锁存)的输出用于锁存地址的低位字节。

而访问内部程序存储器时,ALE端将有一个1/6时钟频率的正脉冲信号,这个信号可以用于识别单片机是否工作,也可以当作一个时钟向外输出。

更有一个特点,当访问外部程序存储器,ALE会跳过一个脉冲。

如果单片机是EPROM,在编程其间,PROG将用于输入编程脉冲。

Pin29:

PESN当访问外部程序存储器时,此脚输出负脉冲选通信号,PC的16位地址数据将出现在P0和P2口上,外部程序存储器则把指令数据放到P0口上,由CPU读入并执行。

Pin31:

EA/Vpp程序存储器的内外部选通线,8051和8751单片机,内置有4kB的程序存储器,当EA为高电平并且程序地址小于4kB时,读取内部程序存储器指令数据,而超过4kB地址则读取外部指令数据。

如EA为低电平,则不管地址大小,一律读取外部程序存储器指令。

显然,对内部无程序存储器的8031,EA端必须接地。

3.2DS1302时钟模块

3.2.1DS1302简介

DS1302是DALLAS公司推出的涓流充电时钟芯片内含有一个实时时钟/日历和31字节静态RAM。

通过简单的串行接口与单片机进行通信,实时时钟/日历电路提供秒分时日月年的信息,每月的天数和闰年的天数可自动调整。

时钟操作可通过AM/PM指示决定采用24或12小时格式。

DS1302与单片机之间能简单地采用同步串行的方式进行通信,仅需用到三个口线。

1.RES复位,2.I/O数据线,3.SCLK串行时钟。

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

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

DS1302是由DS1202改进而来,增加了以下特性:

双电源管脚用于主电源和备份电源供应,Vcc1为可编程涓流充电电源,附加七个字节存储器,备份电源可由大容量电容(1F)替代。

它广泛应用于电话传真便携式仪器以及电池供电的仪器仪表等产品领域。

主要性能如下:

1、时钟具有能计算2100年之前的秒,分,时,日,星期,月,年的能力,还有闰年调整的能力。

2、31*8位暂存数据存储RAM

3、串行I/O口方式使得管脚数量最少

4、宽范围工作电压:

2.0V~5.5V

5、工作电流:

2.0V时,小于300nA

6、读/写时钟或RAM时,有两种传送方式:

单字节传送和多字节传送(字符组方式)

7、8脚DIP封装或可选的8脚SOIC封装

8、简单的3线串行I/O接口

9、与TTL/COMS兼容(VCC=5V时)

10、可选工业级温度范围:

-40oC~+85oC

3.2.2DS1302结构与工作原理

3.2.2.1引脚及功能表

1、DS1302的脚功能如表3.2所示,引脚如图3.2所示

引脚号

引脚名称

功能

1

Vcc2

主电源引脚

2,3

X1,X2

振荡源,外接32.768KHz晶振

4

RST

接地

5

GND

复位/片选端

6

I/O

串行数据输入/输出端(双向)

7

SCLK

串行时钟输入端

8

Vcc1

备用电源

表3.2引脚功能

 

图3.2DS1302的引脚图

3.2.2.2工作原理

串行时钟芯片主要由寄存器、控制寄存器、振荡器、实时时钟以及RAM组成。

为了对任何数据传送进行初始化,需要将RST置为高电平且将具有地址和控制信息的8位数据(控制字节)装入移位寄存器。

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

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

3.2.3控制命令字节与寄存器

1、控制命令字节

控制命令字节的格式如表3.3

表3.3控制命令字节的格式表

D7

D6

D5

D4

D3

D2

D1

D0

1

RAM/CK

A4

A3

A2

A1

A0

RD/W

控制字节的最高有效位(位7)必须是逻辑1,如果它为0,则不能把数据写入到DS1302中;位6如果为0,则表示存取日历时钟数据,为1表示存取RAM数据;位5至位1指示操作单元的地址;最低有效位(位0)为0表示要进行写操作,为1表示进行读操作,控制字节总是从最低位开始输出。

2、寄存器

(1)历、时钟寄存器

DS1302共有12个寄存器,其中有7个寄存器与日历、时钟相关,存放的数据为BCD码形式。

其日历、时间寄存器及其控制字如表3.5所示。

寄存器的选择由命令字而定,日历,时钟各个寄存器与控制字对照表如表3.4所示。

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

表3.5为主要寄存器命令字、取值范围以及各位内容对照表。

 

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

寄存器名称

D7

D6

D5

D4

D3

D2

D1

D0

1

RAM/CK

A4

A3

A2

A1

A0

RD/W

秒寄存器

1

0

0

0

0

0

0

分寄存器

1

0

0

0

0

0

1

小时寄存器

1

0

0

0

0

1

0

日寄存器

1

0

0

0

0

1

1

月寄存器

1

0

0

0

1

0

0

星期寄存器

1

0

0

0

1

0

1

年寄存器

1

0

0

0

1

1

0

写保护寄存器

1

0

0

0

1

1

1

慢充电寄存器

1

0

1

0

0

0

0

时钟突发寄存器

1

0

1

1

1

1

1

 

表3.5DS1302的日历、时钟寄存器表

寄存器名称

命令字

取值范围

各位内容

写操作

读操作

7

6

5

4

3~0

秒寄存器

80H

81H

00~59

CH

10SEC

SEC

分寄存器

82H

83H

00~59

0

10MIN

MIN

小时寄存器

84H

85H

01~12或00~23

12/24

0

10

A/P

HR

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

0

0

DAY

年寄存器

8CH

8DH

01~09

10YEAR

YEAR

写保护

寄存器

8EH

8FH

WP

0

0

0

0

慢充电

寄存器

90H

91H

TCS

TCS

TCS

TCS

DS

DS

RS

RS

时钟突发

寄存器

BEH

BFH

特殊位的说明:

CH:

时钟暂停位。

当此位设置为1时,振荡器停止,DS1302处于低功耗空闲状态,这时芯片消耗电流将小于100NA;当此位为0时,振荡器启动,时钟开始启动。

12/24:

12或24小时方式选择位。

为1时选择12小时方式,在12小时方式下,位5是AM/PM选择位,此位为1时表示PM。

为0时选择24小时方式,在24小时方式下,位5是第2个小时位(20~23时)。

WP:

写保护位。

写保护寄存器的开始7位(0~6)置为0,在读操作时总是读出0。

在对时钟或RAM进行写操作之前,位7(WP)必须为0,当它为高电平时,写保护位防止对任何其他寄存器进行写操作。

TCS:

控制慢充电的选择,为了防止偶然因素使DS1302工作,只有1010模式才能使慢速充电。

DS:

二极管选择位。

如果DS为01,那么选择一个二极管;如果DS为10,则选择两个二极管;如果DS为11或00,那么充电器被禁止,与TCS无关。

RS:

选择连接在VCC2与VCC1之间的电阻,如果RS为00,那么充电器被禁止,与TCS无

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

当前位置:首页 > 工程科技 > 能源化工

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

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