Thermo 27 click
Thermo 27 Click is a compact add-on board that accurately measures temperature. This board features the TMP114, a high-accuracy digital temperature sensor from Texas Instruments.
click Product page
Click library
- Author : Stefan Ilic
- Date : Nov 2022.
- Type : I2C type
Software Support
We provide a library for the Thermo 27 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 from NECTO Studio Package Manager(recommended way), downloaded from our LibStock™ or found on Mikroe github account.
Library Description
This library contains API for Thermo 27 Click driver.
Standard key functions :
thermo27_cfg_setup
Config Object Initialization function.
void thermo27_cfg_setup(thermo27_cfg_t *cfg)
Thermo 27 configuration object setup function.
Thermo 27 Click configuration object.
Definition thermo27.h:203
thermo27_init
Initialization function.
err_t thermo27_init(thermo27_t *ctx, thermo27_cfg_t *cfg)
Thermo 27 initialization function.
Thermo 27 Click context object.
Definition thermo27.h:187
thermo27_default_cfg
Click Default Configuration function.
err_t thermo27_default_cfg(thermo27_t *ctx)
Thermo 27 default configuration function.
Example key functions :
thermo27_write_register
Thermo 27 register writing function.
err_t thermo27_write_register(thermo27_t *ctx, uint8_t reg, uint16_t data_in)
Thermo 27 register writing function.
thermo27_get_device_id
Thermo 27 get device id function.
err_t thermo27_get_device_id(thermo27_t *ctx, uint16_t *device_id)
Thermo 27 get device id function.
thermo27_read_temp
Thermo 27 get read temperature function.
err_t thermo27_read_temp(thermo27_t *ctx, float *temp_out)
Thermo 27 get read temperature function.
Example Description
This example demonstrates the use of Thermo 27 Click board by reading and displaying the temperature measurements.
The demo application is composed of two sections :
Application Init
Initializes the driver and reads the device id, and after that resets the device and performs default configuration.
{
log_cfg_t log_cfg;
LOG_MAP_USB_UART( log_cfg );
log_init( &logger, &log_cfg );
log_info( &logger, " Application Init " );
if ( I2C_MASTER_ERROR ==
thermo27_init( &thermo27, &thermo27_cfg ) )
{
log_error( &logger, " Communication init." );
for ( ; ; );
}
uint16_t device_id;
{
log_error( &logger, " Communication error." );
for ( ; ; );
}
{
log_error( &logger, " Default configuration." );
for ( ; ; );
}
log_info( &logger, " Application Task " );
log_printf( &logger, " ======================= \r\n");
}
#define THERMO27_MAP_MIKROBUS(cfg, mikrobus)
MikroBUS pin mapping.
Definition thermo27.h:175
#define THERMO27_DEVICE_ID
Definition thermo27.h:105
void application_init(void)
Definition main.c:30
@ THERMO27_ERROR
Definition thermo27.h:219
Application Task
Reads the temperature measurement in degrees Celsius and displays the results on the USB UART at a rate of once per second.
{
float temperature;
uint8_t status;
{
log_printf( &logger, " Temperature: %f degC \r\n", temperature );
log_printf( &logger, " ======================= \r\n");
}
}
#define THERMO27_DATA_READY_FLAG
Definition thermo27.h:148
err_t thermo27_get_alert_reg(thermo27_t *ctx, uint8_t *register_flags)
Thermo 27 get alert register staus function.
void application_task(void)
Definition main.c:75
The full application code, and ready to use projects can be installed directly from NECTO Studio Package Manager(recommended way), downloaded from our LibStock™ or found on Mikroe github account.
Other Mikroe Libraries used in the example:
- MikroSDK.Board
- MikroSDK.Log
- Click.Thermo27
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. UART terminal is available in all MikroElektronika compilers.