Mikroe DHT22 2 click

Product ID: 7615
Mikroe dht22 2 click 7171529955
$28.99 Backordered

Ships in 15 to 20 days

DHT22 2 click is used for measuring the environmental temperature and relative humidity. It uses the CM2322 sensor, with very accurate thermal and humidity measuring capabilities. It can use either 1-Wire or I2C protocol to communicate with the integrated circuit.

Attributes like the ultra-small size, low power consumption, data signal transmission distance up to 20 meters, make this sensor the perfect choice for all kinds of applications that require measurement of the temperature and humidity.

How does the click work?

The sensor used on this click is CM2322. This sensor contains humidity and temperature measurement elements, compensated and calibrated in the accurate calibration chamber. The calibration coefficient is saved in the OTP memory of an integrated MCU. The integrated MCU also provides I2C or 1-Wire interface, selectable by the onboard SMD jumper selectors. The operating voltage can also be selected by the onboard SMD jumper.

Typical temperature accuracy is ±0.3°C, while relative humidity accuracy is 2% RH, with the resolution of 0.1 for both measured properties.

I2C/1-Wire interface is used to communicate with the host MCU, sending the measurement data every 2 seconds. Proprietary data collecting techniques are used to average the sampled values, after which the result is sent via the I2C/1-Wire bus.

Specifications

Type Temperature / Humidity
On-board modules CM2322 sensor with very accurate thermal and humidity measuring capabilities
Key Features Great measuring accuracy: ±0.3°C, ±2%RH at 25°C, ultra-small size, low power consumption, signal transmission distance up to 20 meters.
Interface 1-Wire,I2C
Input Voltage 3.3V or 5V
Click board size M (42.9 x 25.4 mm)


Pinout diagram

This table shows how the pinout on DHT22 2 click corresponds to the pinout on the mikroBUS™ socket (the latter shown in the two middle columns).

Notes Pin Mikrobus logo.png Pin Notes
NC 1 AN PWM 16 OW 1-wire 
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 +3.3V 7 3.3V 5V 10 +5V Power supply
Ground GND 8 GND GND 9 GND Ground

DHT22 2 click maximum ratings

Description Min Typ Max Unit
Logic voltage level 3.3 5 5.5 V
SCL clock frequency 100 kHz
Measuring range (T) -40 +80 °C
Measuring range (RH) 0% 99% RH

Onboard settings and indicators

Label Name Default  Description
JP1 OW/SCL Right Digital interface selection. Left position 1-Wire, right position I2C.
JP2 OW/SDA Right Digital interface selection. Left position 1-Wire, right position I2C.
JP3 LOGIC SEL Left Logic level voltage selection. Left position 3.3V, right position 5V.
PWR Power LED - Power LED indicates that the click is powered on

Software Support

We provide a library for the DHT22 2 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

Library contains key functions used to read temperature and humidity data from the DHT22 2 click.

float DHT22_2_getTemperature();- Function for reading temperature from sensor

float DHT22_2_getHumidity()- Function for reading humidity from sensor

Examples Description

The example uses the library functions to read the temperature and humidity from the sensor and sends the data to the user, via the UART interface. The two functions use I2C interface to communicate with the MCU. Both of these functions return data in floating format, which only needs to be converted to a string with the compiler function FloatToString, before it is sent to the UART module. After that, the temperature and the humidity data can be viewed using the UART terminal.

void applicationTask()
{
     temp = DHT22_2_getTemperature();
     humidity = DHT22_2_getHumidity();
     FloatToStr(temp,output);
     UART1_Write_Text("Temperature: ");
     UART1_Write_Text(output);
     UART1_Write_Text("°C");
     UART1_Write(13);
     UART1_Write(10);
     UART1_Write_Text("Humidity: ");
     FloatToStr(humidity,output);
     UART1_Write_Text(output);
     UART1_Write_Text("%");
     UART1_Write(13);
     UART1_Write(10);
     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:

  • UART
  • I2C

Additional notes and information

Depending on the development board you are using, you may need USB UART clickUSB 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.