DS18B20中文资料--最全版
DS18B20中文资料(全)
达拉斯DS18B20半导体可编程分辨率的单总线®数字温度计特征引脚排列l独特的单线接口仅需一个端口引脚进行通讯l每个器件有唯一的64位的序列号存储在内部存储器中l简单的多点分布式测温应用l无需外部器件l可通过数据线供电。
供电范围为3.0V到5.5V。
l测温范围为-55~+125℃(-67~+257℉)l在-10~+85℃范围内精确度为±5℃l温度计分辨率可以被使用者选择为9~12位l最多在750ms内将温度转换为12位数字l用户可定义的非易失性温度报警设置l报警搜索命令识别并标志超过程序限定温度(温度报警条件)的器件l与DS1822兼容的软件l应用包括温度控制、工业系统、消费品、温度计或任何热感测系统引脚说明GND -地DQ -数据I/OVDD -可选电源电压NC -无连接说明DS18B20数字温度计提供9-12位摄氏温度测量而且有一个由高低电平触发的可编程的不因电源消失而改变的报警功能。
DS18B20通过一个单线接口发送或接受信息,因此在中央处理器和DS18B20之间仅需一条连接线(加上地线)。
它的测温范围为-55~+125℃,并且在-10~+85℃精度为±5℃。
除此之外,DS18B20能直接从单线通讯线上汲取能量,除去了对外部电源的需求。
每个DS18B20都有一个独特的64位序列号,从而允许多只DS18B20同时连在一根单线总线上;因此,很简单就可以用一个微控制器去控制很多覆盖在一大片区域的DS18B20。
这一特性在HVAC环境控制、探测建筑物、仪器或机器的温度以及过程监测和控制等方面非常有用。
详细的引脚说明表18引脚SOIC封装* TO-9封装符号说明5 1 GND 接地。
4 2 DQ 数据输入/输出引脚。
对于单线操作:漏极开路。
当工作在寄生电源模式时用来提供电源(建“寄生电源”节)。
3 3 VDD 可选的VDD引脚。
工作与寄生电源模式时VDD必须接地。
*所有上表未提及的引脚都无连接。
DS18B20数据手册-中文版
DS18B20数据手册-中文版DS18B20 分辨率可编程概述1-Wire数字温度传感器 DS18B20数字温度传感器提供9-Bit到12-Bit的摄氏温度测量精度和一个用户可编程? 温度转换时间在转换精度为12-Bits时达到的非易失性且具有过温和低温触发报警的报警最大值750ms。
功能。
DS18B20采用的1-Wire通信即仅采用一? 用户自定义非易失性的的温度报警设置。
个数据线(以及地)与微控制器进行通信。
该? 定义了温度报警搜索命令和当温度超过用户传感器的温度检测范围为-55?至+125?,并且自定义的设定值时。
在温度范围超过-10?至85?之外时还具有? 可选择的8-Pin SO (150 mils), 8-PinμSOP,+-0.5?的精度。
此外,DS18B20可以直接由数及3-Pin TO-92封装。
据线供电而不需要外部电源供电。
? 与DS1822程序兼容。
每片DS18B20都有一个独一无二的64位? 应用于温度控制系统,工业系统,民用产品,序列号,所以一个1-Wire总线上可连接多个温度传感器,或者任何温度检测系统中。
DS18B20设备。
因此,在一个分布式的大环境管脚定义图里用一个微控制器控制多个DS18B20是非常简单的。
这些特征使得其在HVAC环境控制,在建筑、设备及机械的温度监控系统,以及温度过程控制系统中有着很大的优势。
特性独特的1-Wire总线接口仅需要一个管脚来通信。
每个设备的内部ROM上都烧写了一个独一无二的64位序列号。
多路采集能力使得分布式温度采集应用更加简单。
无需外围元件。
能够采用数据线供电;供电范围为3.0V至5.5V。
温度可测量范围为:-55?至+125?(-67?至+257?)。
温度范围超过-10?至85?之外时具有+-0.5?的精度。
内部温度采集精度可以由用户自定义为9-Bits至12-Bits。
DS18B20订购信息零件温度范围引脚数-封装顶部标号DS18B20 3 TO-92 18B20 -55?至+125?DS18B20+ 3 TO-92 18B20 -55?至+125?DS18B20/T&R 18B20 -55?至+125? 3 TO-92(2000片)DS18B20+T&R 18B20 -55?至+125? 3 TO-92(2000片)DS18B20-SL/T&R 18B20 -55?至+125? 3 TO-92(2000片)* DS18B20-SL+T&R 18B20 -55?至+125? 3 TO-92(2000片)* DS18B20U 8 uSOP 18B20 -55?至+125?DS18B20U+ 8 uSOP 18B20 -55?至+125?DS18B20U/T&R 18B20 -55?至+125? 8 uSOP(3000片)DS18B20+T&R 18B20 -55?至+125? 8 uSOP(3000片)DS18B20Z 8 SO DS18B20 -55?至+125?DS18B20Z+ 8 SO DS18B20 -55?至+125?DS18B20Z/T&R DS18B20 -55?至+125? 8 SO(2500片)DS18B20Z+T&R DS18B20 -55?至+125? 8 SO(2500片)“+”号表示的是无铅封装。
DS18B20中英文数据手册
DS18B20可编程分辨率的单总线.数字温度计特征独特的单线接口仅需一个端口引脚进行通讯每个器件有唯一的64位的序列号存储在内部存储器中简单的多点分布式测温应用无需外部器件可通过数据线供电。
供电范围为3.0V到5.5V测温范围为-55~+125℃(-67~+257℉)在-10~+85℃范围内精确度为±5℃温度计分辨率可以被使用者选择为9~12位最多在750ms内将温度转换为12位数字用户可定义的非易失性温度报警设置报警搜索命令识别并标志超过程序限定温度(温度报警条件)的器件与DS1822兼容的软件应用包括温度控制、工业系统、消费品、温度计或任何热感测系统引脚排列说明DS18B20数字温度计提供9至12位的摄氏温度测量,并具有易失性的用户可编程触发点的上限和下限报警功能。
DS18B20单总线通信按定义只需要一条数据线(和地线)与中央微处理器进行通信。
它具有工作温度范围55°C+125°C和准确±0.5°C范围-10°C+85°C.此外,DS18B20可以导出功率直接从数据线(“寄生虫”),消除了外部电源需要。
每个DS18B20都有一个唯一的64位串行码,它允许多个DS18B20在同一根总线功能。
因此,它是用一个简单的微处理器控制,大面积分布的许多DS18B20s。
应用程序可以受益于这个功能包括空调环境控制,建筑物内的温度监控系统,设备,或机械,和过程监控控制系统。
概览图1是表示DS18B20的方框图,表1已经给出了引脚说明。
64位只读存储器储存器件的唯一片序列号。
高速暂存器含有两个字节的温度寄存器,这两个寄存器用来存储温度传感器输出的数据。
除此之外,高速暂存器提供一个直接的温度报警值寄存器(TH和TL),和一个字节的的配置寄存器。
配置寄存器允许用户将温度的精度设定为9,10,11或12位。
TH,TL和配置寄存器是非易失性的可擦除程序寄存器(EEPROM),所以存储的数据在器件掉电时不会消失。
DS18B20中文手册
达拉斯 半导体DS18B20可编程分辨率的 单总线®数字温度计特征引脚排列●独特的单线接口仅需一个端口引脚进行通讯●每个器件有唯一的 64位的序列号存储在内部存储器中●简单的多点分布式测温应用 ●无需外部器件●可通过数据线供电。
供电范围为3.0V到5.5V 。
●测温范围为-55~+125℃(-67~+257℉)●在-10~+85℃范围内精确度为±5℃●温度计分辨率可以被使用者选择为9~12位●最多在 750ms 内将温度转换为 12位数字●用户可定义的非易失性温度报警设置●报警搜索命令识别并标志超过程序限定温度(温度报警条件)的器件 ●与DS1822兼容的软件●应用包括温度控制、工业系统、消费品、温度计或任何热感测系统引脚说明GND DQ -地 -数据I/OVDD NC-可选电源电压 -无连接说明DS18B20数字温度计提供 9-12位摄氏温度测量而且有一个由高低电平触发的可编程的不因电源消失而改变的报警功能。
DS18B20通过一个单线接口发送或接受信息,因此在中央处理器和 DS18B20之间仅需一条连接线(加上地线)。
它的测温范围为-55~+125℃,并且在-10~+85℃精度为±5℃。
除此之外,DS18B20能直接从单线通讯线上汲取能量,除去了对外部电源的需求。
每个DS18B20都有一个独特的64位序列号,从而允许多只DS18B20同时连在一根单线总线上;因此,很简单就可以用一个微控制器去控制很多覆盖在一大片区域的DS18B20。
这一特性在HVAC环境控制、探测建筑物、仪器或机器的温度以及过程监测和控制等方面非常有用。
详细的引脚说明表18引脚SOIC封装* TO-9封装符号说明5 4 12GNDDQ接地。
数据输入/输出引脚。
对于单线操作:漏极开路。
当工作在寄生电源模式时用来提供电源(建“寄生电源”节)。
可选的VDD引脚。
工作与寄生电源模式时VDD必须接地。
3 3 VDD*所有上表未提及的引脚都无连接。
DS18B20中文资料
DS18B20中文资料DS18B20是一种数字温度传感器,采用单总线数据传输协议进行通信。
它能够高精度地测量环境温度,并且具有体积小、价格低廉、使用方便等特点。
本文将介绍DS18B20传感器的原理、特性以及应用场景。
一、传感器原理DS18B20传感器采用基于硅的温度传感技术。
其内部集成了温度传感器、模数转换器等电路,以及一组ROM(只读存储器)和RAM(随机存储器)。
传感器通过感应环境温度引起的半导体温度变化,将温度值转换为数字信号输出。
二、传感器特性1. 高精度:DS18B20传感器具有最高精度为±0.5°C的温度测量能力,适用于对于精度要求较高的应用场景。
2. 大量程:传感器可在-55°C至+125°C的温度范围内进行测量,适用于广泛的温度监测需求。
3. 单总线接口:传感器采用单总线接口进行数据传输,仅需要一根数据线,方便集成和使用。
4. 低功耗:传感器工作时的电源电压范围为3V至5.5V,具有低功耗的特点,适用于需要长时间连续监测温度的场景。
5. 独特的硬件地址:每个DS18B20传感器都有一个独特的64位硬件地址,可以通过该地址进行单独的识别和通信。
三、传感器应用由于DS18B20传感器具有小巧、精确、方便等特点,因此在很多领域得到了广泛应用。
1. 温度监测系统:传感器可以应用于各种温度监测系统,如气象站、冷链物流、温度报警器等。
通过使用多个DS18B20传感器,可以实现对不同位置的温度进行监测和记录。
2. 温度控制系统:传感器可以用于控制温度的系统,例如恒温器、温室控制系统等。
通过实时监测环境温度,并根据需求进行温度控制,可以提供更舒适的生活和工作环境。
3. 工业自动化:在工业环境中,温度监测也是很重要的一项任务。
DS18B20传感器可以与PLC、SCADA等系统集成,用于工业自动化控制和监测。
4. 物联网应用:随着物联网的发展,温度传感器在物联网应用中的需求越来越大。
Ds18B20
DS18B20中文资料(特点,管脚图,寄存器及应用电路及程序)--------------------------------------------------------------------------------常用温度传器DS18B20的中文资料(特点,管脚图,寄存器及应用电路及程序)DS18B20特点1.单线结构,只需一根信号线和CPU相连。
2. 不需要外部元件,直接输出串行数据。
3. 可不需要外部电源,直接通过信号线供电,电源电压范围为3.3V~5V。
4.测温精度高,测温范围为:一55℃~+125℃,在-10℃~+85℃范围内,精度为±O.5℃。
5.测温分辨率高,当选用12位转换位数时,温度分辨率可达0.0625℃。
6.数字量的转换精度及转换时间可通过简单的编程来控制:9位精度的转换时间为93.75 ms:10位精度的转换时间187.5ms:12位精度的转换时间750ms。
7.具有非易失性上、下限报警设定的功能,用户可方便地通过编程修改上、下限的数值。
8.可通过报警搜索命令识别哪片DS18820采集的温度超越上、下限。
DS18B20引脚及管脚功能介绍DS18B20的常用封装有3脚、8脚等几种形式,如图1所示。
各脚含义如下:DQ:数字信号输入/输出端。
GND:电源地端。
VDD:外接供电电源输入端(在寄生电源接线时此脚应接地)。
DS18B20内部结构简要介绍:DS18820的内部结构如图3所示:主要有64位光刻ROM、温度传感器、非易失性温度报警触发器TH和TL、配置寄存器等组成。
1.64位光刻ROM是生产厂家给每一个出厂的DS18820命名的产品序列号,可以看作为该器件的地址序列号。
其作用是使每一个出厂的DS18820地址序列号都各不相同,这样,就可以实现一根总线上挂接多个DS18820的目的。
2.DS18820中的温度传感器完成对温度的测量,输出格式为:16位符号扩展的二进制补码。
温度传感器DS18B20中文资料
以 0.5 的增量值 在 0.5 至+125 的范围内测量温度 对于应用华氏温度的场合 必须使用查
找表或变换系数
注意 在 DS1820 中 温度是以 1/2 LSB 最低有效位 形式表示时 产生以下 9 位格式
MSB 最高有效位 1
最低有效位 LSB 11001110
= -25 最高有效 符号 位被复制到存储器内两字节的温度寄存器中较高 MSB 的所有位 这种 符号扩展
4
PD om
PD om
er ww
er ww
F-XChange View !
Click to buy NOW
w.docu-track.c
TARGETECH®
DS1820
F-XChange View !
Click to buy NOW
w.docu-track.c
图 3 使用 VDD 提供温度变换所需电流
钭率累加器用于补偿振荡器温度特性的非线性 以产生高分辩率的温度测量 通过改变温度每 升高一度 计数器必须经历的计数个数来实行补偿 因此 为了获得所需的分辩率 计数器的数值
5
PD om
PD om
er ww
er ww
F-XChange View !
Click to buy NOW
w.docu-track.c
Click to buy NOW
w.docu-track.c
到这一点 当使用寄生电源方式时 VDD 引脚必须连接到地 向 DS1820 供电的另外一种方法是通过使用连接到 VDD 引脚的外部电源 如图 3 所示 这种方法
的优点是在 I/O 线上不要求强的上拉 总线上主机不需向上连接便在温度变换期间使线保持高电
3
DS18B20中文资料(特点,管脚图,寄存器及应用电路及程序)
DS18B20特点1.单线结构,只需一根信号线和CPU相连。
2. 不需要外部元件,直接输出串行数据。
3. 可不需要外部电源,直接通过信号线供电,电源电压范围为3.3V~5V。
4.测温精度高,测温范围为:一55℃~+125℃,在-10℃~+85℃范围内,精度为±O.5℃。
5.测温分辨率高,当选用12位转换位数时,温度分辨率可达0.0625℃。
6.数字量的转换精度及转换时间可通过简单的编程来控制:9位精度的转换时间为93.75 ms:10位精度的转换时间187.5ms:12位精度的转换时间750ms。
7.具有非易失性上、下限报警设定的功能,用户可方便地通过编程修改上、下限的数值。
8.可通过报警搜索命令识别哪片DS18820采集的温度超越上、下限。
DS18B20引脚及管脚功能介绍DS18B20的常用封装有3脚、8脚等几种形式,如图1所示。
各脚含义如下:DQ:数字信号输入/输出端。
GND:电源地端。
VDD:外接供电电源输入端(在寄生电源接线时此脚应接地)。
DS18B20内部结构简要介绍:DS18820的内部结构如图3所示:主要有64位光刻ROM、温度传感器、非易失性温度报警触发器TH和TL、配置寄存器等组成。
1.64位光刻ROM是生产厂家给每一个出厂的DS18820命名的产品序列号,可以看作为该器件的地址序列号。
其作用是使每一个出厂的DS18820地址序列号都各不相同,这样,就可以实现一根总线上挂接多个DS18820的目的。
2.DS18820中的温度传感器完成对温度的测量,输出格式为:16位符号扩展的二进制补码。
当测温精度设置为12位时,分辨率为O.0625℃,即O.0625℃/LSB。
其二进制补码格式如图2所示。
其中,S为符号位,S=1,表示温度为负值;S=0,表示温度为正值。
例如+125℃的数字输出为07D0H,-55℃的数字输出为FC90H。
一些温度值对应的数字输出如图4所示。
3.DS18820中的低温触发器TL、高温触发器TH,用于设置低温、高温的报警数值。
dallas DS18B20中文资料
16 脚 SSOP PR35 符号
说明
9
1 GND 接地
8
2 DQ 数据输入/输出脚。对于单线操作:漏极开路(见“寄生电源”节)
7
3 VDD 可选的 VDD 引脚。具体接法见“寄生电源”节
DS18B20中文资料--最全版
18B20温度传感器应用解析温度传感器的种类众多,在应用与高精度、高可靠性的场合时DALLAS(达拉斯)公司生产的DS18B20温度传感器当仁不让。
超小的体积,超低的硬件开消,抗干扰能力强,精度高,附加功能强,使得DS18B20更受欢迎。
对于我们普通的电子爱好者来说,DS18B20的优势更是我们学习单片机技术和开发温度相关的小产品的不二选择。
了解其工作原理和应用可以拓宽您对单片机开发的思路。
DS18B20的主要特征:全数字温度转换及输出。
先进的单总线数据通信。
最高12位分辨率,精度可达土0.5摄氏度。
12位分辨率时的最大工作周期为750毫秒。
可选择寄生工作方式。
检测温度范围为–55°C ~+125°C (–67°F ~+257°F)内置EEPROM,限温报警功能。
64位光刻ROM,内置产品序列号,方便多机挂接。
多样封装形式,适应不同硬件系统。
DS18B20芯片封装结构:DS18B20引脚功能:·GND 电压地·DQ 单数据总线·VDD 电源电压·NC 空引脚DS18B20工作原理及应用:DS18B20的温度检测与数字数据输出全集成于一个芯片之上,从而抗干扰力更强。
其一个工作周期可分为两个部分,即温度检测和数据处理。
在讲解其工作流程之前我们有必要了解18B20的内部存储器资源。
18B20共有三种形态的存储器资源,它们分别是:ROM 只读存储器,用于存放DS18B20ID编码,其前8位是单线系列编码(DS18B 20的编码是19H),后面48位是芯片唯一的序列号,最后8位是以上56的位的CRC码(冗余校验)。
数据在出产时设置不由用户更改。
DS18B20共64位ROM。
RAM 数据暂存器,用于内部计算和数据存取,数据在掉电后丢失,DS18B20共9个字节RAM,每个字节为8位。
第1、2个字节是温度转换后的数据值信息,第3、4个字节是用户EEPROM(常用于温度报警值储存)的镜像。
DS18B20详细中文资料
分辨率可编程单总线数字温度传感器——DS18B20 特征:独特单总线接口,只需要一个端口引脚线即可实现通信每个器件的片上ROM 有一个独特64 位串行码存储多点能力使分布式温度检测应用得到简化不需要外围元件能用数据线供电,供电的范围3.0V~5.5V测量温度的范围:-55℃~+125℃(-67℉~+257℉)从-10℃~+85℃的测量的精度是±0.5℃温度传感器分别率由用户从9-12 位中选择在750ms 内把温度转换为12 位数字字(最大值)用户可定义,非易失性温度告警设置告警搜索命令识别和寻址温度在编定的极限之外的器件(温度告警情况)可采用8 引脚SO(150mil)、8 引脚µSOP 和3 引脚TO-92 封装软件兼容DS1822 器件应用范围包括:恒温控制、工业系统、消费类产品、温度计和任何的热敏系统图1 DS18B20 引脚排列图引脚说明:GND—地DQ—数字输入输出VDD—供电电压NC—空连接一般说明:DS18B20 数字温度传感器提供9~12 位摄氏温度的测量,拥有非易失性用户可编程最高与最低触发点告警功能。
DS18B20 通过单总线实现通信,单总线通常是DS18B20 连接。
它能够感应温度的范围为-55℃~+125℃,在-10℃~+85℃的测量的精度是±0.5℃,而且DS18B20 可以直接从数据线上获取供电(寄生电源)而不需要一个额外的外部电源。
因为每个DS18B20 拥有一个独特的64 序列号,因此它允许多个DS18B20 在一条单总线上,所以很方便使用一个微控制器来控制多个分布在较大范围内的DS18B20。
受益于这一特性的应用包括HAVC 环境控制、建筑物、设备和机械内的温度监测、以及过程监测和控制过程的温度监测。
图2注意: A "+"符号在封装上也标有。
订购信息表1S O* µSOP * TO-924 4 15 1 23 8 3DS18B20 详细引脚说明号符明说GND 地当脚引线总单路开,脚引出输入输据数,DQ 生寄见(供件器给时式模源电生寄用使电)分部源电VDD 选可下式模作操源电生寄在脚引,VDDVDD 地接须必* 表中所有未列出的引脚都是NC(空接)概述:方框图3 给出了表一所描述的DS18B20 的主要引脚连接。
DS18B20数据手册-中文版
DS18B20数据手册-中文版关键信息项1、协议名称:DS18B20 数据手册中文版2、适用产品:DS18B20 传感器3、数据格式:详细说明数据的传输和存储格式4、测量范围:明确传感器能够测量的温度范围5、精度:给出测量温度的精度数值6、响应时间:描述传感器对温度变化的响应速度7、供电要求:说明所需的供电电压和电流等参数8、接口类型:注明与其他设备连接的接口类型和规范11 概述本协议旨在提供关于DS18B20 传感器的详细技术规格和使用说明,以确保用户能够正确、有效地使用该传感器进行温度测量和数据处理。
111 DS18B20 简介DS18B20 是一款数字式温度传感器,具有体积小、精度高、接口简单等优点,广泛应用于各种温度测量场景。
112 特点1、独特的单总线接口,仅需一根数据线即可与微控制器进行通信。
2、测量范围广,可满足大多数应用场景的需求。
3、在-10℃至+85℃范围内,精度可达 ±05℃。
12 技术规格121 测量范围-55℃至+125℃122 精度在-10℃至+85℃范围内,精度为 ±05℃;在其他温度范围内,精度会有所降低。
123 分辨率用户可通过编程设置分辨率,可选 9 位至 12 位。
124 响应时间典型的温度转换时间为 750ms(12 位分辨率)。
13 供电要求131 供电电压工作电压范围为 30V 至 55V。
132 电流消耗在待机模式下,电流消耗极低;在温度转换期间,电流消耗会有所增加。
14 接口类型141 单总线接口采用独特的单总线协议进行通信,数据线需要上拉电阻。
142 时序要求严格遵循单总线的时序要求,以确保数据的正确传输。
15 数据格式151 温度数据以 16 位补码形式存储温度值。
152 校验位包含校验位以确保数据的准确性。
16 操作指令161 初始化指令用于启动传感器与控制器之间的通信。
162 温度转换指令触发传感器进行温度测量和转换。
163 读取数据指令读取传感器转换后的温度数据。
最全面DS18B20中文资料
//实际值为 10.125 //10,无小数点 //101 ,一位小数点 //1012,二位小数点
如以上的例题,我们可以先将 0.0625 乘以 10,然后再乘以整合后的 Temperature 变量, 就可以求出后面一个小数点的值(求出更多的小数点,方法都是以此类推 )。得出的结 果是 101,然后再利用简单的算法,求出每一位的值。
在这里我们遇见了一个问题,就是如何求出负数的值呢?很遗憾的,单片机不像人脑那 样会心算,我们必须判断 BIT11~15 是否是 1,然后人为置一负数标志。
Eg. 假设从,字节 0 读取到 0x90 赋值于 Temp1,而字节 1 读取到 0xFC 赋值于 Temp2, 然后求出该值是不是负数,和转换成十进制值。
//Temperature = ((Temp2<<8 ) | Temp1 ) * 0.0625; Temperature = ((Temp2<<8 ) | Temp1 ) * (0.0625 * 10) ; //Temperature = ((Temp2<<8 ) | Temp1 ) * (0.0625 * 100) ;
14.5 字节 4:配置寄存器
BIT7 出厂的时候就已经设置为 0,用户不建议去更改。而 R1 与 R0 位组合了四个不同 的转换精度,00 为 9 位转换精度而转换时间是 93.75ms,01 为 10 位转换精度而转换时 间是 187.5ms,10 为 11 位转换精度而转换时间是 375ms,11 为 12 位转换精度而转换时 间是 750ms(默认)。该寄存器还是留默认的好,毕竟转换精度表示了转换的质量。
DS18B20 有三只引脚,VCC,DQ,和 VDD。
而 HJ-2G 板子上,采用了外部供电的链接方式,而总线必须链接上拉电阻。这一目的告 诉我们,一线总线在空置状态时,都是一直处于高电平。
数字温度传感器DS18B20中文资料(含读写程序)
数字温度传感器DS18B20中文资料(含读写程序)数字温度传感器__中文资料(含读写程序)的学习供参考数字温度传感器__中文资料(含读写程序)__特点1.单线结构,只需一根信号线和CPU相连。
2. 不需要外部元件,直接输出串行数据。
3. 可不需要外部电源,直接通过信号线供电,电源电压范围为3.3V~5V。
4.测温精度高,测温范围为:一55℃~+125℃,在-10℃~+85℃范围内,精度为±O.5℃。
5.测温分辨率高,当选用12位转换位数时,温度分辨率可达0.0625℃。
6.数字量的转换精度及转换时间可通过简单的编程来控制:9位精度的转换时间为93.75 ms:10位精度的转换时间187.5ms:12位精度的转换时间750ms。
7.具有非易失性上、下限报警设定的功能,用户可方便地通过编程修改上、下限的数值。
8.可通过报警搜索命令识别哪片DS__采集的温度超越上、下限。
__引脚及管脚功能介绍__的常用封装有3脚、8脚等几种形式,如图1所示。
各脚含义如下:DQ:数字信号输入/输出端。
GND:电源地端。
VDD:外接供电电源输入端(在寄生电源接线时此脚应接地)。
__内部结构简要介绍:DS__的内部结构如图3所示:主要有64位光刻ROM、温度传感器、非易失性温度报警触发器TH和TL、配置寄存器等组成。
1.64位光刻ROM是生产厂家给每一个出厂的DS__命名的产品序列号,可以看作为该器件的地址序列号。
其作用是使每一个出厂的DS__地址序列号都各不相同,这样,就可以实现一根总线上挂接多个DS__的目的。
2.DS__中的温度传感器完成对温度的测量,输出格式为:16位符号扩展的二进制补码。
当测温精度设置为12位时,分辨率为O.0625℃,即O.0625℃/LSB。
其二进制补码格式如图2所示。
其中,S为符号位,S=1,表示温度为负值;S=0,表示温度为正值。
例如+125℃的数字输出为07D0H,-55℃的数字输出为FC90H。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
18B20温度传感器应用解析温度传感器的种类众多,在应用与高精度、高可靠性的场合时DALLAS(达拉斯)公司生产的DS18B20温度传感器当仁不让。
超小的体积,超低的硬件开消,抗干扰能力强,精度高,附加功能强,使得DS18B20更受欢迎。
对于我们普通的电子爱好者来说,DS18B20的优势更是我们学习单片机技术和开发温度相关的小产品的不二选择。
了解其工作原理和应用可以拓宽您对单片机开发的思路。
DS18B20的主要特征:?? 全数字温度转换及输出。
?? 先进的单总线数据通信。
?? 最高12位分辨率,精度可达土0.5摄氏度。
?? 12位分辨率时的最大工作周期为750毫秒。
?? 可选择寄生工作方式。
?? 检测温度范围为–55°C ~+125°C (–67°F ~+257°F)?? 内置EEPROM,限温报警功能。
?? 64位光刻ROM,内置产品序列号,方便多机挂接。
?? 多样封装形式,适应不同硬件系统。
DS18B20芯片封装结构:DS18B20引脚功能:·GND 电压地·DQ 单数据总线·VDD 电源电压·NC 空引脚DS18B20工作原理及应用:DS18B20的温度检测与数字数据输出全集成于一个芯片之上,从而抗干扰力更强。
其一个工作周期可分为两个部分,即温度检测和数据处理。
在讲解其工作流程之前我们有必要了解18B20的内部存储器资源。
18B20共有三种形态的存储器资源,它们分别是: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都存在镜像,以方便用户操作。
RAM及EEPROM结构图:图2我们在每一次读温度之前都必须进行复杂的且精准时序的处理,因为DS18B20的硬件简单结果就会导致软件的巨大开消,也是尽力减少有形资产转化为无形资产的投入,是一种较好的节约之道。
控制器对18B20操作流程:1,复位:首先我们必须对DS18B20芯片进行复位,复位就是由控制器(单片机)给DS18B20单总线至少480uS的低电平信号。
当18B20接到此复位信号后则会在15~60uS后回发一个芯片的存在脉冲。
2,存在脉冲:在复位电平结束之后,控制器应该将数据单总线拉高,以便于在15~60uS后接收存在脉冲,存在脉冲为一个60~240uS的低电平信号。
至此,通信双方已经达成了基本的协议,接下来将会是控制器与18B20间的数据通信。
如果复位低电平的时间不足或是单总线的电路断路都不会接到存在脉冲,在设计时要注意意外情况的处理。
3,控制器发送ROM指令:双方打完了招呼之后最要将进行交流了,ROM指令共有5条,每一个工作周期只能发一条,R OM指令分别是读ROM数据、指定匹配芯片、跳跃ROM、芯片搜索、报警芯片搜索。
ROM指令为8位长度,功能是对片内的64位光刻ROM进行操作。
其主要目的是为了分辨一条总线上挂接的多个器件并作处理。
诚然,单总线上可以同时挂接多个器件,并通过每个器件上所独有的ID号来区别,一般只挂接单个18B20芯片时可以跳过ROM指令(注意:此处指的跳过ROM指令并非不发送ROM指令,而是用特有的一条“跳过指令”)。
ROM指令在下文有详细的介绍。
4,控制器发送存储器操作指令:在ROM指令发送给18B20之后,紧接着(不间断)就是发送存储器操作指令了。
操作指令同样为8位,共6条,存储器操作指令分别是写RAM数据、读RAM数据、将RAM数据复制到EEPROM、温度转换、将EEPROM中的报警值复制到RAM、工作方式切换。
存储器操作指令的功能是命令18B20作什么样的工作,是芯片控制的关键。
5,执行或数据读写:一个存储器操作指令结束后则将进行指令执行或数据的读写,这个操作要视存储器操作指令而定。
如执行温度转换指令则控制器(单片机)必须等待18B20执行其指令,一般转换时间为500uS。
如执行数据读写指令则需要严格遵循18B20的读写时序来操作。
数据的读写方法将有下文有详细介绍。
若要读出当前的温度数据我们需要执行两次工作周期,第一个周期为复位、跳过ROM指令、执行温度转换存储器操作指令、等待500uS温度转换时间。
紧接着执行第二个周期为复位、跳过ROM指令、执行读RAM的存储器操作指令、读数据(最多为9个字节,中途可停止,只读简单温度值则读前2个字节即可)。
其它的操作流程也大同小异,在此不多介绍。
DS18B20芯片与单片机的接口:图3图4如图所示,DS18B20只需要接到控制器(单片机)的一个I/O口上,由于单总线为开漏所以需要外接一个4.7K的上拉电阻。
如要采用寄生工作方式,只要将VDD电源引脚与单总线并联即可。
但在程序设计中,寄生工作方式将会对总线的状态有一些特殊的要求。
图5DS28B20芯片ROM指令表:Read ROM(读ROM)[33H] (方括号中的为16进制的命令字)这个命令允许总线控制器读到DS18B20的64位ROM。
只有当总线上只存在一个DS18B20的时候才可以使用此指令,如果挂接不只一个,当通信时将会发生数据冲突。
Match ROM(指定匹配芯片)[55H]这个指令后面紧跟着由控制器发出了64位序列号,当总线上有多只DS18B20时,只有与控制发出的序列号相同的芯片才可以做出反应,其它芯片将等待下一次复位。
这条指令适应单芯片和多芯片挂接。
Skip ROM(跳跃ROM指令)[CCH]这条指令使芯片不对ROM编码做出反应,在单总线的情况之下,为了节省时间则可以选用此指令。
如果在多芯片挂接时使用此指令将会出现数据冲突,导致错误出现。
Search ROM(搜索芯片)[F0H]在芯片初始化后,搜索指令允许总线上挂接多芯片时用排除法识别所有器件的64位ROM。
Alarm Search(报警芯片搜索)[ECH]在多芯片挂接的情况下,报警芯片搜索指令只对附合温度高于TH或小于TL报警条件的芯片做出反应。
只要芯片不掉电,报警状态将被保持,直到再一次测得温度什达不到报警条件为止。
DS28B20芯片存储器操作指令表:Write Scratchpad (向RAM中写数据)[4EH]这是向RAM中写入数据的指令,随后写入的两个字节的数据将会被存到地址2(报警RAM之TH)和地址3(报警RAM之TL)。
写入过程中可以用复位信号中止写入。
Read Scratchpad (从RAM中读数据)[BEH]此指令将从RAM中读数据,读地址从地址0开始,一直可以读到地址9,完成整个RAM数据的读出。
芯片允许在读过程中用复位信号中止读取,即可以不读后面不需要的字节以减少读取时间。
Copy Scratchpad (将RAM数据复制到EEPROM中)[48H]此指令将RAM中的数据存入EEPROM中,以使数据掉电不丢失。
此后由于芯片忙于EEPROM储存处理,当控制器发一个读时间隙时,总线上输出“0”,当储存工作完成时,总线将输出“1”。
在寄生工作方式时必须在发出此指令后立刻超用强上拉并至少保持10MS,来维持芯片工作。
Convert T(温度转换)[44H]收到此指令后芯片将进行一次温度转换,将转换的温度值放入RAM的第1、2地址。
此后由于芯片忙于温度转换处理,当控制器发一个读时间隙时,总线上输出“0”,当储存工作完成时,总线将输出“1”。
在寄生工作方式时必须在发出此指令后立刻超用强上拉并至少保持500MS,来维持芯片工作。
Recall EEPROM(将EEPROM中的报警值复制到RAM)[B8H]此指令将EEPROM中的报警值复制到RAM中的第3、4个字节里。
由于芯片忙于复制处理,当控制器发一个读时间隙时,总线上输出“0”,当储存工作完成时,总线将输出“1”。
另外,此指令将在芯片上电复位时将被自动执行。
这样RAM 中的两个报警字节位将始终为EEPROM中数据的镜像。
Read Power Supply(工作方式切换)[B4H]此指令发出后发出读时间隙,芯片会返回它的电源状态字,“0”为寄生电源状态,“1”为外部电源状态。
DS18B20复位及应答关系示意图:图6每一次通信之前必须进行复位,复位的时间、等待时间、回应时间应严格按时序编程。
DS18B20读写时间隙:DS18B20的数据读写是通过时间隙处理位和命令字来确认信息交换的。
写时间隙:图7写时间隙分为写“0”和写“1”,时序如图7。
在写数据时间隙的前15uS总线需要是被控制器拉置低电平,而后则将是芯片对总线数据的采样时间,采样时间在15~60uS,采样时间内如果控制器将总线拉高则表示写“1”,如果控制器将总线拉低则表示写“0”。
每一位的发送都应该有一个至少15uS的低电平起始位,随后的数据“0”或“1”应该在45uS 内完成。
整个位的发送时间应该保持在60~120uS,否则不能保证通信的正常。
读时间隙:图8读时间隙时控制时的采样时间应该更加的精确才行,读时间隙时也是必须先由主机产生至少1uS的低电平,表示读时间的起始。
随后在总线被释放后的15uS中DS18B20会发送内部数据位,这时控制如果发现总线为高电平表示读出“1”,如果总线为低电平则表示读出数据“0”。
每一位的读取之前都由控制器加一个起始信号。
注意:如图8所示,必须在读间隙开始的15uS内读取数据位才可以保证通信的正确。
在通信时是以8位“0”或“1”为一个字节,字节的读或写是从高位开始的,即A7到A0.字节的读写顺序也是如图2自上而下的。
//实验目的:熟悉DS18B20的使用//六位数码管显示温度结果,其中整数部分2位,小数部分4位//每次按下RB0键后进行一次温度转换。
//硬件要求:把DS18B20插在18B20插座上// 拨码开关S10第1位置ON,其他位置OFF// 拨码开关S5、S6全部置ON,其他拨码开关全部置OFF#i nclude<pic.h>//__CONFIG(0x1832);//芯片配置字,看门狗关,上电延时开,掉电检测关,低压编程关,加密,4M 晶体HS振荡#define uch unsigned char //给unsigned char起别名 uch# define DQ RA0 //定义18B20数据端口# define DQ_DIR TRISA0 //定义18B20D口方向寄存器# define DQ_HIGH() DQ_DIR =1 //设置数据口为输入# define DQ_LOW() DQ = 0; DQ_DIR = 0 //设置数据口为输出unsigned char TLV=0 ; //采集到的温度高8位unsigned char THV=0; //采集到的温度低8位unsigned char TZ=0; //转换后的温度值整数部分unsigned char TX=0; //转换后的温度值小数部分unsigned int wd; //转换后的温度值BCD码形式unsigned char shi; //整数十位unsigned char ge; //整数个位unsigned char shifen; //十分位unsigned char baifen; //百分位unsigned char qianfen; //千分位unsigned char wanfen; //万分位unsigned char table[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0 x90};//0-9的显示代码//------------------------------------------------//延时函数void delay(char x,char y){char z;do{z=y;do{;}while(--z);}while(--x);}//其指令时间为:7+(3*(Y-1)+7)*(X-1)如果再加上函数调用的call 指令、页面设定、传递参数花掉的7 个指令。