数字温度传感器
单片机从发送完 复位脉冲到再次 控制总线至少要 等待480us
初始化时序
写时序
写时序分为写“0”间隙和写“1”间隙。
控制器写的过程是在大于 1us之后完成的 (为0继续低电平,为1释放总线),为了 保证数据的可靠性,DS18B20应该在15us 以后来读数据,这样可以保证数据线的电 平状态比较稳定。
DS18B20内部结构
DS18B20主要由4部分组成:64位ROM和单总线接口、温度 传感器、高速缓存存储器和非易失存储器
DS18B20内部结构
为了满足测温的灵活性,需要在不同的场合选择 不同的精度,通过对配置寄存器(CONFIG)的 编程即可实现。
CONFIG的格式如右示 其中R1、R0决定温度 转换的精度位数,默认
无论是内部寄生电源还是外部供电,I/O口 线都要接5K左右的上拉电阻。
DS18B20的控制方式
寄生电源供电方式
(外部供电)
外部电源供电方式
DS18B20工作过程
根 据 DS18B20 的 通 信 协 议 , 单 片 机 控 制 DS18B20完成温度转换必须经过如下几个 步骤:每一次读写之前进行初始化;初始 化成功后执行一条对ROM的操作指令;然 后 进 行 存 储 器 (RAM) 操 作 指 令 , 使 DS18B20完成温度测量并将结果存入高速 缓存器,在此基础上,主机才能独处转换 结果。
写时序
读时序
读DS18B20必须严格按照读间隙的时5us内完成的,为了 保证数据的可靠性,主控制器应该在接近 15us的末尾来读数据,这样可以保证数据 线的电平状态比较稳定。
读时序
读时序
主程序流程图
小结
DS18B20的简单应用
DS18B20具体性能
一总线接口 每个芯片都有一个唯一的64位的序列号 简单的多点分布应用 ,CPU只需一个I/O口就能与多个
DS18B20通信 无需外部器件 供电范围3.0V-5.5V,温度测量范围为-55℃ -125℃ 在-10℃~85 ℃范围内测量精度可达±0.5 ℃ 可编程为9-12位A/D转换精度,测温分辨率可达0.0625 多个DS18B20可以并联到3根或2根线上 可由用户设置的非易失温度越界报警
温度传感器的实际应用
如果按传感器与被测对象的接触方式可分为两大 类:一是接触式温度传感器,一是非接触式温度 传感器。
接触式温度传感器的测温元件与被测对象要有良 好的热接触,通过热传导及对流原理达到热平衡, 这时温度计的是被测对象的温度,这种测温方法 精度比较高。
但对于运动的、热容量比较小的、或对感温元件 有腐蚀作用的对象,这种方法将会产生很大误差。
DS18B20
2020/4/21
电子信息系 袁可可
教学目标
了解DS18B20原理 掌握DS18B20的简单应用
温度传感器的实际应用
温度是工农业生产中最常用的参数之一。 近年来,随着家用电器、日用装置的自动 化、无公害、节能运动的日益发展,特别 是微控制器的应用,对各类传感器的需求 更是大量增加,在30多种常用物理量的测 量传感器中,对温度传感器的需要量占首 位,大约占50%左右。
数字温度传感器DS18B20
温度测量本来是一个比较复杂的过程,通 常的办法是用温度传感器将温度转换成电 压信号,然后再进行A/D转换,得到对应的 电压值,而且还需要对温度传感器进行线 性拟合、误差修正等过程。
而DS18B20在内部完成整个过程,直接可 以通过一总线得到温度数据,大大简化了 温度测量的过程,所以在许多温度测量控 制中都有应用。
非接触测温的测温元件与被测对象互不接触。最 常用的是根据辐射热交换原理制成的传感器。
数字温度传感器DS18B20
外观
DS18B20 数 字 温 度 计 是 DALLAS 公 司 生 产 的 1Wire,即单总线器件,具 有线路简单,体积小的特 点,因此用它来组成一个 测温系统,具有线路简单, 在一根通信线,可以挂很 多这样的数字温度计,十 分方便。
DS18B20共有5条ROM操作命令,6条RAM 操作命令
DS18B20工作过程
DS18B20时序及编程
DS18B20与单片机的通信是通过严格的时 序来实现的,每次传送数据或命令都是一 系列的时序信号组成,共有三种基本时序: 初始化时序;写0、1时序;读0、1时序。
初始化时序
单片机先发一个复位脉冲,保持低电平时 间480us-960us;然后释放数据线由上拉电 阻将数据线置为高电平,等待应答脉冲, 等待时间15us-60us;然后由DS18B20应答, 应答脉冲能保持60us-240us。
12位
DS18B20温度存储器
DS18B20测得的温度可以达到12位,所以 使用两个8位的存储器存储。
以16位符号扩展的二进制补码读数形式存 储在高速缓存器的第0、1字节单元。
DS18B20温度存储器
单片机通过单总线接口读该数据(低位在 前)。
被测温度大于0,S=0,实际温度=测得数值 *0.0625
被测温度小于0,S=1,实际温度=测得数值 取反加1*0.0625
不同温度与数字输出对应关系
DS18B20的控制方式
DS18B20与单片机的连接有两种方法:
一种是VDD接外部电源,GND接地,DQ与 单片机的I/O线相连;
另 一 种 是 用 寄 生 电 源 供 电 , 此 时 VDD 、 GND接地,DQ接单片机I/O口。