欢迎来到天天文库
浏览记录
ID:38128925
大小:305.50 KB
页数:3页
时间:2019-05-29
《tmp102数据手册核心部分翻译及用法简述》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、一些啰嗦的地方就不翻译了,直扑重点。怎么用的部分。POINTERREGISTERFigure8展示的是TMP102的内部寄存器,8位的寄存器PointerRegister用来定位其余几个寄存器。PointerRegister使用两个LSB(见Table11)来决定哪一个寄存器去回应读或者写的命令。Table1给出了PointerRegister的每一位。对于写命令,P2到P7必须是0.Table2给出了其余几个寄存器的地址。上电时P1/P0被赋值为‘00’,默认的配置下,一上电,TMP102即开始读取温度。TEMPERATURER
2、EGISTERTemperatureRegister是一个12位的只读寄存器(将寄存器的EM位配置成0,详见ExtendedMode章节),或者是一个13位的寄存器(将寄存器的EM位配置成0),这个寄存器里储存这最近一次通信的输出,要取得这一数据必须读2个字节,Table3,4描述了这两个字节。注意,byte1是最重要的字节,其次是byte2。前12位(或ExtendedMode时13位)用来描述温度。如果相应的信息不需要,可以不读取byte2。温度数据的格式在Table5,6中有具体的说明。一个LBS相当于0.0625摄氏度。负
3、数以二进制补码格式表示。在上电或者复位之后,TemperatureRegister的数据会保持0摄氏度,直到第一次通信完成。Byte2的D0位表示是NormalMode还是ExtendedMode(D0为即是前述的EM位),进而区分这两种不同模式之下TemperatureRegister的数据格式。对于正的温度:二进制补码对正数不起作用。因此直接将数字转换成12位的二进制码,采用左对齐的格式。同时MSB(最高有效位)=0,表示正号。Example:(+50°C)/(0.0625°C/count)=800=320h=00110010
4、0000对于负温度:获得二进制补码就是将温度绝对值的二进制码取反再加1,MBS为1代表负号。Example:(
5、–25°C
6、)/(0.0625°C/count)=400=190h=000110010000二进制补码:111001101111+1=111001110000综上,简单总结一下用法:上电,给TMP102发一个八位的数据,每一位都是0,然后TMP102就会返回一个16位的数据,前12位是温度信息。通讯协议是I2C。
此文档下载收益归作者所有