The LM75A is a temperature-to-digital converter using an on-chip band gap temperature sensor and Sigma-delta A-to-D conversion technique. The device is also a thermal detector providing an overtemperature detection output.
The sensor can be configured for different operation conditions. It can be set in normal mode to periodically monitor the ambient temperature, or in shutdown mode to minimize power consumption.
The temperature register always stores an 11-bit 2's complement data giving a temperature resolution of 0.125 °C. This high temperature resolution is particularly useful in applications of measuring precisely the thermal drift or runaway.
Type | Temperature,Humidity |
Applications | System thermal management, personal computers, electronics equipment, industrial controllers |
On-board modules | LM75A |
Key Features | Temperature range: from −55 °C to +125 °C |
Interface | I2C,GPIO |
Input Voltage | 3.3V or 5V |
Compatibility | mikroBUS |
Click board size | S (28.6 x 25.4 mm) |
This table shows how the pinout on THERMO 4 click corresponds to the pinout on the mikroBUS™ socket (the latter shown in the two middle columns).
Designator | Name | Default Position | Default Option | Description |
---|---|---|---|---|
JP1 | VCC.SEL. | Left | 3V3 | Power Supply Voltage Selection 3V3/5V, left position 3V3, right position 5V |
JP2 | ADD0 | Left | 0 | I2C address select bit 2 |
JP3 | ADD1 | Left | 0 | I2C address select bit 1 |
JP4 | ADD2 | Left | 0 | I2C address select bit 0 |
Code examples for THERMO 4 click, written for MikroElektronika hardware and compilers are available on Libstock.
The following code snippet shows the main function of the example, which initializes the system, then writes data into the register, then reads that data for confirmation, and then reads the current temperature value, and shows that value in degrees Fahrenheit.
01 void main() 02 { 03 04 system_init(); 05 thermo_init(0x55); 06 Delay_ms (100); 07 i=5; 08 09 10 /*sets the temperature limit to specified float value*/ 11 thermo_write_temperature (65.5, THERMO_TOS); 12 /*reads stored temperature limit*/ 13 thermo_read_temperature_text (uart_text, THERMO_TOS); 14 Delay_ms (100); 15 16 UART_Write_Text("rn Current temperature limit for output signal: "); 17 UART_Write_Text(uart_text); 18 Delay_ms( 1000 ); 19 20 /*reads current temperature in fahrenheit*/ 21 _fh_value = thermo_read_temperature_fh (THERMO_TEMP); 22 FloatToStr (_fh_value , uart_text); 23 uart_text [5] = 0; 24 Delay_ms (100); 25 UART_Write_Text("rn rn Current temperature in Fahrenheit: "); 26 UART_Write_Text(uart_text); 27 Delay_ms( 1000 );