SNOS808P January 2000 – December 2014 LM75A
PRODUCTION DATA.
The LM75A temperature sensor incorporates a band-gap type temperature sensor and 9-bit ADC (sigma-delta ADC). The temperature data output of the LM75A is available at all times via the I2C bus. If a conversion is in progress, it will be stopped and restarted after the read. A digital comparator is also incorporated that compares a series of readings, the number of which is user-selectable, to user-programmable setpoint and hysteresis values. The comparator trips the O.S. output line, which is programmable for mode and polarity. The LM75A has an integrated low-pass filter on both the SDA and the SCL line. These filters increase communications reliability in noisy environments.
The LM75A also has a bus fault timeout feature. If the SDA line is held low for longer than tTIMEOUT (see specification) the LM75A will reset to the IDLE state (SDA set to high impedance) and wait for a new start condition. The TIMEOUT feature is not functional in Shutdown Mode.
The LM75A is an industry-standard digital temperature sensor with an integrated sigma-delta ADC and I2C interface. The LM75A provides 9-bit digital temperature readings with an accuracy of ±2°C from –25°C to 100°C and ±3°C over –55°C to 125°C.
The LM75A operates with a single supply from +2.7 V to +5.5 V. Communication is accomplished over a 2-wire interface which operates up to 400kHz. The LM75A has three address pins, allowing up to eight LM75A devices to operate on the same 2-wire bus. The LM75A has a dedicated over-temperature output (O.S.) with programmable limit and hysteresis. This output has programmable fault tolerance, which allows the user to define the number of consecutive error conditions that must occur before O.S. is activated.
In Comparator mode the O.S. Output behaves like a thermostat. The output becomes active when temperature exceeds the TOS limit, and leaves the active state when the temperature drops below the THYST limit. In this mode the O.S. output can be used to turn a cooling fan on, initiate an emergency system shutdown, or reduce system clock speed. Shutdown mode does not reset O.S. state in a comparator mode.
In Interrupt mode exceeding TOS also makes O.S. active but O.S. will remain active indefinitely until reset by reading any register via the I2C interface. Once O.S. has been activated by crossing TOS, then reset, it can be activated again only by Temperature going below THYST. Again, it will remain active indefinitely until being reset by a read. Placing the LM75A in shutdown mode also resets the O.S. Output.
The LM75A always powers up in a known state. The power up default conditions are:
When the supply voltage is less than about 1.7V, the LM75A is considered powered down. As the supply voltage rises above the nominal 1.7V power up threshold, the internal registers are reset to the power up default values listed above.
If the LM75A is not connected to the I2C bus on power up, it will act as a stand-alone thermostat with the power up default conditions listed above. It is optional, but recommended, to connect the address pins (A2, A1, A0) and the SCL and SDA pins together and to a 10k pullup resistor to +VS for better noise immunity. Any of these pins may also be tied high separately through a 10-k pullup resistor.
The LM75A operates as a slave on the I2C bus, so the SCL line is an input (no clock is generated by the LM75A) and the SDA line is a bi-directional serial data path. According to I2C bus specifications, the LM75A has a 7-bit slave address. The four most significant bits of the slave address are hard wired inside the LM75A and are “1001”. The three least significant bits of the address are assigned to pins A2–A0, and are set by connecting these pins to ground for a low, (0); or to +VS for a high, (1).
Therefore, the complete slave address is:
1 | 0 | 0 | 1 | A2 | A1 | A0 |
---|---|---|---|---|---|---|
MSB | LSB |
Temperature data can be read from the Temperature, TOS Set Point, and THYST Set Point registers; and written to the TOS Set Point, and THYST Set Point registers. Temperature data is represented by a 9-bit, two's complement word with an LSB (Least Significant Bit) equal to 0.5°C:
Temperature | Digital Output | |
---|---|---|
Binary | Hex | |
+125°C | 0 1111 1010 | 0FAh |
+25°C | 0 0011 0010 | 032h |
+0.5°C | 0 0000 0001 | 001h |
0°C | 0 0000 0000 | 000h |
−0.5°C | 1 1111 1111 | 1FFh |
−25°C | 1 1100 1110 | 1CEh |
−55°C | 1 1001 0010 | 192h |
Shutdown mode is enabled by setting the shutdown bit in the Configuration register via the I2C bus. Shutdown mode reduces power supply current significantly. See specified quiescent current specification in the electrical tables. In Interrupt mode O.S. is reset if previously set and is undefined in Comparator mode during shutdown. The I2C interface remains active. Activity on the clock and data lines of the I2C bus may slightly increase shutdown mode quiescent current. TOS, THYST, and Configuration registers can be read from and written to in shutdown mode.
For the LM75A, the TIMEOUT feature is turned off in Shutdown Mode.
A fault queue of up to 6 faults is provided to prevent false tripping of O.S. when the LM75A is used in noisy environments. The number of faults set in the queue must occur consecutively to set the O.S. output.
As indicated in the O.S. Output Temperature Response Diagram, Figure 7, the events that trigger O.S. are identical for either Comparator or Interrupt mode. The most important difference is that in Interrupt mode the O.S. will remain set indefinitely once it has been set. To reset O.S. while in Interrupt mode, perform a read from any register in the LM75A.
The O.S. output is an open-drain output and does not have an internal pullup. A “high” level will not be observed on this pin until pullup current is provided from some external source, typically a pullup resistor. Choice of resistor value depends on many system factors but, in general, the pullup resistor should be as large as possible. This will minimize any errors due to internal heating of the LM75A. The maximum resistance of the pullup, based on LM75A specification for High Level Output Current, to provide a 2-V high level, is 30 kΩ.
The O.S. output can be programmed via the configuration register to be either active low (default mode), or active high. In active low mode the O.S. output goes low when triggered exactly as shown on the O.S. Output Temperature Response Diagram, Figure 7. Active high simply inverts the polarity of the O.S. output.
There are four data registers in the LM75A and an additional Product ID register selected by the Pointer register. At power-up the Pointer is set to “000”; the location for the Temperature Register. The Pointer register latches whatever the last location it was set to. In Interrupt Mode, a read from the LM75A, or placing the device in shutdown mode, resets the O.S. output. All registers are read and write, except the Temperature register and the LM75A's Product ID register, which are read-only.
A write to the LM75A will always include the address byte and the Pointer byte. A write to the Configuration register requires one data byte, and the TOS and THYST registers require two data bytes.
Reading the LM75A can take place either of two ways: If the location latched in the Pointer is correct (most of the time it is expected that the Pointer will point to the Temperature register because it will be the data most frequently read from the LM75A), then the read can simply consist of an address byte, followed by retrieving the corresponding number of data bytes. If the Pointer needs to be set, then an address byte, pointer byte, repeat start, and another address byte will accomplish a read.
The first data byte is the most significant byte with most significant bit first, permitting only as much data as necessary to be read to determine temperature condition. For instance, if the first four bits of the temperature data indicates an overtemperature condition, the host processor could immediately take action to remedy the excessive temperatures. At the end of a read, the LM75A can accept either Acknowledge or No Acknowledge from the Master (No Acknowledge is typically used as a signal for the slave that the Master has read its last byte).
P7 | P6 | P5 | P4 | P3 | P2 | P1 | P0 |
---|---|---|---|---|---|---|---|
0 | 0 | 0 | 0 | 0 | Register Select |
P0-P1: Register Select:
P2 | P1 | P0 | Register |
---|---|---|---|
0 | 0 | 0 | Temperature (Read-only) (Power-up default) |
0 | 0 | 1 | Configuration (Read/Write) |
0 | 1 | 0 | THYST (Read/Write) |
0 | 1 | 1 | TOS (Read/Write) |
1 | 1 | 1 | Product ID Register |
P3–P7: Must be kept zero.
D15 | D14 | D13 | D12 | D11 | D10 | D9 | D8 | D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
MSB | Bit 7 | Bit 6 | Bit 5 | Bit 4 | Bit 3 | Bit 2 | Bit 1 | LSB | X | X | X | X | X | X | X |
D0–D6: Undefined. D7–D15: Temperature Data. One LSB = 0.5°C. Two's complement format.
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 |
---|---|---|---|---|---|---|---|
0 | 0 | 0 | Fault Queue | O.S. Polarity | Cmp/Int | Shutdown |
Power up default is with all bits “0” (zero).
D0: Shutdown: When set to 1 the LM75A goes to low power shutdown mode.
D1: Comparator/Interrupt mode: 0 is Comparator mode, 1 is Interrupt mode.
D2: O.S. Polarity: 0 is active low, 1 is active high. O.S. is an open-drain output under all conditions.
D3–D4: Fault Queue: Number of faults necessary to detect before setting O.S. output to avoid false tripping due to noise. Faults are determine at the end of a conversion. See specified temperature conversion time in the electrical tables.
D4 | D3 | Number of Faults |
---|---|---|
0 | 0 | 1 (Power-up default) |
0 | 1 | 2 |
1 | 0 | 4 |
1 | 1 | 6 |
D5–D7: These bits are used for production testing and must be kept zero for normal operation.
D15 | D14 | D13 | D12 | D11 | D10 | D9 | D8 | D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
MSB | Bit 7 | Bit 6 | Bit 5 | Bit 4 | Bit 3 | Bit 2 | Bit 1 | LSB | X | X | X | X | X | X | X |
D0–D6: Undefined D7–D15: THYST Or TOS Trip Temperature Data. Power up default is TOS = 80°C, THYST = 75°C
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 |
---|---|---|---|---|---|---|---|
1 | 0 | 1 | 0 | 0 | 0 | 0 | 1 |
D4--D7 Product Identification Nibble. Always returns Ah to uniquely identify this part as the LM75A.
D0--D3 Die Revision Nibble. Returns 1h to uniquely identify the revision level as one.