ZHCST60E December 2006 – July 2025 TMP411 , TMP411D
PRODUCTION DATA
对于本地和远程位置,在默认的 0°C 至 127°C 范围内获取温度测量数据。根据工作温度范围重新配置 TMP411/TMP411D 器件,可以在本地和远程进行 –55°C 至 150°C 范围内的测量。要将 TMP411/TMP411D 配置从标准温度范围更改为工作温度范围,请将配置寄存器的位 2 (RANGE) 从低电平切换到高电平。
默认测量范围内转换得到的温度数据以二进制形式表示,如表 7-1 的标准二进制列中所示。请注意,任何低于 0°C 的温度都会导致数据值为零 (00h)。同样,高于 127°C 的温度会导致数据值为 127 (7Fh)。通过将配置寄存器的位 2 从低电平变为高电平,可以将器件设置为在工作温度范围内进行测量。在下一次温度转换时,测量范围和数据格式会从标准二进制变为扩展二进制。对于在工作温度范围配置中捕获的数据,向标准二进制值中加入一个 64 (40h) 的偏移量,如表 7-1 中的扩展二进制列所示。使用此配置可测量低于 0°C 的温度。可以获得 –64°C 至 191°C 范围内的二进制值,但大多数温度检测二极管在 –55°C 至 150°C 范围内测量。TMP411/TMP411D 器件仅适用于 –40°C 至 125°C 范围内的本地环境温度。必须遵循绝对最大额定值表中的参数。
| 温度 (°C) | 本地和远程温度寄存器高字节值(1°C 分辨率) | |||
|---|---|---|---|---|
| 标准二进制 | 扩展二进制 | |||
| 二进制 | 十六进制 | 二进制 | 十六进制 | |
| -64 | 0000 0000 | 00 | 0000 0000 | 00 |
| -50 | 0000 0000 | 00 | 0000 1110 | 0E |
| -25 | 0000 0000 | 00 | 0010 0111 | 27 |
| 0 | 0000 0000 | 00 | 0100 0000 | 40 |
| 1 | 0000 0001 | 01 | 0100 0001 | 41 |
| 5 | 0000 0101 | 05 | 0100 0101 | 45 |
| 10 | 0000 1010 | 0A | 0100 1010 | 4A |
| 25 | 0001 1001 | 19 | 0101 1001 | 59 |
| 50 | 0011 0010 | 32 | 0111 0010 | 72 |
| 75 | 0100 1011 | 4B | 1000 1011 | 8B |
| 100 | 0110 0100 | 64 | 1010 0100 | A4 |
| 125 | 0111 1101 | 7D | 1011 1101 | BD |
| 127 | 0111 1101 | 7F | 1011 1111 | BF |
| 150 | 0111 1111 | 7F | 1101 0110 | D6 |
| 175 | 0111 1111 | 7F | 1110 1111 | EF |
| 191 | 0111 1111 | 7F | 1111 1111 | FF |
TMP411/TMP411D 温度传感器不使用二进制补码格式来读取温度值。因此,解码不会将它们转换为有符号类型。TMP411/TMP411D 器件表示负温度的方式是启用一个 RANGE 位,该位会将结果增加 64°C。在启用了 RANGE 的情况下,解码必须减去 64,这样原始值 0 变为 -64°C 输出。
| 参数 | 值 |
|---|---|
| 位 | 12 |
| Q | 4 |
| 分辨率 | 0.0625 |
| 范围 (+) | 127.9375 |
| 范围 (–) | 0 |
| 第一个字节整数 C | 是 |
| 25˚C | 0x1900 |
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| - | 64 | 32 | 16 | 8 | 4 | 2 | 1 | 0.5 | 0.25 | 0.125 | 0.0625 | - | - | - | - |
| - | 64 | 32 | 16 | 8 | 4 | 2 | 1 | 1/2 | 1/4 | 1/8 | 1/16 | - | - | - | - |
- | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 2-1 | 2-2 | 2-3 | 2-4 | - | - | - | - |
/* 12-bit format will have 4 bits discarded by right shift
q4 is 0.062500 resolution
the following bytes represent 24.5C
there is no cast into signed type */
uint8_t byte1 = 0x18;
uint8_t byte2 = 0x80;
float f = ((byte1 << 8 | byte2) >> 4) * 0.0625f;
int mC = ((byte1 << 8 | byte2) >> 4) * 1000 >> 4;
int C = byte1;每当在标准温度范围和工作温度范围之间变化时,请注意,存储在温度限值寄存器中的温度不会自动重新格式化来对应于新的温度范围格式。这些温度限值必须以适当的二进制或扩展二进制格式重新编程。
本地和远程温度数据使用两个字节进行数据存储。高字节以 1°C 的分辨率存储温度。第二个字节或低字节存储温度的小数部分,并允许更高的测量分辨率,如 表 7-4 中所列。远程通道的测量分辨率为 0.0625°C,不可调节。本地通道的测量分辨率可调,并可通过设置 表 8-4 中列出的 RES1 和 RES0 位将分辨率设置为 0.5°C、0.25°C、0.125°C 或 0.0625°C。
| 温度 (°C) | 远程温度寄存器低字节值 | 本地温度寄存器低字节值 | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|
| 0.0625°C 分辨率 | 0.5°C 分辨率 | 0.25°C 分辨率 | 0.125°C 分辨率 | 0.0625°C 分辨率 | ||||||
| 标准和扩展二进制 | 十六进制 | 标准和扩展二进制 | 十六进制 | 标准和扩展二进制 | 十六进制 | 标准和扩展二进制 | 十六进制 | 标准和扩展二进制 | 十六进制 | |
| 0.0000 | 0000 0000 | 00 | 0000 0000 | 00 | 0000 0000 | 00 | 0000 0000 | 00 | 0000 0000 | 00 |
| 0.0625 | 0001 0000 | 10 | 0000 0000 | 00 | 0000 0000 | 00 | 0000 0000 | 00 | 0001 0000 | 10 |
| 0.1250 | 0010 0000 | 20 | 0000 0000 | 00 | 0000 0000 | 00 | 0010 0000 | 20 | 0010 0000 | 20 |
| 0.1875 | 0011 0000 | 30 | 0000 0000 | 00 | 0000 0000 | 00 | 0010 0000 | 20 | 0011 0000 | 30 |
| 0.2500 | 0100 0000 | 40 | 0000 0000 | 00 | 0100 0000 | 40 | 0100 0000 | 40 | 0100 0000 | 40 |
| 0.3125 | 0101 0000 | 50 | 0000 0000 | 00 | 0100 0000 | 40 | 0100 0000 | 40 | 0101 0000 | 50 |
| 0.3750 | 0110 0000 | 60 | 0000 0000 | 00 | 0100 0000 | 40 | 0110 0000 | 60 | 0110 0000 | 60 |
| 0.4375 | 0111 0000 | 70 | 0000 0000 | 00 | 0100 0000 | 40 | 0110 0000 | 60 | 0111 0000 | 70 |
| 0.5000 | 1000 0000 | 80 | 1000 0000 | 80 | 1000 0000 | 80 | 1000 0000 | 80 | 1000 0000 | 80 |
| 0.5625 | 1001 0000 | 90 | 1000 0000 | 80 | 1000 0000 | 80 | 1000 0000 | 80 | 1001 0000 | 90 |
| 0.6250 | 1010 0000 | A0 | 1000 0000 | 80 | 1000 0000 | 80 | 1010 0000 | A0 | 1010 0000 | A0 |
| 0.6875 | 1011 0000 | B0 | 1000 0000 | 80 | 1000 0000 | 80 | 1010 0000 | A0 | 1011 0000 | B0 |
| 0.7500 | 1100 0000 | C0 | 1000 0000 | 80 | 1100 0000 | C0 | 1100 0000 | C0 | 1100 0000 | C0 |
| 0.8125 | 1101 0000 | D0 | 1000 0000 | 80 | 1100 0000 | C0 | 1100 0000 | C0 | 1101 0000 | D0 |
| 0.8750 | 1110 0000 | E0 | 1000 0000 | 80 | 1100 0000 | C0 | 1110 0000 | E0 | 1110 0000 | E0 |
| 0.9375 | 1111 0000 | F0 | 1000 0000 | 80 | 1100 0000 | C0 | 1110 0000 | E0 | 1111 0000 | F0 |