基于单片机的家电热水器控制系统设计毕业设计(4)

2019-01-12 12:19

南京工程学院康尼学院本科毕业设计(论文)

设定,及用户设定的报警温度存储在EEPROM中,掉电后依然保存。DS18B20使电压、特性有更多的选择,让我们可以构建适合自己的经济的测温系统。如图2.5所示DS18B20的2脚DQ为数字信号输入/输出端;1脚GND为电源地;3脚VDD为外接供电电源输入端。

当传感器工作时,如果水温低于设定温度时,将温度传给单片机,热水器开始工作,加热指示灯亮。

2.2.1数字式温度传感器DS18B20 功能特性描述

DALLAS最新单线数字温度传感器DS18B20简介新的“一线器件”体积更小、适用电压更宽、更经济,Dallas 半导体公司的数字化温度传感器DS1820是世界上第一片支持 “一线总线”接口的温度传感器。一线总线独特而且经济的特点,使用户可轻松地组建传感器网络,为测量系统的构建引入全新概念。现在,新一代的“DS1820”体积更小、更经济、更灵活。使您可以充分发挥“一线总线”的长处。 DS18B20、 DS18B22 “一线总线”数字化温度传感器 同DS18B20一样,DS18B20也 支持“一线总线”接口,测量温度范围为 -55°C~+125°C,在-10~+85°C范围内,精度为±0.5°C。DS1822的精度较差为± 2°C 。现场温度直接以“一线总线”的数字方式传输,大大提高了系统的抗干扰性。适合于恶劣环境的现场温度测量,如:环境控制、设备或过程控制、测温类消费电子产品等。与前一代产品不同,新的产品支持3V~5.5V的电压范围,使系统设计更灵活、方便。而且新一代产品更便宜,体积更小。DS18B20可以程序设定9~12位的分辨率,精度为±0.5°C。可选更小的封装方式,更宽的电压适用范围。分辨率设定,及用户设定的报警温度存储在EEPROM中,掉电后依然保存。DS18B20的性能是新一代产品中最好的!性能价格比也非常出色! DS1822与 DS18B20软件兼容,是DS18B20的简化版本。省略了存储用户定义报警温度、分辨率参数的EEPROM,精度降低为±2°C,适用于对性能要求不高,成本控制严格的应用,是经济型产品。继“一线总线”的早期产品后,DS1820开辟了温度传感器技术的新概念。DS18B20和DS1822使电压、特性及封装有更多的选择,让我们可以构建适合自己的经济的测温系统。

管脚描述

DS18B20可编程温度传感器有3个管脚,如图2.6所示。GND为接地线,DQ为数据输入输出接口,通过一个较弱的上拉电阻与单片机相连。VDD为电源接口,既可由数据线提供电源,又可由外部提供电源,范围3 V~5.5V。本文使用外部电源供电。

10

南京工程学院康尼学院本科毕业设计(论文)

图2.6 DS18B20管脚图

1、测温功能:

当DSI8B20接收到温度转换命令后,开始启动转换。转换完成后的温度值就以16位带符号扩展的二进制补码形式存储在高速暂存存储器的0,1字节。单片机可通过单线接口读到该数据,读取时低位在前,高位在后,数据格式以0.0625℃/LSB形式表示。温度值格式表2.1示:

表2.1 温度格式

Bit15 Bit14 Bit13 Bit12 Bit11 Bit10 Bit9 Bit8 Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0 LS Byte 32 22 12 02 -12 -22 -32 -42 MS Byte S S S S S 62 52 42

其中“S”为标志位,对应的温度计算:当符号位S=0时,直接将二进制位转换为十进制;当S=1时,先将补码变换为原码,再计算十进制值。表2.1表是对应的一部分温度值。DSI8B20完成温度转换后,就把测得的温度值与TH做比较,若T>TH或T

由于DS18B20转换后的代码并不是实际的温度值,所以要进行计算转换。温度高字节(MS Byte)高5位是用来保存温度的正负(标志为S的bit11~bit15),高字节(MS Byte)低3位和低字节来保存温度值(bit0~bit10)。其中低字节(LS Byte)的低4位来保存温度的小数位(bit0~bit3)。由于本程序采用的是0.0625的精度,小数部分的值,可以用后四位代表的实际数值乘以0.0625,得到真正的数值,数值可能带几个小数位,所以采取小数舍入,保留一位小数即可。也就说,本系统的温度精确

11

南京工程学院康尼学院本科毕业设计(论文)

到了0.1度。

2.2.2 DS18B20的初始化与读写操作 1. DS18B20的初始化

(1) 先将数据线置高电平“1”;

(2) 延时(该时间要求的不是很严格,但是尽可能的短一点); (3) 数据线拉到低电平“0”;

(4) 延时750微秒(该时间的时间范围可以从480到960微秒); (5) 数据线拉到高电平“1”;

(6) 延时等待(如果初始化成功则在15到60毫秒时间之内产生一个由DS18B20所返回的低电平“0”。据该状态可以来确定它的存在,但是应注意不能无限的进行等待,不然会使程序进入死循环,所以要进行超时控制); (7) 若CPU读到了数据线上的低电平“0”后,还要做延时,其延时的时间从发出的高电平算起(第(5)步的时间算起)最少要480微秒; (8) 将数据线再次拉高到高电平“1”后结束。

DS18B20的的初始化见图2.7所示。

图2.7 DS18B20的的初始化

2. DS18B20的写操作

(1) 数据线先置低电平“0”; (2) 延时确定的时间为15微秒;

(3) 按从低位到高位的顺序发送字节(一次只发送一位); (4) 延时时间为45微秒; (5) 将数据线拉到高电平;

(6) 重复上(1)到(6)的操作直到所有的字节全部发送完为止; (7) 最后将数据线拉高。

12

南京工程学院康尼学院本科毕业设计(论文)

在这里要注意的是(3),写数据时时1bit单独传送,这里有两种情况。 当需要传送“1”时,单片机应该给DS18B20芯片的DQ接口赋低电平,大约15秒以后,将DQ释放为高电平,延时约45微妙即可。

当需要传送“0”时,单片机应该给DS18B20芯片的DQ接口赋低电平,并且持续拉低最少60微妙,然后将DQ释放为高电平,再延时约15秒即可。

DS18B20的写操作时序图见图2.8所示。

图2.8 DS18B20的写操作时序图

3. DS18B20的读操作 (1)将数据线拉高“1”; (2)延时2微秒; (3)将数据线拉低“0”; (4)延时15微秒; (5)将数据线拉高“1”; (6)延时15微秒;

(7)读数据线的状态得到一个状态位,并进行数据处理; (8)延时30微秒;

这里只要按以上操作将状态位的各各bit按顺序储存好即可。 DS18B20的读操作时序图见图2.9所示。

图2.9 DS18B20的读操作时序图

13

南京工程学院康尼学院本科毕业设计(论文)

2.2.3 DS18B20的指令

DS18B20温度传感器的存储器 DS18B20温度传感器的内部存储器包括一个高速暂存RAM和一个非易失性的可电擦除的EEPRAM,后者存放高温度和低温度触发器 TH、TL和结构寄存器。配置寄存器,该字节各位的意义见表2.2所示。

温度 +125℃ +85℃ +25.0625℃ +10.125℃ +0.5℃ 0℃ -0.5℃ -10.125℃ -25.0625℃ -55℃ 表2.2 配置寄存器结构 数据输出(二进制) 0000 0111 1101 0000 0000 0101 0101 0000 0000 0001 1001 0001 0000 0000 1010 0010 0000 0000 0000 1000 0000 0000 0000 0000 1111 1111 1111 1000 1111 1111 0101 1110 1111 1110 0110 1111 1111 1100 1001 0000 数据输出(十六进制) 07D0 0550 0191 00A2 0008 0000 FFF8 FF5E FE6F FC90 高速暂存存储器由9个字节组成。其分配见表2.3所示,当温度转换命令发布后,经转换所得的温度值以二字节补码形式存放在高速暂存存储器的第0和第1个字节。单片机可通过单线接口读到该数据,读取时低位在前,高位在后。对应的温度计算:当符号位S=0时,直接将二进制位转换为十进制;当S=1时,先将补码变为原码,再计算十进制值。第九个字节是冗余检验字节。

表2.3 DS18B20暂存寄存器分布 寄存器内容 温度值低位 (LS Byte) 温度值高位 (MS Byte) 高温限值(TH) 低温限值(TL) 配置寄存器 保留 保留 保留 CRC校验值 字节地址 0 1 2 3 4 5 6 7 8 根据DS18B20的通讯协议,主机(单片机)控制DS18B20完成温度转换必须经过三个步骤:每一次读写之前都要对DS18B20进行复位操作,复位成功后发送一条ROM指令,最后发送RAM指令,这样才能对DS18B20进行预定的操作。复位要求

14


基于单片机的家电热水器控制系统设计毕业设计(4).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:怎样在Word2003中如何去掉Word页眉横线

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: