温度传感器DS18B20.ppt
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
控制器对DS18B20操作流程
若要读出当前的温度数据我们需要执行 两次工作周期,
? 第一个周期为复位、跳过ROM指令、执行 温度转换存储器操作指令、等待500uS温度 转换时间。
? 紧接着执行第二个周期为复位、跳过ROM 指令、执行读RAM的存储器操作指令、读 数据(最多为9个字节,中途可停止,只读 简单温度值则读前2个字节即可)。
Bit1 2-3
Bit0 2-4
MS Byte:
Bit15 Bit14 Bit13 Bit12 Bit11 Bit10 Bit9
S
S
S
S
S
26
25
Bit8 24
Bit7 23
Bit6 22
Bit5 21
Bit4 20
Bit3 2-1
Bit2 2-2
Bit1 2-3
Bit0 2-4
Bit15 Bit14 Bit13 Bit12
2. 存在脉冲:在复位电平结束之后,控制器应该将数据单总线拉高, 以便于在15~60uS后接收存在脉冲,存在脉冲为一个60~240uS的 低电平信号。
3. 控制器发送ROM指令:双方打完了招呼之后最要将进行交流了, ROM指令共有5条,每一个工作周期只能发一条,ROM指令分别 是读ROM数据、指定匹配芯片、跳跃ROM、芯片搜索、报警芯 片搜索。ROM指令在下文有详细的介绍。
4. 控制器发送存储器操作指令:在ROM指令发送给18B20之后,紧 接着(不间断)就是发送存储器操作指令了。存储器操作指令的 功能是命令18B20作什么样的工作,是芯片控制的关键。
5. 执行或数据读写:一个存储器操作指令结束后则将进行指令执行 或数据的读写,这个操作要视存储器操作指令而定。如执行温度 转换指令则控制器(单片机)必须等待18B20执行其指令,一般 转换时间为500uS。如执行数据读写指令则需要严格遵循18B20的 读写时序来操作。
DS28B20芯片存储器操作指令表
? Write Scratchpad (向RAM中写数据) [4EH] ? Read Scratchpad (从RAM中读数据) [BEH] ? Copy Scratchpad (将RAM数据复制到 EEPROM 中)
[48H] ? Convert T (温度转换) [44H] ? Recall EEPROM (将EEPROM 中的报警值复制到
温度传感器DS18B20
DS18B20 中的温度传感器可完成对温度的测量, 以 12 位转化为例:用 16 位符号扩展的二进制补码读 数形式提供,以 0.0625℃/LSB形式表达,其中 S为符 号位。
LS Byte:
Bit7 23
Bit6 22
Bit5 21
Bit4 20
Bit3 2-1
Bit2 2-2
S
S
S
S
Bit11 Bit10
Leabharlann Baidu
S
26
Bit9 25
Bit8 24
这是 12 位转化后得到的 12 位数据,存储在 18B20 的两个 8 比特的 RAM 中,二进制中的前面 5 位是符号位,如果测得的 温度大于 0,这 5 位为 0,只要将测到的数值乘于 0.0625 即可得 到实际温度;如果温度小于 0,这 5 位为 1,测到的数值需要取 反加 1 再乘于 0.0625 即可得到实际温度。
DS18B20读时间隙
读时间隙时控制时的采样时间应该更加的精确才行,读时间 隙时也是必须先由主机产生至少1uS的低电平,表示读时间的起 始。随后在总线被释放后的15uS中DS18B20会发送内部数据位, 这时控制如果发现总线为高电平表示读出“1”,如果总线为低电 平则表示读出数据“0”。每一位的读取之前都由控制器加一个起 始信号。注意:如图所示,必须在读间隙开始的15uS内读取数据 位才可以保证通信的正确。
例如:+125℃的数字输出为 07D0H,+25.0625℃的数字输 出为 0191H,-25.0625℃的数字输出为 FF6FH,-55℃的数字输 出为 FC90H。
控制器对DS18B20操作流程
1. 复位:由单片机给DS18B20单总线500uS的低电平信号。当18B20 接到此复位信号后则会在15~60uS后回发一个芯片的存在脉冲。
RAM)[B8H]
? Read Power Supply (工作方式切换) [B4H]
DS18B20写时间隙
写时间隙分为写“0”和写“1”,时序如图。在写数据时间 隙的前15uS总线需要是被控制器拉置低电平,而后则将是芯片 对总线数据的采样时间,采样时间在15~60uS,采样时间内如 果控制器将总线拉高则表示写“1”,如果控制器将总线拉低则 表示写“0”。每一位的发送都应该有一个至少15uS的低电平起 始位,随后的数据“0”或“1”应该在45uS内完成。整个位的发 送时间应该保持在60~120uS,否则不能保证通信的正常。
温度传感器DS18B20
DS18B20 的管脚排列如图: ? DQ 为数字信号输入/输出端; ? GND 为电源地; ? VDD 为外接供电电源输入端
(在寄生电源接线方式时接地)。
温度传感器DS18B20
DS18B20 内部结构主要由四部分组成: ? 64 位光刻 ROM、 ? 温度传感器、 ? 非挥发的温度报警触发器 TH 和 TL、 ? 配置寄存器。
温度传感器DS18B20
实验系统采用的温度传感器DS18B20是美国 DALLAS公司推出的增强型单总线数字温度传感器。
DS18B20的主要特征: ?全数字温度转换及输出。 ?先进的单总线数据通信。 ?最高12位分辨率,精度可达土0.5摄氏度。 ?12位分辨率时的最大工作周期为750毫秒。 ?可选择寄生工作方式。 ?检测温度范围为–55°C ~+125° ?内置EEPROM,限温报警功能。 ?64位光刻ROM,内置产品序列号,方便多机挂接。 ?多样封装形式,适应不同硬件系统。
DS28B20芯片ROM指令表
? Read ROM(读ROM)[33H] (方括号中的 为16进制的命令字)
? Match ROM(指定匹配芯片)[55H] ? Skip ROM(跳跃ROM指令)[CCH] ? Search ROM(搜索芯片)[F0H] ? Alarm Search(报警芯片搜索)[ECH]