Thermo 6 click
PID: MIKROE-2769
Thermo 6 click is a precise and versatile ambient temperature measurement click board™,
based on the Maxim Integrated MAX31875 temperature sensor. This sensor has a great
combination of features, such as wide range of temperature measurement, excellent measuring
accuracy, and small die size, coupled with the very low power consumption - attributes that
make this sensor a great choice for many different applications.
Thermo 6 click supports bidirectional serial communication by utilizing the standard I2C/SMBus
interface, routed through the mikroBUS I2C pins. This allows for an easy and secure connection
with the MCU itself. Advanced I2C features, as the Packet Error Checking (PEC) and the
Timeout Interface Reset, ensure that there are no errors during the communication.
Small die dimensions of the sensor and the specially designed shape of the Thermo 6 click PCB,
ensure that there is a minimal interference from the surrounding components heat, during the
measurement of the ambient temperature. Pull-up resistors are included on the PCB of the
Thermo 6 click, so the device is ready to be used out of the box.
How the click works
The central part of the Thermo 6 click is the MAX 31875 sensor, which has only four
connections, two of which are used for the power supply and the other two are the standard I2C
interface lines: SDA and SCL. The normal transaction consists of two bytes long reads and
writes as the registers are 16 bits wide. There are 8 different factory predefined I2C addresses, so
the exact sensor I2C address can be determined by checking the part I2C address table in the
datasheet.
The sensor is exposed on a specially designed PCB, so the measurement of the ambient
temperature can remain accurate and without interference.
Sensor measures it's die temperature and converts the thermal measurement into a digital
information, which can be accessed via the I2C/SMBus interface. Information is stored in the
temperature register, in MSB - LSB format. In addition to the normal temperature data format,
there is an optional extended data format, which allows temperature’s greater than +128 C to be
read. The temperature format and other sensor settings can be configured via the configuration
registers. Check the MAX31875 datasheet for more detailed information.
All of the power down, standby, read and write commands are intelligently managed, so the
device is waiting for the pending communication to be completed, before executing those
commands. Also, while reading the thermal data, the conversion process is halted, so the value
won't change before the reading is completed.
MAX31875 features
MAX31875 temperature sensor can be set to sample the thermal data with 8bit, 9bit, 10bit and
12bit resolution. Using the higher precision conversion directly affects the power consumption,
so if there is a demand for the low power application, resolution can be set down to 8bit. Power
consumption can be reduced even further, by using the lower sample rate, which results in longer
idle periods. While idling, the power consumption of the sensor itself goes down to 500 nA.
One shot reading allows for the lowest power consumption - down to 5uA, if there is no demand
for continuous temperature conversion. The device remains in standby state, as long as there is
no read command. Read command (writing 1 to the bit 0 of the config register) will wake up the
device and read the temperature data immediately, after which it will revert to standby mode
again. This allows for a very low average power consumption.
Other advanced features such as the PEC, I2C bus timeout reset, temperature comparator, can
also be configured by setting the corresponding bits of the config registers.
Specifications
Type
Temperature / Humidity
Applications
battery‐powered equipment, handheld electronics, industrial equipment
On‐board
modules
MAX31875 integrated circuit
Key Features
Wide temperature measurement range, low power consumption, smart data output
management
Key Benefits
Excellent temperature accuracy ±1.5°C from +10°C to +45°C (±0.5°C typical), ±2°C from ‐
10°C to +100°C (±0.6°C typical), ±3°C from ‐20°C to +125°C (±1°C typical)
Interface
I2C
Input Voltage 3.3V
Click board size S (28.6 x 25.4 mm)
Pinout diagram
This table shows how the pinout on Thermo 6 click corresponds to the pinout on the
mikroBUS™ socket (the latter shown in the two middle columns).
Notes
Pin
Pin
Notes
NC
1
AN
PWM
16
NC
NC
2
RST
INT
15
NC
NC
3
CS
TX
14
NC
NC
4
SCK
RX
13
NC
NC
5
MISO
SCL
12
SCL
I2C clock
NC
6
MOSI
SDA
11
SDA
I2C data
+3.3V
7
3.3V
5V
10
NC
Power supply
Ground
GND
8
GND
GND
9
GND
Ground
LEDs and Buttons
Designator
LD1
Name
PWR
Type
LED
Description
Power indication LED, lights green when device is on
Programming
Code examples for Thermo 6 click, written for MikroElektronika hardware and compilers are
available on Libstock.
Code snippet
This code snippet reads the temperature in Celsius from Thermo 6 click.
01 uint8_t text[20];
02
float temperature;
03
04
void systemInit()
05
{
06
I2C1_Init_Advanced(100000, &_GPIO_MODULE_I2C1_PB67);
07
HAL_THERMO6_i2cInit(I2C1_Start, 0, 0, I2C1_Write, I2C1_Read);
08
UART1_Init(9600);
09
}
10
void Thermo_6_Init()
11
{
12
THERMO6_writeRegCfg(CFG_HIGH_12_BIT,CFG_LOW_12_BIT);
//
configure 12bit Temperature resolution
13
}
14
void Thermo_6_Task()
15
{
16
temperature = THERMO6_getTemperature();
17
FloatToStr(temperature,text);
18
UART1_Write_Text("Temperature: ");
19
UART1_Write_Text(text);
20
UART1_write(13);
21
UART1_write(10);
22
Delay_ms(1000);
23
}
24
void main()
25
{
26
systemInit();
27
Thermo_6_Init();
28
while( 1 )
29
{
30
Thermo_6_Task();
31
}
32
}
https://shop.mikroe.com/thermo‐6‐click 10‐19‐17