THERMO 15 CLICK
PID: MIKROE-3658
Weight: 17 g
Thermo 15 Click is a Click board™ equipped with the sensor IC, which can
digitize temperature measurements between -55°C and +125°C so that the temperature
measurement data can be processed by the host MCU. Thermo 15 click provides an
accuracy of ±1°C in the range from 0°C to 70°C. The sensor used on this Click board™
has a great combination of features that make it a perfect choice for any temperature
measurement application: low temperature drift, low power consumption, programmable
alert engine, compact sensor size, critical temperature warnings, and more. The sensor
itself requires almost no external components, which simplifies the design, reducing the
cost and cutting the time to market.
Thermo 15 click is supported by a mikroSDK compliant library, which includes functions
that simplify software development. This Click board™ comes as a fully tested product,
ready to be used on a system equipped with the mikroBUS™ socket.
The Click board™ is specially designed so it retains the specified characteristics of the
sensor IC. Equipped with this sophisticated, accurate and simple to use sensor IC, it
can be used for measuring and monitoring the temperature in a whole range of
applications, such as the PC case and other internal components temperature
monitoring, office equipment and entertainment systems thermal monitoring, general
purpose thermal measurement, and similar digital thermal measurement applications,
that require a precise thermal measurement and an overtemperature alert.
HOW DOES IT WORK?
The active temperature sensing component on Thermo 15 click is the NCT75, a high
accuracy temperature sensor IC with the 2-Wire interface, from ON Semiconductor. The
Click board™ itself has a reasonably small number of components because most of the
measurement circuitry is already integrated on the NCT75 sensor. The I2C / SMBus
compatible serial interface lines, along with the INT pin, which also works in the open
drain configuration, are pulled up by the onboard resistors. The 2-Wire lines are routed
to the respective I2C lines of the mikroBUS™ (SCK and SDA), while the INT pin is
routed to the INT pin of the mikroBUS™
The sensor IC uses the I2C/SMBus compatible communication interface. There are six
registers for configuring and reading the teperature: the address pointer register, 4 data
registers and a one-shot register. The address pointer register is used to select which
register is to respond to a read or write operation. The data registers are used to set the
high and low temperature limits, temperature hysteresis for the interrupt events, and all
the working parameters. One of the data registers is Stored Temperature as well, used
to store the sampled temperature data. The measured temperature is stored in this 16bit read only register in twos complement format with the MSB as the sign bit.
More information about all the registers can be found in the NCT75 datasheet.
However, provided library contains functions that simplify the use of the Thermo 15
click. The included application example demonstrates their functionality and it can be
used as a reference for custom design.
An analog signal from the thermal sensor is sampled by the internal ADC converter,
with the resolution of 12 bits. Thanks to high resolution ADC, the step size can be as
small as 0.0625°C. If an 8 bit (1°C resolution) reading is required then a single byte read
is sufficient. The INT pin is used to trigger an interrupt event on the host MCU. This pin
can operate in two different modes – overtemperature mode and SMBus alert
mode. Since the Click board™ features a pull-up resistor, it is advised to set the polarity
so that the asserted state drives the pin to a LOW logic level. A critical temperature
values are stored in the data registers.
The INT pin can operate in comparator and interrupt event modes. When working in the
Comparator mode, these pins will be triggered whenever a temperature limit is
exceeded. The pins stays asserted until the temperature drops below the hysteresis
level. Both values are set in the respective temperature registers (limit and hysteresis).
This mode is useful for thermostat-like applications: it can be used to power down a
system in case of overheating or turn off the cooling fan if the temperature is low
enough.
If set to work in the therm mode, the INT pin will stay asserted when the temperature
exceeds the value in the high limit register. When the temperature drops below the
hysteresis level, the INT pin will be cleared. This mode is used to trigger an interrupt on
the host MCU, which is supposed to read the sensor when the interrupt event is
generated.
The device can be set to work in several different power modes. It can be set to
continuously sample the temperature measurements, it can be set to work in the oneshot mode, and it can be set to stay in the shutdown mode. The shutdown mode
consumes the least power, keeping all the internal sections but the communication
section, unpowered. The one-shot mode allows the device to stay in the shutdown
mode, run a single conversion cycle on demand, and the revert back to the shutdown
mode. This allows for a lower power consumption. The design of the Click board™ itself
is such that the thermal radiation from other components, which might affect the
environmental temperature readings of the sensor, is reduced. The onboard SMD
jumper labeled as VCC SEL allows voltage selection for interfacing with both 3.3V and
5V MCUs, while the ADDR SEL jumpers allows the user to switch between different I2C
addresses.
SPECIFICATIONS
Type
Temperature
Applications
It can be used for the PC case temperature monitoring, office
equipment, and entertainment systems thermal monitoring, general
purpose thermal measurement, etc.
On-board
modules
NCT75, a high accuracy temperature sensor IC with the 2-Wire
interface, from ON Semiconductor.
Key Features
Low temperature drift, low power consumption, programmable alert
engine, compact sensor size, critical temperature warnings, and
more.
Interface
I2C
Input Voltage
3.3V or 5V
Click board
size
S (28.6 x 25.4 mm)
PINOUT DIAGRAM
This table shows how the pinout on Thermo 15 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
INT
NC
3
CS
RX
14
NC
NC
4
SCK
TX
13
NC
NC
5
MISO
SCL
12
SCL
I2C Clock
NC
6
MOSI
SDA
11
SDA
I2C Data
Power Supply
3.3V
7
3.3V
5V
10
5V
Ground
GND
8
GND
GND
9
GND
Interrupt output
Power Supply
Ground
ONBOARD SETTINGS AND INDICATORS
Label
Name
Default
Description
JP1-3
ADDR SEL
Left
I2C address selection: left position 0, right position1
JP4
VCC SEL
Left
Power supply voltage selection: left position 3V3,
right position 5V
LD1
PWR
-
Power LED indicator
THERMO 15 CLICK ELECTRICAL SPECIFICATIONS
Description
Min
Typ
Max
Unit
-55
-
+125
°C
Temperature Range (accuracy ±1˚C)
0
-
70
°C
Communication speed
0
-
400
kHz
Temperature Range (accuracy ±0.25˚C)
SOFTWARE SUPPORT
We provide a library for the Thermo 15 click on our LibStock page, as well as a demo
application (example), developed using MikroElektronika compilers. The demo can run
on all the main MikroElektronika development boards.
Library Description
The library initializes and defines the I2C bus driver and drivers that offer a choice for
read data form register. The library includes function for read Temperature data and
function for read and set temperature hysteresis and limit. The user also has the
function for configuration chip and read Interrupt (INT pin) state.
Key functions:
•
•
•
float thermo15_getAmbientTemperatureData(uint8_t tempIn) - Ambient temperature data.
void thermo15_setTempRegister(uint8_t tempReg, float temp) - Set temperature register.
void thermo15_configuration(uint8_t cfgData) - Configuration register.
Examples description
The application is composed of three sections :
•
System Initialization - Initializes I2C module and sets INT pin as INPUT.
•
Application Initialization - Initializes the driver init, configures the module and reads the temperature
hysteresis and limit values that are set.
•
Application Task - Reads ambient temperature data and this data logs to USBUART every 1500ms.
void applicationTask()
{
float Temperature;
Temperature = thermo15_getAmbientTemperatureData( _THERMO15_TEMP_IN_CELSIUS );
FloatToStr(Temperature, demoText);
mikrobus_logWrite("** Temperature : ", _LOG_TEXT);
mikrobus_logWrite(demoText, _LOG_LINE);
mikrobus_logWrite( " ---------------------------- ", _LOG_LINE);
Delay_ms( 1500 );
}
The full application code, and ready to use projects can be found on our LibStock page.
Other mikroE Libraries used in the example:
•
I2C Library.
•
UART Library.
•
Conversions Library.
Additional notes and informations
Depending on the development board you are using, you may need USB UART
click, USB UART 2 click or RS232 click to connect to your PC, for development systems
with no UART to USB interface available on the board. The terminal available in all
MikroElektronika compilers, or any other terminal application of your choice, can be
used to read the message.
MIKROSDK
This Click board™ is supported with mikroSDK - MikroElektronika Software
Development Kit. To ensure proper operation of mikroSDK compliant Click board™
demo applications, mikroSDK should be downloaded from the LibStock and installed for
the compiler you are using.
For more information about mikroSDK, visit the official page.
DOWNLOADS
mikroBUS™ Standard specification
LibStock: mikroSDK
Click board catalog
Thermo 15 click Libstock
NCT75 datasheet
Thermo 15 click 2D and 3D files
Thermo 15 click schematic
https://www.mikroe.com/thermo-15-click/7-12-19