数字智能温度传感器TMP101的性能及与PICl8F458单片机的应用

网友投稿 408 2022-11-25

数字智能温度传感器TMP101的性能及与PICl8F458单片机的应用

1、概述

2)温度测量范围为-55%~125℃,9~12位A/D转换精度,12位A/D转换的分辨率达0.0625~C。被测温度值以符号扩展的16位数字量方式串行输出。

2、TMPl01引脚功能和内部结构

2.1 TMPl01引脚功能

GND:接地端;

ALERT:总线报警(中断)输出端,漏极开路输出;

V+:电源端;

2.2 TMPl01内部结构

3、TMP101工作原理

TMPl01的I2C总线串行数据接口线SDA和串行时钟接口线SDA由主控制器控制.主控制器作为主机,TMP101作为从机并支持12C总线协议的读/写操作命令。首先通过主控制器对其进行地址设定。使主控制器对挂接在总线上的TMP1O1进行地址识别。为了能够正确获取TMP101内部温度寄存器中的温度值数据,要通过I2C总线对TMP101内部相关寄存器写相应的数据,设定温度转换结果的分辨率、转换时间、报警输出的上、下限温度值以及工作方式等.也就是对TMPl01内部的配置寄存器、上限温度寄存器和下限温度寄存器进行初始化设置。

3.1 TMP1O1的地址设置

根据12C串行总线规范,TMP1O1有一个7位的从器件地址码,其有效位为“10010”,其余两位根据引脚ADD0接地、悬空和接电源端的不同分别设置为“00”、“01”、“10”。一条I2C总线上可挂接3个TMPl01器件。

3.2 TMP101内部寄存器

TMP101的功能实现和工作方式主要是由内部5个寄存器确定,如图3所示,这些寄存器分别是地址指针寄存器、温度寄存器、配置寄存器、上限温度(TL)寄存器和下限温度(TH)寄存器。后4个寄存器均属于数据寄存器。

地址指针寄存器为8位可读/写寄存器,内部存储了要读写的其余4个数据寄存器的地址,在读写操作中。通过设定地址指针寄存器的内容确定要访问的寄存器。在8位数据字节中,前6位全部设置为0,后2位用于选择寄存器,后2位P0、P1的值与选择的寄存器关系如表l所列。

温度寄存器为16位可读寄存器,温度寄存器存储经A/D转换后的12位温度数据,后4位全补为O,以构成2字节的可读寄存器。也可以通过设置配置寄存器的内容来获得9、10、ll、12位不同的转换结果。

配置寄存器为8位可读/写寄存器,数据格式如表2所列。通过配置寄存器设置器件的工作方式。Rl/R0为温度传感器转换分辨率配置位,可以设定内部.A/D转换器的分辨率及转换时间:F1/F0为故障排队次数配置位,当被测温度连续超过n次(通过设置Fl/F0位),就会有报警输出;POL为ALERT极性位,通过POL的设置,可以使控制器和ALERT输出的极性一致:SD用来设置器件是否工作在关断模式:在关断模式下,向OS/ALERT位写l可以开启一次温度转换,在温度比较模式下,该数据位可提供比较模式的状态。

4.1 PICl8F458简介

4.2 TMP101初始化设置

要获取TMP101中的温度值数据,首先应通过PICl8F458单片机对TMP101内部的配置寄存器、上限温度寄存器和下限温度寄存器进行初始化设置。其过程为:PICl8F458单片机对TMP101写地址,然后写配置寄存器地址到指针寄存器,最后写入数据到配置寄存器。PICl8F458单片机对TMP101配置寄存器写操作的时序如图5所示,上、下限温度寄存器的写时序和配置寄存器的写时序同理。

4.3 TMP101读数据

读取TMP101内部温度寄存器当前值的过程是:首先写入要读的TMP101,然后写入要读的TMP101内部温度寄存器,向I2C总线上发送一个“重启动信号”,并将TMP101地址字节也重发一次,改变数据的传输方向,从而再进行读取温度寄存器的操作。单片机对TMPl01温度寄存器读操作的时序如图6所示。

图6可以解释为:在串行数据线SDA和串行时钟线SCL的时序配合下,将PICl8F458单片机的启动使能位SEN置位建立启动信号时序,紧接着单片机将要读的TMP101地址字节写入缓冲器,并通过单片机内部移位寄存器将字节移送至SDA引脚,8位地址字节的前7位是TMP101的受控地址,后l位为读/写控制位(为“O”时表示写操作)。写地址字节完成后,在第9个时钟脉冲周期内,单片机释放SDA,以便TMP101在地址匹配后,能够反馈一个有效应答信号供单片机检测接收。第9个时钟脉冲之后,SCL引脚保持为低电平,SDA引脚电平保持不变,直到下一个数据字节被送入缓冲器为止。然后再写入要读的TMP101内部温度寄存器地址字节,其过程与TMPl01地址字节的写操作同理。通过向总线上发送“重启动信号”,改变数据的传输方向,此时寻址字节也要重发一次,但对TMP101的地址字节已变为读操作,再读取TMP101内部温度寄存器的地址字节,最后读出TMP101内部温度寄存器中的温度值数据字节,被测温度值以符号扩展的16位数字量方式串行输出。单片机每接收一个字节都要反馈一个应答信号,此时要注意单片机反馈的应答信号和TMP101反馈的应答信号是不同的,最后通过设置停止使能位,发送一个停止信号时序到总线上,表明此次通信终止。

5、结束语

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Hadoop 文档官方版本(0)
下一篇:Hadoop 文档官方版本 (1)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~