Temp&Hum 8 Click
PID: MIKROE‐3263
Weight: 23 g
Temp&Hum 8 click is based on a sensor from the popular SHT family,
designed to measure temperature and humidity. This sensor family has
already become an industry standard, providing proven reliability and
stability while requiring a minimum number of components, making the
development of applications cheaper and faster. The sensor used on this
click is labeled as SHT21, which features a high degree of measurement
linearity, thanks to the factory calibration and testing which is performed for
each sensor sample. Featuring high accuracy, good linearity, proven
reliability, and long-term stability, you can use this sensor can for many
different applications. Some of them include weather stations, various
environmental data collection applications, IoT based applications, and all
applications that require a reliable thermal and humidity readings over
longer periods of time.
It comes in the package which also includes the mikroSDK™ software and a
library with all the functions. The Click board™ comes as a fully tested and
approved prototype, making it a reliable device ready to use on the
development board.
The programmable sensor resolution allows you to select between 8/12 bits
and 12/14 bits (temp/hum), which directly affects the power consumption.
The sensor housing is made of epoxy with no Pb, Cd, or Hg parts, which
guarantees the reliability and compatibility of Temp&Hum 8 click with RoHS
and WEEE standards.
How does it work?
The sensor IC used on the Temp&Hum 8 click is the SHT21, a Humidity and
Temperature Digital Sensor from Sensirion. This sensor is factory calibrated,
allowing down to ±2% relative humidity tolerance (RH) and ±0.3°C thermal
tolerance. However, the RH measurement of the sensor is affected by the
temperature, therefore it is required to use the sensor at the temperature of
the air, in which the humidity is measured. The humidity accuracy is also
affected by the RH percentage: if both temperature and humidity are placed
on a graph, it is possible to get a diagram of the RH accuracy as the function
of RH percentage and temperature. One such diagram is presented in the
datasheet of the SHT21 sensor, which can be found in the Downloads
section, below.
The SHT21 IC is based on the CMOSens® technology, featuring the
capacitive RH sensor and the bandgap temperature sensor. Besides the
sensing elements, the IC incorporates an analog front end (AFE), which
consists of A/D converter, OTP memory, and a logic section. The integrated
A/D converter can be programmatically selected from the lowest 8/12-bit
resolution, up to resolutions of 12/14 bits. The resolution selection affects
the power consumption, as well as the data output rate. The response time
might vary between 3ms for 8-bit resolution, up to 29ms for 14-bit
resolution, for the RH readings. The resolution selection can be set within
the so-called User register.
The SHT21 sensor also features an integrated heating element, used to
evaporate condensation. The heating element can be simply activated by
setting a bit in the User register. In the case when the heater is powered on,
the power consumption might rise above the typical values.
The SHT21 sensor is also equipped with the brown-out status bit, located in
the User register. This bit indicates the low power voltage: if the voltage
drops below 2.25V, this bit will be set to 1, indicating a brown-out condition.
Temp&Hum 8 click uses the I2C interface, and it already features pull-up
resistors on the I2C lines. It can be used out of the box. The provided click
board™ library contains simple and easy to use functions, which simplify
configuring and reading of the measurement data. These functions are
demonstrated in the included example application and can be used as a
reference for custom projects. These functions can be used in mikroC,
mikroBASIC and mikroPASCAL compilers for all MCU architectures supported
by MikroElektronika.
Specifications
Type
Temperature / Humidity
Applications
It is a perfect choice for various consumer and industry related
applications, such as the indoor weather stations, thermostats and
humidistats, microenvironment centers, and similar applications
On-board
modules
The SHT21, a Humidity and Temperature Digital Sensor from
Sensirion
Key Features
High accuracy, good linearity, proven reliability, long-term
stability, programmable resolution from 8 bits, up to 14 bits, an
integrated heater, etc.
Interface
I2C
Input
Voltage
3.3V
Click board
size
M (42.9 x 25.4 mm)
Pinout diagram
This table shows how the pinout on Temp&Hum 8 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
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
3V3
7
3.3V
5V
10
NC
Ground
GND
8
GND
GND
9
GND
Ground
Onboard settings and indicators
Label
Name
Default
Description
PWR
-
Power LED indicator
PWR
We provide a library for the Temp&Hum 8 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 writing data in the register and reads data from the register. The
library includes the function for reading Temperature and Relative Humidity
data and function for reading/writing data to user register. The user also has
the function for default configuration device for measurement and function
for device software reset.
Key functions:
float temphum8_getTemperature(uint8_t tempIn) - Functions for reading Temperature
data
float temphum8_getHumidity() - Functions for reading Relative Humidity data
void temphum8_configuration(uint8_t cfg) - Functions for configuration device for
measurement
Examples description
The application is composed of the three sections :
System Initialization - Initializes I2C module
Application Initialization - Initialization driver init, chip reset and default configuration;
Application Task - (code snippet) - Reads Temperature and Humidity data and this data logs to
USBUART every 1sec.
void applicationTask()
{
float Temperature;
float Humidity;
char demoText[ 50 ];
Temperature = temphum8_getTemperature(_TEMPHUM8_TEMPERATURE_IN_CELSIUS);
FloatToStr(Temperature, demoText);
mikrobus_logWrite(" Temperature : ", _LOG_TEXT);
mikrobus_logWrite(demoText, _LOG_TEXT);
mikrobus_logWrite(" C", _LOG_LINE);
Humidity = temphum8_getHumidity();
FloatToStr(Humidity, demoText);
mikrobus_logWrite(" Humidity : ", _LOG_TEXT);
mikrobus_logWrite(demoText, _LOG_TEXT);
mikrobus_logWrite(" RH", _LOG_LINE);
mikrobus_logWrite(" ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐ ", _LOG_LINE);
Delay_ms( 1000 );
}
The full application code, and ready to use projects can be found on
our LibStock page.
Other mikroE Libraries used in the example:
I2C
Additional notes and information
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/temp‐hum‐8‐click/12‐19‐18