temphum9 2.0.0.0
Main Page

Temp-Hum 9 click

‍Temp-Hum 9 click is a smart temperature and humidity sensing click boardâ„¢, packed with features that allow simple integration into any design.

click Product page


Click library

  • Author : MikroE Team
  • Date : Dec 2019.
  • Type : I2C type

Software Support

We provide a library for the TempHum9 Click as well as a demo application (example), developed using MikroElektronika compilers. The demo can run on all the main MikroElektronika development boards.

Package can be downloaded/installed directly form compilers IDE(recommended way), or downloaded from our LibStock, or found on mikroE github account.

Library Description

‍This library contains API for TempHum9 Click driver.

Standard key functions :

Example key functions :

  • temphum9_get_temperature Calculating temperature
    float temphum9_get_temperature ( temphum9_t *ctx, uint8_t data_mode );
    float temphum9_get_temperature(temphum9_t *ctx, uint8_t data_mode)
    Calculating temperature.
  • temphum9_get_humidity Calculating relative humidity
    float temphum9_get_humidity ( temphum9_t *ctx, uint8_t data_mode );
    float temphum9_get_humidity(temphum9_t *ctx, uint8_t data_mode)
    Calculating relative humidity.
  • temhum9_get_data Calculating temperature and relative humidity
    void temhum9_get_data ( temphum9_t *ctx, uint8_t data_mode, float *temp, float *hum );
    void temhum9_get_data(temphum9_t *ctx, uint8_t data_mode, float *temp, float *hum)
    Calculating temperature and relative humidity.

Example Description

‍This example demonstrates the use of TempHum 9 click board by reading and displaying the temperature and humidity measurement results.

The demo application is composed of two sections :

Application Init

‍Initializes I2C driver and sends SLEEP and WAKEUP commands.

void application_init ( void )
{
log_cfg_t log_cfg;
LOG_MAP_USB_UART( log_cfg );
log_init( &logger, &log_cfg );
log_info( &logger, " Application Init " );
// Click initialization.
TEMPHUM9_MAP_MIKROBUS( cfg, MIKROBUS_1 );
temphum9_init( &temphum9, &cfg );
Delay_ms ( 100 );
Delay_ms ( 500 );
Delay_ms ( 500 );
log_info( &logger, " Application Task " );
}
#define TEMPHUM9_WAKEUP
Definition temphum9.h:110
#define TEMPHUM9_SLEEP
Definition temphum9.h:109
#define TEMPHUM9_MAP_MIKROBUS(cfg, mikrobus)
Definition temphum9.h:66
void temphum9_send_command(temphum9_t *ctx, uint16_t command)
Issuing a command.
void application_init(void)
Definition main.c:28

Application Task

‍Performs simultaneous temperature and relative humidity measurements and logs both values on the USB UART once per second.

{
float temperature = 0;
float humidity = 0;
temhum9_get_data ( &temphum9, TEMPHUM9_NORMAL_MODE, &temperature, &humidity );
log_printf( &logger, " Temperature: %.2f degC\r\n", temperature );
log_printf( &logger, " Relative humidity: %.2f %%\r\n", humidity );
log_printf( &logger, "-----------------------------\r\n" );
Delay_ms ( 1000 );
}
#define TEMPHUM9_NORMAL_MODE
Definition temphum9.h:92
void application_task()
Definition main.c:60

The full application code, and ready to use projects can be installed directly form compilers IDE(recommneded) or found on LibStock page or mikroE GitHub accaunt.

Other mikroE Libraries used in the example:

  • MikroSDK.Board
  • MikroSDK.Log
  • Click.TempHum9

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.