Ambient 16 click
PRVIH_PAR_RECENICA_SA_PRODUCT_PAGE_DA_ISPRATE_CELINU
[click Product page](CLICK_PRODUCT_PAGE_LINK)
Click library
- Author : Stefan Ilic
- Date : Nov 2021.
- Type : I2C type
Software Support
We provide a library for the Ambient 16 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 Ambient 16 Click driver.
Standard key functions :
ambient16_cfg_setup
Config Object Initialization function.
void ambient16_cfg_setup(ambient16_cfg_t *cfg)
Ambient 16 configuration object setup function.
Ambient 16 Click configuration object.
Definition: ambient16.h:209
ambient16_init
Initialization function.
err_t ambient16_init(ambient16_t *ctx, ambient16_cfg_t *cfg)
Ambient 16 initialization function.
Ambient 16 Click context object.
Definition: ambient16.h:192
ambient16_default_cfg
Click Default Configuration function.
err_t ambient16_default_cfg(ambient16_t *ctx)
Ambient 16 default configuration function.
Example key functions :
ambient16_get_part_id
Ambient 16 get part ID function.
err_t ambient16_get_part_id(ambient16_t *ctx, uint8_t *part_id)
Ambient 16 get part ID function.
ambient16_set_gain
Ambient 16 set ADC gain function.
err_t ambient16_set_gain(ambient16_t *ctx, uint8_t data0_gain, uint8_t data1_gain)
Ambient 16 set ADC gain function.
ambient16_read_data
Ambient 16 get data function.
err_t ambient16_read_data(ambient16_t *ctx, float *data0, float *data1)
Ambient 16 get data function.
Example Description
This is an example that demonstrates the use of the Ambient 16 Click board.
The demo application is composed of two sections :
Application Init
Initializes I2C driver performs software reset and applies default settings.
{
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 ==
ambient16_init( &ambient16, &ambient16_cfg ) )
{
log_error( &logger, " Communication init." );
for ( ; ; );
}
{
log_error( &logger, " Default configuration." );
for ( ; ; );
}
uint8_t id;
log_printf( &logger, "- - - - - - - - - - - - -\r\n" );
log_printf( &logger, " Part ID = 0x%.2X \r\n", ( uint16_t ) id );
log_printf( &logger, "- - - - - - - - - - - - -\r\n" );
Delay_ms( 500 );
log_info( &logger, " Application Task " );
log_printf( &logger, "- - - - - - - - - - - - -\r\n" );
}
@ AMBIENT16_ERROR
Definition: ambient16.h:227
#define AMBIENT16_MAP_MIKROBUS(cfg, mikrobus)
MikroBUS pin mapping.
Definition: ambient16.h:179
void application_init(void)
Definition: main.c:30
Application Task
Demonstrates use of Ambient 16 click board by reading data values of DATA0 and DATA1 every second, and logging it on UART terminal.
{
log_printf( &logger, " DATA 0 = %.2f lx \r\n", data0 );
log_printf( &logger, " DATA 1 = %.2f lx \r\n", data1 );
log_printf( &logger, "- - - - - - - - - - - - -\r\n" );
Delay_ms( 1000 );
}
void application_task(void)
Definition: main.c:74
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.Ambient16
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.