THERMO 13 CLICK
PID: MIKROE-3688
Weight: 18 g
Thermo 13 Click is a Click board™ equipped with the sensor IC, which can
digitize temperature measurements between -30°C and +95°C so that the temperature
measurement data can be processed by the host MCU. Thermo 13 click provides good
measurement accuracy in the range from -20°C to +85°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 power consumption, programmable interrupt
engine, compact sensor size, interrupt output pin, and more. The sensor itself requires
almost no external components, which simplifies the design, reducing the cost and
cutting the time to market.
Thermo 13 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 13 click is the BH1900NUX, a
high accuracy temperature sensor IC with the 2-Wire interface, from ROHM
Semiconductor. The Click board™ itself has a reasonably small number of components
because most of the measurement circuitry is already integrated on the BH1900NUX
sensor. The I2C 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 2Wire lines are routed to the respective I2C lines of the mikroBUS™ (SCK and SDA),
while the ALERT pin of the sensor IC is routed to the INT pin of the mikroBUS™.
The sensor IC uses the I2C compatible communication interface. There are five
registers, used to set the high and low temperature limits, temperature hysteresis for the
interrupt events, configuration register used to store all the working parameters, readonly register which holds the sampled temperature data, and more. More information
about all the registers can be found in the BH1900NUX datasheet. However, provided
library contains functions that simplify the use of the Thermo 13 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.
Thanks to high resolution ADC, the step size can be as small as 0.0625°C. The INT pin
is used to trigger an interrupt event on the host MCU. This pin has a programmable
polarity: it can be set to be asserted either to a HIGH logic level or to a LOW logic level
by setting POL bit in the configuration register. Since the Click board™ features a pullup resistor, it is advised to set the polarity so that the asserted state drives the pin to a
LOW logic level. A special mechanism is employed to reduce false ALERT triggering.
This mechanism includes queueing of the cycles in which the temperature limit is
exceeded The ALERT pin can be set to work in two different modes: Comparator mode
and thermostat mode.
When working in the Comparator mode, this pin will be triggered whenever a
temperature limit is exceeded. The INT pin 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 thermostat 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 the shutdown
mode. The shutdown mode consumes the least power, keeping all the internal sections
but the communication section, unpowered. 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.
Thermo 13 click supports I2C communication interface, allowing it to be used with a
wide range of different MCUs. The slave I2C address can be configured by an SMD
jumpers, labeled as A0, A1 and A2. They are used to set the last three bis of the I2C
address.
This Click Board™ is designed to be operated only with up to 3.3V logic levels. Proper
conversion of logic voltage levels should be applied, before the Click board™ is used
with MCUs operated at 5V.
SPECIFICATIONS
Type
Temperature & humidity
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
BH1900NUX, a high accuracy temperature sensor IC with the I2C
interface, from ROHM Semiconductor
Key Features
Low power consumption, programmable interrupt engine, compact
sensor size, interrupt output pin
Interface
I2C
Click board
size
M (42.9 x 25.4 mm)
Input Voltage
3.3V
PINOUT DIAGRAM
This table shows how the pinout on Thermo 13 click corresponds to the pinout on the
mikroBUS™ socket (the latter shown in the two middle columns).
Notes
Power Supply
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
3.3V
7
3.3V
5V
10
NC
Interrupt output
GND
Ground
8
GND
GND
9
GND
Ground
ONBOARD SETTINGS AND INDICATORS
Label
Name
Default
JP1-JP3
A0-A2
Right
LD1
PWR
-
Description
I2C address selection: left position 0, right position 1
Power LED indicator
THERMO 13 CLICK ELECTRICAL SPECIFICATIONS
Description
Temperature Range (accuracy ±3˚C)
Communication speed
Min
Typ
Max
Unit
-20
-
+85
°C
0
-
400
kHz
SOFTWARE SUPPORT
We provide a library for the Thermo 13 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 limit low/high register. The user also has the
function for configuration chip and read Interrupt (INT pin) state.
Key functions:
float thermo13_getAmbientTemperatureData(uint8_t tempIn) - Ambient temperature data
void thermo13_setTempLimit(uint8_t tempReg, float temp) - Set temperature limit register
void thermo13_configuration(uint8_t cfgData) - Configuration register
Examples description
System Initialization - Initializes I2C module and sets INT pin as INPUT
Application Initialization - Initializes the driver init, configures the module and reads the temperature
Limit LOW/HIGH values that are set
Application Task - Reads ambient temperature data and this data logs to USBUART every 1500ms
void applicationTask()
{
float Temperature;
Temperature = thermo13_getAmbientTemperatureData( _THERMO13_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.
https://www.mikroe.com/thermo‐13‐click/8‐14‐19