电子时钟及简易温度计的设计本科毕业论文设计Word文档格式.doc

上传人:wj 文档编号:625510 上传时间:2023-04-29 格式:DOC 页数:54 大小:428.50KB
下载 相关 举报
电子时钟及简易温度计的设计本科毕业论文设计Word文档格式.doc_第1页
第1页 / 共54页
电子时钟及简易温度计的设计本科毕业论文设计Word文档格式.doc_第2页
第2页 / 共54页
电子时钟及简易温度计的设计本科毕业论文设计Word文档格式.doc_第3页
第3页 / 共54页
电子时钟及简易温度计的设计本科毕业论文设计Word文档格式.doc_第4页
第4页 / 共54页
电子时钟及简易温度计的设计本科毕业论文设计Word文档格式.doc_第5页
第5页 / 共54页
电子时钟及简易温度计的设计本科毕业论文设计Word文档格式.doc_第6页
第6页 / 共54页
电子时钟及简易温度计的设计本科毕业论文设计Word文档格式.doc_第7页
第7页 / 共54页
电子时钟及简易温度计的设计本科毕业论文设计Word文档格式.doc_第8页
第8页 / 共54页
电子时钟及简易温度计的设计本科毕业论文设计Word文档格式.doc_第9页
第9页 / 共54页
电子时钟及简易温度计的设计本科毕业论文设计Word文档格式.doc_第10页
第10页 / 共54页
电子时钟及简易温度计的设计本科毕业论文设计Word文档格式.doc_第11页
第11页 / 共54页
电子时钟及简易温度计的设计本科毕业论文设计Word文档格式.doc_第12页
第12页 / 共54页
电子时钟及简易温度计的设计本科毕业论文设计Word文档格式.doc_第13页
第13页 / 共54页
电子时钟及简易温度计的设计本科毕业论文设计Word文档格式.doc_第14页
第14页 / 共54页
电子时钟及简易温度计的设计本科毕业论文设计Word文档格式.doc_第15页
第15页 / 共54页
电子时钟及简易温度计的设计本科毕业论文设计Word文档格式.doc_第16页
第16页 / 共54页
电子时钟及简易温度计的设计本科毕业论文设计Word文档格式.doc_第17页
第17页 / 共54页
电子时钟及简易温度计的设计本科毕业论文设计Word文档格式.doc_第18页
第18页 / 共54页
电子时钟及简易温度计的设计本科毕业论文设计Word文档格式.doc_第19页
第19页 / 共54页
电子时钟及简易温度计的设计本科毕业论文设计Word文档格式.doc_第20页
第20页 / 共54页
亲,该文档总共54页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

电子时钟及简易温度计的设计本科毕业论文设计Word文档格式.doc

《电子时钟及简易温度计的设计本科毕业论文设计Word文档格式.doc》由会员分享,可在线阅读,更多相关《电子时钟及简易温度计的设计本科毕业论文设计Word文档格式.doc(54页珍藏版)》请在冰点文库上搜索。

电子时钟及简易温度计的设计本科毕业论文设计Word文档格式.doc

2.1.3振荡器特性

AT89S52单片机有一个用于构成内部振荡器的反相放大器,XTAL1和XTAL2分别是放大器的输入、输出端[6]。

石英晶体和陶瓷谐振器都可以用来一起构成自激振荡器[7]。

如图2.2。

图2.2AT89S52振荡器连接图

2.2时钟电路

DS1302是美国DALLAS公司推出的低功耗时钟芯片。

它可以对年、月、日、周、时、分、秒进行计时,且具有闰年补偿等多种功能。

DS1302是具有绢细电流充电能力的低功耗实时时钟电路,它以其接口简单、价格低廉、使用方便而被广泛地采用。

它的主要特点是采用串行数据传输,可为掉电保护电源提供可编程的充电功能,并且可以关闭充电功能。

采用普通32.768kHz晶振。

所以用这个芯片来实现时间功能是完全能满足电路的要求的。

DS1302用于数据记录,特别是对某些具有特殊意义的数据点的记录上,能实现数据与出现该数据的时间同时记录。

这种记录对长时间的连续测控系统结果的分析以及对异常数据出现的原因的查找有重要意义。

 

在测量控制系统中,特别是长时间无人职守的测控系统中,经常需要记录某些具有特殊意义的数据及其出现的时间。

记录及分析这些特殊意义的数据,对测控系统的性能分析及正常运行具有重要的意义。

传统的数据记录方式是隔时采样或定时采样,没有具体的时间记录,因此只能记录数据而无法准确记录其出现的时间;

若采用单片机计时,一方面需要采用计数器,占用硬件资源,另一方面需要设置中断、查询等,同样耗费单片机的资源,而且某些测控系统可能不允许。

而在系统中采用DS1302则能很好地解决这个问题。

DS1302工作电压宽达2.5~5.5V。

采用三线接口与CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟信号或RAM数据。

DS1302内部有一个31×

8的用于临时性存放数据的RAM寄存器。

DS1302是DS1202的升级产品,与DS1202兼容,但增加了主电源/后备电源双电源引脚,同时提供了对后备电源进行涓细电流充电的能力。

2.2.1DS1302的结构及工作原理

图2.3为DS1302的引脚排列及内部结构图,其中Vcc1为后备电源,Vcc2为主电源。

在主电源关闭的情况下,也能保持时钟的连续运行。

DS1302由Vcc1或Vcc2两者中的较大者供电。

当Vcc2大于Vcc1+0.2V时,Vcc2给DS1302供电。

当Vcc2小于Vcc1时,DS1302由Vcc1供电。

X1和X2是振荡源,外接32.768kHz晶振。

RST是复位/片选线,通过把RST输入驱动置高电平来启动所有的数据传送。

RST输入有两种功能:

首先,RST接通控制逻辑,允许地址/命令序列送入移位寄存器;

其次,RST提供终止单字节或多字节数据的传送手段。

当RST为高电平时,所有的数据传送被初始化,允许对DS1302进行操作。

如果在传送过程中RST置为低电平,则会终止此次数据传送,I/O引脚变为高阻态。

上电运行时,在Vcc≥2.5V之前,RST必须保持低电平。

只有在SCLK为低电平时,才能将RST置为高电平。

I/O为串行数据输入输出端(双向),后面有详细说明。

SCLK始终是输入端。

图2.3DS1302的引脚排列及内部结构图

2.2.2DS1302的控制字

如图2.4所示:

   

图2.4控制字节的含义

DS1302的控制字节说明如下:

控制字节的最高有效位(位7)必须是逻辑1,如果它为0,则不能把数据写入到DS1302中;

(位6)如果为0,则表示存取日历时钟数据,为1表示存取RAM数据;

(位5)至(位1)指示操作单元的地址;

最低有效位(位0)如为0表示要进行写操作,为1表示进行读操作,控制字节总是从最低位开始输出[8]。

2.2.3复位

通过把RST输入驱动置高电平来启动所有的数据传送。

首先,RST接通控制逻辑,允许地址/命令序列送入移位寄存器;

其次,RST提供了终止单字节或多字节数据的传送手段。

如果在传送过程中置RST为低电平,则会终止此次数据传送,并且I/O引脚变为高阻态。

2.2.4数据输入输出

在控制指令字输入后的下一个SCLK时钟的上升沿时数据被写入DS1302,数据输入从低位即位0开始。

同样,在紧跟8位的控制指令字后的下一个SCLK脉冲的下降沿读出DS1302的数据,读出数据时从低位0位至高位7,数据读写时序见图2.5。

图2.5数据读写时序

2.2.5DS1302的寄存器

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

其日历、时间寄存器及其控制字见表2.1。

表2.1DS1302的日历、时钟寄存器及其控制字

寄存器名

命令字

取值范围

各位内存

写操作

读操作

7

6

5

4

3

2

1

秒寄存器

80H

81H

00~59

CH

10SEC

SEC

分钟寄存器

82H

83H

10MIN

MIN

小时寄存器

84H

85H

01~12或00~23

12/24

10/AP

HR

日期寄存器

86H

87H

01~28,29,30,31

10DATE

DATE

月份寄存器

88H

89H

01~12

10M

MONTH

周日寄存器

8AH

8BH

01~07

DAY

年份寄存器

8CH

8DH

00~99

10YEAR

YEAR

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

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

DS1302与RAM相关的寄存器分为两类,一类是单个RAM单元,共31个,每个单元组态为一个8位的字节,其命令控制字为COH~FDH,其中奇数为读操作,偶数为写操作;

再一类为发方式下的RAM寄存器,此方式下可一次性读写所有的RAM的31个字节,命令控制字为FEH(写)、FFH(读)。

2.2.6DS1302在测量系统中的硬件电路

DS1302与CPU的连接仅需要三条线,即SCLK(7)、I/O(6)、RST(5)。

Vcc2在单电源与电池供电的系统中提供低电源并提供低功率的电池备份。

Vcc2在双电源系统中提供主电源,在这种运用方式下Vcc1连接到备份电源,以便在没有主电源的情况下能保存时间信息以及数据。

DS1302由Vcc1或 

Vcc2两者中的较大者供电。

当 

Vcc2大于Vcc1+0.2V时,Vcc2给DS1302供电。

采用DS1302作为记录测控系统中的数据记录,其软硬件设计简单,时间记录准确,既避免了连续记录的大工作量,又避免了定时记录的盲目性,给连续长时间的测量、控制系统的正常运行及检查都来了很大的方便,可广泛应用于长时间连续的测控系统中。

2.3调时部分

时钟,难免有不准时的时候,当你时钟显示的时间出现差错的时候,就需要对其进行调时。

本系统的调时部分如图2.6。

图2.6时钟调时部分

其中P3.1口连接出的按键MODEL为选择调时模块按键,可选择日期的年、月、日以及时间的时、分、秒;

P3.4口连接出的按键ADD为对所选模块进行加成按键,按一次即对所选模块进行加一处理,直至时间调整到准确值。

2.4温度传感器

美国Dallas半导体公司的数字化温度传感器DS18B20是世界上第一片支持"

一线总线"

接口的温度传感器,在其内部使用了在板(ON-B0ARD)专利技术。

这款温度传感器是具有线路简单,体积小,方便易用等特点,温度测量范围为-55℃~+125℃,可编程为9位~12位AD转换精度,测量温度分辨率可达0.0625℃,被测温度用符号扩展的16位数字量方式串行输出。

全部传感元件及转换电路集成在形如一只三极管的集成电路内。

一线总线独特而且经济的特点,使用户可轻松地组建传感器网络,为测量系统的构建引入全新概念。

现在,新一代的DS18B20体积更小、更经济、更灵活。

使你可以充分发挥“一线总线”的优点[9]。

2.4.1特性

(1)适应电压范围更宽,电压范围:

3.0~5.5V,在寄生电源方式下可由数据线供电

(2)独特的单线接口方式,DS18B20在与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20的双向通讯

(3)DS18B20支持多点组网功能,多个DS18B20可以并联在唯一的三线上,实现组网多点测温

(4)DS18B20在使用中不需要任何外围元件,全部传感元件及转换电路集成在形如一只三极管的集成电路内

(5)温范围-55℃~+125℃,在-10~+85℃时精度为±

0.5℃

(6)可编程的分辨率为9~12位,对应的可分辨温度分别为0.5℃、0.25℃、0.125℃和0.0625℃,可实现高精度测温

(7)在9位分辨率时最多在93.75ms内把温度转换为数字,12位分辨率时最多在750ms内把温度值转换为数字,速度更快

(8)测量结果直接输出数字温度信号,以"

串行传送给CPU,同时可传送CRC校验码,具有极强的抗干扰纠错能力

(9)负压特性:

电源极性接反时,芯片不会因发热而烧毁,但不能正常工作

2.4.2DS18B20的外形和内部结构

DS18B20内部结构主要由四部分组成:

64位光刻ROM、温度传感器、非挥发的温度报警触发器TH和TL、配置寄存器。

DS18B20引脚定义:

(1)DQ为数字信号输入/输出端;

(2)GND为电源地;

(3)VDD为外接供电电源输入端(在寄生电源接线方式时接地)。

2.4.3DS18B20工作原理

DS18B20的读写时序和测温原理与DS1820相同,只是得到的温度值的位数因分辨率不同而不同,且温度转换时的延时时间由2s减为750ms。

低温度系数晶振的振荡频率受温度影响很小,用于产生固定频率的脉冲信号送给计数器1。

高温度系数晶振随温度变化其振荡率明显改变,所产生的信号作为计数器2的脉冲输入。

计数器1和温度寄存器被预置在-55℃所对应的一个基数值。

计数器1对低温度系数晶振产生的脉冲信号进行减法计数,当计数器1的预置值减到0时,温度寄存器的值将加1,计数器1的预置将重新被装入,计数器1重新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环直到计数器2计数到0时,停止温度寄存器值的累加,此时温度寄存器中的数值即为所测温度。

斜率累加器用于补偿和修正测温过程中的非线性,其输出用于修正计数器1的预置值.

2.4.4四个主要的数据部件

(1)光刻ROM中的64位序列号是出厂前被光刻好的,它可以看作是该DS18B20的地址序列码。

64位光刻ROM的排列是:

开始8位(28H)是产品类型标号,接着的48位是该DS18B20自身的序列号,最后8位是前面56位的循环冗余校验码(CRC=X8+X5+X4+1)。

光刻ROM的作用是使每一个DS18B20都各不相同,这样就可以实现一根总线上挂接多个DS18B20的目的。

(2)DS18B20中的温度传感器可完成对温度的测量,以12位转化为例:

用16位符号扩展的二进制补码读数形式提供,以0.0625℃/LSB形式表达,其中S为符号位。

表2.2DS18B20温度值格式表

Bit7

Bit6

Bit5

Bit4

Bit3

Bit2

Bit1

Bit0

LSByte

Bit15

Bit14

Bit13

Bit12

Bit11

Bit10

Bit9

Bit8

MSByte

S

这是12位转化后得到的12位数据,存储在18B20的两个8比特的RAM中,二进制中的前面5位是符号位,如果测得的温度大于0,这5位为0,只要将测到的数值乘于0.0625即可得到实际温度;

如果温度小于0,这5位为1,测到的数值需要取反加1再乘于0.0625即可得到实际温度。

例如+125℃的数字输出为07D0H,+25.0625℃的数字输出为0191H,-25.0625℃的数字输出为FF6FH,-55℃的数字输出为FC90H。

表2.3DS18B20温度数据表

TEMPERATURE

DIGITALOUTPUT

(Binary)

(Hex)

+125℃

0000011111010000

07D0h

+85℃

0000010101010000

0550h

+25.0625℃

0000000110010001

0191h

+10.125℃

0000000000001000

00A2h

+0.5℃

0000000000000000

0008h

0℃

1111111111111000

0000h

-0.5℃

1111111101011110

FFF8h

-10.125℃

1111111001101111

FF5Eh

-25.0625℃

FE6Fh

-55℃

1111110010010000

FC90h

*Thepower-onresetvalueofthetemperatureregisteris+85℃

(3)DS18B20温度传感器的存储器

DS18B20温度传感器的内部存储器包括一个高速暂存RAM和一个非易失性的可电擦除的EEPRAM,后者存放高温度和低温度触发器TH、TL和结构寄存器。

(4)配置寄存器

该字节各位的意义如表2.4:

表2.4配置寄存器结构

TM

R1

R0

低五位一直都是"

1"

,TM是测试模式位,用于设置DS18B20在工作模式还是在测试模式。

在DS18B20出厂时该位被设置为0,用户不要去改动。

R1和R0用来设置分辨率,如下表2.5所示:

(DS18B20出厂时被设置为12位)

表2.5温度分辨率设置表

分辨率

温度最大转换时间

9位

93.75ms

10位

187.5ms

11位

375ms

12位

750ms

2.4.5高速暂存存储器

高速暂存存储器由9个字节组成,其分配如表2.6所示。

当温度转换命令发布后,经转换所得的温度值以二字节补码形式存放在高速暂存存储器的第0和第1个字节。

单片机可通过单线接口读到该数据,读取时低位在前,高位在后。

对应的温度计算:

当符号位S=0时,直接将二进制位转换为十进制;

当S=1时,先将补码变为原码,再计算十进制值。

第九个字节是冗余检验字节。

根据DS18B20的通讯协议,单片机控制DS18B20完成温度转换必须经过三个步骤:

每一次读写之前都要对DS18B20进行复位操作,复位成功后发送一条ROM指令,最后发送RAM指令,这样才能对DS18B20进行预定的操作。

复位要求主CPU将数据线下拉500微秒,然后释放,当DS18B20收到信号后等待16~60微秒左右,后发出60~240微秒的存在低脉冲,主CPU收到此信号表示复位成功。

见表2.7和表2.8。

表2.6DS18B20暂存寄存器分布

寄存器内容

字节地址

温度值低位(LSByte)

温度值高位(MSByte)

高温限值(TH)

低温限值(TL)

配置寄存器

保留

CRC校验值

8

表2.7ROM指令表

指令

约定代码

功能

读ROM

33H

读DS1820温度传感器ROM中的编码(即64位地址)

符合ROM

55H

发出此命令之后,接着发出64位ROM编码,访问单总线上与该编码相对应的DS1820使之作出响应,为下一步对该DS1820的读写作准备。

搜索ROM

0FOH

用于确定挂接在同一总线上DS1820的个数和识别64位ROM地址。

为操作各器件作好准备。

跳过ROM

0CCH

忽略64位ROM地址,直接向DS1820发温度变换命令。

适用于单片工作。

告警搜索命令

0ECH

执行后只有温度超过设定值上限或下限的片子才做出响应。

表2.8RAM指令表

温度变换

44H

启动DS1820进行温度转换,12位转换时最长为750ms(9位为93.75ms)。

结果存入内部9字节RAM中。

读暂存器

0BEH

读内部RAM中9字节的内容

写暂存器

4EH

发出向内部RAM的3、4字节写上、下限温度数据命令,紧跟该命令之后,是传送两字节的数据。

复制暂存器

48H

将RAM中第3、4字节的内容复制到EEPROM中。

重调EEPROM

0B8H

将EEPROM中内容恢复到RAM中的第3、4字节。

读供电方式

0B4H

读DS1820的供电模式。

寄生供电时DS1820发送“0”,外接电源供电DS1820发送“1”。

2.4.6DS18B20使用中注意事项 

DS1820虽然具有测温系统简单、测温精度高、连接方便、占用口线少等优点,但在实际应用中也应注意以下几方面的问题:

1、较小的硬件开销需要相对复杂的软件进行补偿,由于DS18B20与微处理器间采用串行数据传送,因此,在对DS18B20进行读写编程时,必须严格的保证读写时序,否则将无法读取测温结果。

在使用PL/M、C等高级语言进行系统程序设计时,对DS18B20操作部分最好采用汇编语言实现。

2.在DS18B20的有关资料中均未提及单总线上所挂DS18B20数量问题,容易使人误认为可以挂任意多个DS18B20,在实际应用中并非如此。

当单总线上所挂DS18B20超过8个时,就需要解决微处理器的总线驱动问题,这一点在进行多点测温系统设计时要加以注意。

3.连接DS18B20的总线电缆是有长度限制的。

试验中,当采用普通信号电缆传输长度超过50m时,读取的测温数据将发生错误。

当将总线电缆改为双绞线带屏蔽电缆时,正常通讯距离可达150m,当采用每米绞合次数更多的双绞线带屏蔽电缆时,正常通讯距离进一步加长。

这种情况主要是由总线分布电容使信号波形产生畸变造成的。

因此,在用DS18B20进行长距离测温系统设计时要充分考虑总线分布电容和阻抗匹配问题。

4.在DS18B20测温程序设计中,向DS18B20发出温度转换命令后,程序总要等待DS18B20的返回信号,一旦某个DS18B20接触不好或断线,当程序读该DS18B20时,将没有返回信号,程序进入死循环。

这一点在进行DS1820硬件连接和软件设计时也要给予一定的重视。

测温电缆线建议采用屏蔽4芯双绞线,其中一对线接地线与信号线,另一组接VCC和地线,屏蔽层在源端单点接地。

2.5显示模块电路

2.5.1引脚功能:

表2.9LCD1602引脚说明

第1脚

VSS为电源地,接GND

第2脚

VDD接5V正电源

第3脚

VL为液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时对比度最高,对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度

第4脚

RS为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器

第5脚

RW为读写信号线,高电平时进行读操作,低电平时进行写操作。

当RS和RW共同为低电平时可以写入指令或者显示地址,当RS为低电平RW为高电平时可以读忙信号,当RS为高电平RW为低电平时可以写入数据。

第6脚

E端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令

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

当前位置:首页 > 自然科学 > 物理

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

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