SNIS237A December   2024  – April 2025 TMP118

PRODUCTION DATA  

  1.   1
  2. Features
  3. Applications
  4. Description
  5. Device Comparison
  6. Pin Configuration and Functions
  7. Specifications
    1. 6.1 Absolute Maximum Ratings
    2. 6.2 ESD Ratings
    3. 6.3 Recommended Operating Conditions
    4. 6.4 Thermal Information
    5. 6.5 Electrical Characteristics
    6. 6.6 Two-Wire Interface Timing
    7. 6.7 Timing Diagram
    8. 6.8 Typical Characteristics
  8. Detailed Description
    1. 7.1 Overview
    2. 7.2 Functional Block Diagrams
    3. 7.3 Feature Description
      1. 7.3.1 Digital Temperature Output
      2. 7.3.2 Averaging
      3. 7.3.3 Temperature Comparator and Hysteresis
      4. 7.3.4 Strain Tolerance
      5. 7.3.5 NIST Traceability
    4. 7.4 Device Functional Modes
      1. 7.4.1 Continuous Conversion Mode
      2. 7.4.2 One-Shot Mode (OS)
    5. 7.5 Programming
      1. 7.5.1 I2C and SMBus Interface
        1. 7.5.1.1 Serial Interface
          1. 7.5.1.1.1 Bus Overview
          2. 7.5.1.1.2 Device Address
          3. 7.5.1.1.3 Writing and Reading Operation
            1. 7.5.1.1.3.1 Writes
            2. 7.5.1.1.3.2 Reads
          4. 7.5.1.1.4 General-Call Reset Function
          5. 7.5.1.1.5 Timeout Function
          6. 7.5.1.1.6 Coexistence on I3C Mixed Bus
  9. Device Registers
    1. 8.1 Register Map
      1. 8.1.1 Temp_Result Register (address = 00h) [reset = 0000h]
      2. 8.1.2 Configuration Register (address = 01h) [reset = 60B0h]
      3. 8.1.3 TLow_Limit Register (address = 02h) [reset = 2580h]
      4. 8.1.4 THigh_Limit Register (address = 03h) [reset = 2800h]
      5. 8.1.5 Device ID Register (Address = 0Bh) [reset = 1180h]
      6. 8.1.6 Unique_ID0 Register (Address = 0Ch) [reset = xxxxh]
      7. 8.1.7 Unique_ID1 Register (Address = 0Dh) [reset = xxxxh]
      8. 8.1.8 Unique_ID2 Register (Address = 0Eh) [reset = xxxxh]
  10. Application and Implementation
    1. 9.1 Application Information
    2. 9.2 Typical Application
      1. 9.2.1 Separate I2C Pullup and Supply Application
        1. 9.2.1.1 Design Requirements
        2. 9.2.1.2 Detailed Design Procedure
      2. 9.2.2 Equal I2C Pullup and Supply Voltage Application
        1. 9.2.2.1 Design Requirements
        2. 9.2.2.2 Detailed Design Procedure
    3. 9.3 Power Supply Recommendations
    4. 9.4 Layout
      1. 9.4.1 Layout Guidelines
      2. 9.4.2 Layout Examples
  11. 10Device and Documentation Support
    1. 10.1 Documentation Support
      1. 10.1.1 Related Documentation
    2. 10.2 Receiving Notification of Documentation Updates
    3. 10.3 Support Resources
    4. 10.4 Trademarks
    5. 10.5 Electrostatic Discharge Caution
    6. 10.6 Glossary
  12. 11Revision History
  13. 12Mechanical, Packaging, and Orderable Information

Package Options

Refer to the PDF data sheet for device specific package drawings

Mechanical Data (Package|Pins)
  • YMS|4
Thermal pad, mechanical data (Package|Pins)
Orderable Information

Digital Temperature Output

The Temp_Result registers use a 16-bit format. Temperature data is represented by a 16-bit 2's complement word with a Least Significant Bit (LSB) equal to 0.0078125°C. The fractional values are included in the temperature readings, which can be denoted using Q notation, a simple way to represent the length of the fractional portion of the value. 2's Compliment is employed to describe negative temperatures. C code can easily convert the 2's Compliment data when the data is typecast into the correct signed data type. For more details on using Q notation to decode digital temperature data, refer to How to Read and Interpret Digital Temperature Sensor Output Data.

Note following power-up or reset, the temperature register reads 0°C until the first conversion is complete. Also note the decoding scheme allows temperature measurement beyond the recommended operating temperature range of -40°C to 125°C, but the device performance is not guaranteed beyond this range.

Table 7-1 Encoding Parameters
ParameterValue
Bits16
Q7
Resolution0.0078125
Range (+)255.9921875
Range (-)-256
25˚C0xC80
Table 7-2 16-Bit Q Notation Bit Weights
1514131211109876543210
Sign

128

64

32

16

8

4

2

1

0.5

0.25

0.125

0.06250.031250.0156250.0078125
-256

128

64

32

16

8

4

2

1

1/2

1/4

1/8

1/161/321/641/128

-28

27

26

25

24

23

22

21

20

2-1

2-2

2-3

2-4

2-5

2-6

2-7

C Code Examples: 
/* 16-bit format has 0 bits discarded by right shift 
q7 is 0.0078125 resolution 
the following bytes represent 24.5C */ 
uint8_t byte1 = 0xC; 
uint8_t byte2 = 0x40; 
float f = ((int8_t) byte1 << 8 | byte2) * 0.0078125f; 
int mC = ((int8_t) byte1 << 8 | byte2) * 1000 >> 7; 
int C = ((int8_t) byte1 << 8 | byte2) >> 7;

Table 7-3 shows some example temperatures and the converted register values in binary and hexadecimal format. Go to the TMP118 GUI-based code generator to find MCU-agnostic C-code driver.

Table 7-3 16-Bit Temperature Data Format
TEMPERATURE (°C)DIGITAL OUTPUT (BINARY)HEX
125

0011 1110 1000 0000

3E80

100

0011 0010 0000 0000

3200

80

0010 1000 0000 0000

2800

75

0010 0101 1000 0000

2580

50

0001 1001 0000 0000

1900

25

0000 1100 1000 0000

0C80

0.25

0000 0000 0010 0000

0020
0.06250000 0000 0000 10000008
0.00781250000 0000 0000 00010001
00000 0000 0000 00000000
-0.00781251111 1111 1111 1111FFFF
-0.06251111 1111 1111 1100FFF8
–0.251111 1111 1110 0000FFE0
–25

1111 0011 1000 0000

F380
–40

1110 1100 0000 0000

EC00