templog5 2.0.0.0
Main Page

Temp-Log 5 click

Temp-Log 5 click is a temperature measuring Click boardâ„¢ featuring the CAT34TS02, an accurate temperature sensor IC with integrated Serial Presence Detect EEPROM. Temperature Sensor measures and store temperatures at least 10 times in second. Temperature measurement results can be retrieved by the host MCU via I2C interface, and are compared to critical limits stored into internal registers. It also features programmable event output function and supports three modes.

click Product page


Click library

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

Software Support

We provide a library for the TempLog5 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 TempLog5 Click driver.

Standard key functions :

  • Config Object Initialization function.

    ‍void templog5_cfg_setup ( templog5_cfg_t *cfg );

    - Initialization function.

    ‍TEMPLOG5_RETVAL templog5_init ( templog5_t *ctx, templog5_cfg_t *cfg );

  • Click Default Configuration function.

    ‍void templog5_default_cfg ( templog5_t *ctx );

Example key functions :

  • This function write data to the EEPROM address

    ‍void templog5_write_eeprom ( templog5_t *ctx, uint8_t start_addr, uint8_t *data_in, uint8_t n_byte );

  • This function read data to the EEPROM address.

    ‍void templog5_read_eeprom ( templog5_t *ctx, uint8_t start_addr, uint8_t *data_out, uint8_t n_byte );

  • This function read from the TS register

    ‍uint16_t templog5_read_data ( templog5_t *ctx, uint8_t reg );

    Examples Description

‍Measures and stores temperatures values at least 10 times in second and logs it on terminal.

The demo application is composed of two sections :

Application Init

‍Initializes driver init, tests comunication and EEPROM read/write and sets default configuration parameters.

void application_init ( void )
{
log_cfg_t log_cfg;
uint16_t tmp;
uint8_t ee_test_write[1];
uint8_t ee_test_read[1];
LOG_MAP_USB_UART( log_cfg );
log_init( &logger, &log_cfg );
log_info( &logger, "Application Init" );
// Click initialization.
TEMPLOG5_MAP_MIKROBUS( cfg, MIKROBUS_1 );
templog5_init( &templog5, &cfg );
{
log_info( &logger, "Comunication OK!!!" );
}
else
{
log_info( &logger, "Comunication ERROR!!!" );
while( 1 );
}
ee_test_write[ 0 ] = 0xAA;
templog5_write_eeprom( &templog5, 0x10, &ee_test_write[ 0 ], 1);
Delay_ms ( 200 );
templog5_read_eeprom( &templog5, 0x10, &ee_test_read[ 0 ], 1);
log_info( &logger," EEPROM TEST READ: %u\r\n", ee_test_read[ 0 ] );
templog5_default_cfg ( &templog5 );
}
#define TEMPLOG5_REG_MANUFACTURER_ID
Definition templog5.h:92
#define TEMPLOG5_MANUFACTURER_ID
Definition templog5.h:174
#define TEMPLOG5_MAP_MIKROBUS(cfg, mikrobus)
Definition templog5.h:66
void templog5_cfg_setup(templog5_cfg_t *cfg)
Config Object Initialization function.
TEMPLOG5_RETVAL templog5_init(templog5_t *ctx, templog5_cfg_t *cfg)
Initialization function.
uint16_t templog5_read_data(templog5_t *ctx, uint8_t reg)
Functions for read data from registers.
void templog5_default_cfg(templog5_t *ctx)
Click Default Configuration function.
void templog5_read_eeprom(templog5_t *ctx, uint8_t start_addr, uint8_t *data_out, uint8_t n_byte)
Reads data from EEPROM.
void templog5_write_eeprom(templog5_t *ctx, uint8_t start_addr, uint8_t *data_in, uint8_t n_byte)
Writes data to the EEPROM address ( maximum 16 bytes per 1 page ).
void application_init(void)
Definition main.c:36
Click configuration structure definition.
Definition templog5.h:211

Application Task

‍Reads Temperature data and logs data to the terminal every 1 sec.

void application_task ( void )
{
float temperature;
temperature = templog5_get_temperature( &templog5 );
log_info( &logger,"Temperature: %.2f\r\n", temperature );
Delay_ms ( 1000 );
}
float templog5_get_temperature(templog5_t *ctx)
Temperature Data.
void application_task(void)
Definition main.c:86

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.TempLog5

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.