带实时日历时钟的温度检测系统Word格式.docx

上传人:b****5 文档编号:18830879 上传时间:2023-01-01 格式:DOCX 页数:55 大小:314.61KB
下载 相关 举报
带实时日历时钟的温度检测系统Word格式.docx_第1页
第1页 / 共55页
带实时日历时钟的温度检测系统Word格式.docx_第2页
第2页 / 共55页
带实时日历时钟的温度检测系统Word格式.docx_第3页
第3页 / 共55页
带实时日历时钟的温度检测系统Word格式.docx_第4页
第4页 / 共55页
带实时日历时钟的温度检测系统Word格式.docx_第5页
第5页 / 共55页
点击查看更多>>
下载资源
资源描述

带实时日历时钟的温度检测系统Word格式.docx

《带实时日历时钟的温度检测系统Word格式.docx》由会员分享,可在线阅读,更多相关《带实时日历时钟的温度检测系统Word格式.docx(55页珍藏版)》请在冰豆网上搜索。

带实时日历时钟的温度检测系统Word格式.docx

2.2总体方案2

3系统硬件电路设计3

3.1系统功能模块划分3

3.2测温模块3

3.2.1DS18B20的主要特征4

3.2.2DS18B20的工作原理5

3.3时钟模块5

3.4报警模块8

3.4.1蜂鸣器的结构原理8

3.4.2发光二极管简介9

3.5显示模块10

3.6键盘模块15

3.7主控模块16

3.7.1主控模块功能分析16

3.7.2STC89C52芯片的功能特性17

3.8电路原理图的绘制和电路的焊接17

3.8.1PROTEL简介17

3.8.2电路的焊接18

4系统软件设计19

4.1主控程序设计19

4.2温度信息的采集19

4.3时钟的读取23

4.4温度的显示控制24

调试与总结26

致谢27

参考文献28

附录1电路原理图29

附录2系统源程序30

1绪论

温度是一种最基本的环境参数,人民的生活环境与温度息息相关,因此研究温度的测量方法和装置具有重要意义。

温度测量在工业、农业、国防等行业有着广泛的应用,而且随着科学技术的发展对温度测量的应用范围愈来愈广。

利用单片机技术的温度测控系统以其体积小,可靠性高而被广泛采用。

STC89C52单片机可以直接应用在对温度测量的各种测温器件中。

本文就介绍了一种基于单片机的温度测量的方法。

本设计将采用DS18B20一线制数字温度传感器,可将温度信号直接转换成数字信号送给微处理器,电路简单,成本低。

因此本系统的设计将采用基于单片机的温度测量方法并配合最新的DS18B20一线制数字温度传感器,两者的结合将使整个系统结构简单,体积较小,可靠性高,操作方便,测量精度高,只需接通电源便可进行及时有效的温度测量,在各行各业均具有较广泛的用途,发展前景良好;

另外在系统中还添加了时钟芯片,可以方便实时地记录当前温度,并通过12864液晶显示器对当前温度和时间进行显示,直观明了。

2方案论证

2.1系统功能定义

根据设计要求,可以先大致勾勒出要完成设计,需要几个模块具有如下图所示的功能:

图2.1系统功能定义

2.2总体方案

通过对系统功能的定义,可以将基于单片机的数字温度计采用温度传感器DS18B20作为测温元件用来满足温度测量,并将温度信号经由其本身所具有的A/D转换功能,转换成数字信号经单片机处理显示于液晶显示器,从而完成温度的测量和显示。

整个系统控制将由STC89C52单片机芯片为核心构成。

选用DS18B20作为测温元件,DS12C887作为时钟芯片,12864液晶作为显示器件,各个检测信号、显示信号可由单片机的I/O口进行。

设计任务:

用单片机设计一个测温范围在-55~125℃的数字温度计,并可显示实时日历时钟。

设计要求:

完成该系统的软硬件设计,学习掌握单片机采集温度的设计方法提高学习新知识、新技能的能力,培养独立设计的能力。

3系统硬件电路设计

3.1系统功能模块划分

根据系统功能要求,可大致画出系统所需硬件结构框图如下所示:

图3.1系统功能模块划分

主控模块采用性价比较高的单片机芯片,在其内部将预设好的程序储存,可通过程序的运行控制测温模块进行测温;

测温模块主要是由DS18B20构成,将其与所测对象进行接触即可获取被测对象的温度数据,报警模块只有当温度超出预定值时才会工作,而所测得的温度和时钟芯片测得的实时日历将通过显示模块的液晶显示器以数字形式显示;

另外,键盘电路可对预设的温度上下限值和实时日历进行调整。

3.2测温模块

传统的温度传感器系统大都采用放大、调理、A/D转换,转换后的数字信号送入计算机处理,处理电路复杂、可靠性相对较差,占用计算机的资源比较多,本设计测温模块采用一线制总线数字温度传感器,可将温度信号直接转换成数字信号送给微处理器,电路简单,成本低,其电路原理图如下所示:

图3.2测温模块电路

从图中可看出,将温度传感器的一线制总线通过端口2与本设计主控芯片STC89C52的端口P3.6相连即可实现相互之间的通信。

设计中的测温元件采用的是DS18B20测温元件,DS18B20是由DALLAS(达拉斯)公司生产的一种温度传感器。

超小的体积,超低的硬件开消,抗干扰能力强,精度高,附加功能强,使得DS18B20很受欢迎。

这是世界上第一片支持“一线总线”接口的温度传感器。

DS18B20数字温度计提供9位(二进制)温度读数,指示器件的温度。

信息经过单线接口送入DS18B20或从DS18B20送出,因此从单片机到DS18B20仅需一条线连接即可。

它可在1秒钟(典型值)内把温度变换成数字。

3.2.1DS18B20的主要特征

●全数字温度转换及输出;

●先进的单总线数据通信;

●最高12位分辨率,精度可达土0.5℃;

●12位分辨率时的最大工作周期为750毫秒;

●可选择寄生工作方式;

●检测温度范围为–55℃——+125℃;

●内置EEPROM,限温报警功能;

●64位光刻ROM,内置产品序列号,方便多机挂接;

●多样封装形式,适应不同硬件系统。

DS18B20芯片其封装结构如下:

图3.3DS18B20芯片封装图

由其引脚可看出,其3个引脚:

GND为电压地直接接地;

DQ为单数据总线用来与单片机相连接,本系统中DS与单片机P2.2接口连接,仅此一个连接就能保证DS18B20与单片机之间的数据交换;

VDD引脚接电源电压。

3.2.2DS18B20的工作原理

DS18B20的温度检测与数字数据输出全集成于一个芯片之上,从而抗干扰力更强。

一个工作周期可分为两个部分,即温度检测和数据处理。

DS18B20共有三种形态的存储器资源,分别是:

ROM只读存储器,用于存放DS18B20ID编码,其前8位是单线系列编码(DS18B20的编码是19H),后面48位是芯片唯一的序列号,最后8位是以上56位的CRC码(冗余校验)。

数据在出产时设置不由用户更改。

DS18B20共64位ROM,RAM数据暂存器,用于内部计算和数据存取,数据在掉电后丢失,DS18B20共9个字节RAM,每个字节为8位。

第1、2个字节是温度转换后的数据值信息,第3、4个字节是用户EEPROM(常用于温度报警值储存)的镜像。

在上电复位时其值将被刷新。

第5个字节则是用户第3个EEPROM的镜像。

第6、7、8个字节为计数寄存器,是为了让用户得到更高的温度分辨率而设计的,同样也是内部温度转换、计算的暂存单元。

第9个字节为前8个字节的CRC码。

EEPROM非易失性记忆体,用于存放长期需要保存的数据,上下限温度报警值和校验数据,DS18B20共3位EEPROM,并在RAM都存在镜像,以方便用户操作。

我们在每一次读温度之前都必须进行复杂的且精准时序的处理,因为DS18B20的硬件简单结果就会导致软件的巨大开消。

3.3时钟模块

本设计采用的时钟芯片是Dallas公司生产的时钟日历芯片DS12C887,其功能丰富,使用简单,可比性高,是时间产生电路的良好选择。

由于DS12C887能够自动产生世纪、年、月、日、时、分、秒等时间信息,其内部又增加了世纪寄存器,从而利用硬件电路解决了“千年”问题;

DS12C887中自带有锂电池,外部掉电时,其内部时间信息还能够保持10年之久;

对于一天内的时间记录,有12小时制和24小时制两种模式。

在12小时制模式中,用AM和PM区分上午和下午;

时间的表示方法也有两种,一种用二进制数表示,一种是用BCD码表示;

DS12C887中带有128字节RAM,其中有11字节RAM用来存储时间信息,4字节RAM用来存储DS12C887的控制信息,称为控制寄存器,113字节通用RAM使用户使用;

此外用户还可对DS12C887进行编程以实现多种方波输出,并可对其内部的三种中断通过软件进行屏蔽。

时钟模块的电路原理图如下所示:

图3.4时钟模块电路

时钟芯片通过数据端口AD0~AD7与主控芯片的P0口相连实现相互之间数据和指令的传输,并通过控制端口DS、R/W、AS、CS实现与主控芯片对时钟芯片数据和指令传输的联合控制。

由上图可见,时钟模块的核心就是时钟芯片DS12C887,现将其主要特征介绍如下:

●可选的Intel或Motorola总线时序

●RTC计数秒、分、时、星期、日期、月份和年份,闰年补偿至2100年

●定时闹钟为每秒一次至每日一次

●122um至500ms周期速率

●14字节的时钟和控制寄存器

●可编程方波输出

●+5.0V或+3.3V工作电源

●工业级温度范围

●DS12CR887密封DIP模块集成了电池与石英晶体

DS12C887封装结构如下:

图3.5DS12C887封装图

DS12C887各管脚的功能说明如下:

GND、VCC:

直流电源,其中VCC接+5V输入,GND接地,当VCC输入为+5V时,用户可以访问DS12C887内RAM中的数据,并可对其进行读、写操作;

当VCC的输入小于+4.25V时,禁止用户对内部RAM进行读、写操作,此时用户不能正确获取芯片内的时间信息;

当VCC的输入小于+3V时,DS12C887会自动将电源发换到内部自带的锂电池上,以保证内部的电路能够正常工作。

MOT:

模式选择脚,DA12C887有两种工作模式,即Motorola模式和Intel模式,当MOT接VCC时,选用的工作模式是Motorola模式,当MOT接GND时,选用的是Intel模式。

SQW:

方波输出脚,当供电电压VCC大于4.25V时,SQW脚可进行方波输出,此时用户可以通过对控制寄存器编程来得到13种方波信号的输出。

AD0~AD7:

复用地址数据总线,该总线采用时分复用技术,在总线周期的前半部分,出现在AD0~AD7上的是地址信息,可用以选通DS12C887内的RAM,总线周期的后半部分出现在AD0~AD7上的数据信息。

AS:

地址选通输入脚,在进行读写操作时,AS的上升沿将AD0~AD7上出现的地址信息锁存到DS12C887上,而下一个下降沿清除AD0~AD7上的地址信息,不论是否有效,DS12C887都将执行该操作。

DS/RD:

数据选择或读输入脚,该引脚有两种工作模式,当MOT接VCC时,选用Motorola工作模式,在这种工作模式中,每个总线周期的后一部分的DS为高电平,被称为数据选通。

在读操作中,DS的上升沿使DS12C887将内部数据送往总线AD0~AD7上,以供外部读取。

在写操作中,DS的下降沿将使总线AD0~AD7上的数据锁存在DS12C887中;

当MOT接GND时,选用Intel工作模式,在该模式中,该引脚是读允许输入脚,即ReadEnable。

R/W:

读/写输入端,该管脚也有2种工作模式,当MOT接VCC时,R/W工作在Motorola模式。

此时,该引脚的作用是区分进行的是读操作还是写操作,当R/W为高电平时为读操作,R/W为低电平时为写操作;

当MOT接GND时,该脚工作在Intle模式,此时该作为写允许输入,即WriteEnable。

CS:

片选输入,低电平有效。

IRQ:

中断请求输入,低电平有效,该脚有效对DS12C887内的时钟、日历和RAM中的内容没有任何影响,仅对内部的控制寄存器有影响,在典型的应用中,RESET可以直接接VCC,这样可以保证DS12C887在掉电时,其内部控制寄存器不受影响。

3.4报警模块

本系统中报警模块采用的是蜂鸣器和发光二极管,具有声光同时报警功能。

其电路图如下图所示,蜂鸣器与9015三极管集电极相连,三极管基极与主控芯片端口P3.7相连,主控芯片通过发出的高低电平信号实现三极管的导通与否,从而控制蜂鸣器是否发声;

红色和绿色发光二极管分别与一限流电阻串联后再分别连接到主控芯片的端口P3.4和P3.5,当控制端口发出低电平时发光二极管亮,反之则灯灭。

图3.6(a)报警模块电路图3.6(b)报警模块电路

3.4.1蜂鸣器的结构原理

蜂鸣器是一种一体化结构的电子讯响器,采用直流电压供电,广泛应用于计算机、打印机、复印机、报警器、电子玩具、汽车电子设备、电话机、定时器等电子产品中作发声器件。

蜂鸣器主要分为压电式蜂鸣器和电磁式蜂鸣器两种类型。

在电路中用字母“H”或“HA”(旧标准用“FM”、“LB”、“JD”等)表示。

1、压电式蜂鸣器压电式蜂鸣器主要由多谐振荡器、压电蜂鸣片、阻抗匹配器及共鸣箱、外壳等组成。

有的压电式蜂鸣器外壳上还装有发光二极管。

多谐振荡器由晶体管或集成电路构成。

当接通电源后(1.5~15V直流工作电压),多谐振荡器起振,输出1.5~2.5kHZ的音频信号,阻抗匹配器推动压电蜂鸣片发声。

压电蜂鸣片由锆钛酸铅或铌镁酸铅压电陶瓷材料制成。

在陶瓷片的两面镀上银电极,经极化和老化处理后,再与黄铜片或不锈钢片粘在一起。

2、电磁式蜂鸣器电磁式蜂鸣器有振荡器、电磁线圈、磁铁、振动膜片及外壳等组成。

接通电源后,振荡器产生的音频信号电流通过电磁线圈,使电磁线圈产生磁场。

振动膜片在电磁线圈和磁铁的相互作用下,周期性地振动发声。

3.4.2发光二极管简介

发光二极管简称为LED。

有镓(Ga)与砷(AS)、磷(P)的化合制成的二极管,当电子与空穴复合时能辐射出可见光,因而可以用来制成发光二极管,在电路及仪器中作为指示灯,或者组成文字或数字显示。

磷砷化镓二极管发红光,磷化镓二极管发绿光,碳化硅二极管发黄光。

它是半导体二极管的一种,可以把电能转化成光能;

常简写为LED。

发光二极管与普通二极管一样是由一个PN结组成,也具有单向导电性。

当给发光二极管加上正向电压后,从P区注入到N区的空穴和由N区注入到P区的电子,在PN结附近数微米内分别与N区的电子和P区的空穴复合,产生自发辐射的荧光。

不同的半导体材料中电子和空穴所处的能量状态不同。

当电子和空穴复合时释放出的能量多少不同,释放出的能量越多,则发出的光的波长越短。

常用的是发红光、绿光或黄光的二极管。

发光二极管的反向击穿电压约5伏。

它的正向伏安特性曲线很陡,使用时必须串联限流电阻以控制通过管子的电流。

限流电阻R可用下式计算:

R=(E-UF)/IF式中E为电源电压,UF为LED的正向压降,IF为LED的一般工作电流。

发光二极管的两根引线中较长的一根为正极,应按电源正极。

有的发光二极管的两根引线一样长,但管壳上有一凸起的小舌,靠近小舌的引线是正极。

LED的正向工作电流在10mA左右,若电流过大时会损坏LED,因此使用时必须串联限流电阻普通发光二极管的正向饱和压降为1.4~2.1V,正向工作电流为5~20mA。

LED广泛应用于各种电子电路、家电、仪表等设备中做电源或电平指示。

3.5显示模块

本设计显示模块主要采用12864液晶显示器,其电路原理图如下:

图3.7显示模块电路

12864液晶显示器通过数据端口也即端口7~14与主控芯片STC89C52的I/O端口P0相连接实现数据与指令的传输,再通过控制端口RS、RW、EN也即端口4~6与主控芯片P1.0~P1.2端口相接实现对数据和指令传输的控制。

显示模块采用12864液晶显示器可实现对温度和时间的直接显示,清晰明了,其特性和工作原理如下:

带中文字库的128X64是一种具有4位/8位并行、2线或3线串行多种接口方式,内部含有国标一级、二级简体中文字库的点阵图形液晶显示模块其显示分辨率为128×

64,内置8192个16*16点汉字,和128个16*8点ASCII字符集。

利用该模块灵活的接口方式和简单、方便的操作指令,可构成全中文人机交互图形界面。

可以显示8×

4行16×

16点阵的汉字,也可完成图形显示。

低电压低功耗是其又一显著特点。

由该模块构成的液晶显示方案与同类型的图形点阵液晶显示模块相比,不论硬件电路结构或显示程序都要简得多,且该模块的价格也略低于相同点阵的图形液晶模块。

其基本特性如下:

●低电源电压(VDD:

+3.0-+5.5V)

●显示分辨率:

128×

64点

●内置汉字字库,提供8192个16×

16点阵汉字(简繁体可选)

●内置128个16×

8点阵字符

●2MHZ时钟频率

●显示方式:

SIN、半透、正显

●背光方式:

侧部高亮白色LED,功耗仅为普通LED的1/5—1/10

●通讯方式:

串行、并行可选

●内置DC-DC转换电路,无需外加负压

●无需片选信号,简化软件设计

●工作温度:

0℃—-+55℃,存储温度:

-20℃—+60℃

1、模块管脚是连接外部电路的纽带,在此模块中管脚主要由控制管脚和数据管脚等构成,现将其组成情况及相关功能介绍如下:

表3.112864液晶模块接口说明

管脚号

管脚名称

电平

管脚功能描述

1

VSS

0V

电源地

2

VCC

3.0V/5V

电源正

3

V0

-

对比度(亮度)调整

4

RS(CS)

H/L

RS=“H”,表示DB7~DB0为显示数据RS=“L”,表示DB7~DB0为显示指令数据

5

R/W

R/W=“H”,E=“H”,数据被读到DB7~DB0R/W=“L”,E=“H→L”,DB7~DB0的数据被写到IR或DR

6

E(SCLK)

使能信号

7~14

DB0~DB7

H/L

三态数据线

15

PSB

H:

8位或4位并口方式,L:

串口方式

16

NC

-

空脚

17

RESET

复位端,低电平有效

18

VOUT

LCD驱动电压输出端

19

A

VDD

背光源正端

20

K

背光源负端

2、控制器控制着模块内部指令的发出与否,存储器则对指令和数据进行存储与更换,现将分别介绍控制器各接口及各存储器的功能。

1)RS,R/W的配合选择决定控制界面的4种模式

表3.2RS,R/W配合功能说明

RS

功能说明

L

MPU写指令到指令暂存器(IR)

H

读出忙标志(BF)及地址记数器(AC)的状态

MPU写入数据到数据暂存器(DR)

MPU从数据暂存器(DR)中读出数据

2)E信号

表3.3E信号功能说明

E状态

执行动作

结果

高——>

I/O缓冲——>

DR

配合/W进行写数据或指令

DR——>

I/O缓冲

配合R进行读数据或指令

低/低——>

无动作

忙标志BF:

BF标志提供内部工作情况。

BF=1表示模块在进行内部操作,此时模块不接受外部指令和数据。

BF=0时,模块为准备状态,随时可接受外部指令和数据。

利用STATUSRD指令,可以将BF读到DB7总线,从而检验模块工作状态。

字型产生ROM(

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

当前位置:首页 > 初中教育 > 中考

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

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