adc23 2.1.0.0
Main Page

ADC 23 click

‍ADC 23 Click is a compact add-on board that converts an analog voltage into a digital representation. This board features the ADS127L11, a wide-bandwidth 24-bit delta-sigma analog-to-digital converter from Texas Instruments. It is capable of data rates up to 400ksps using a wideband filter and up to 1067ksps using a low-latency filter. It also offers an excellent combination of AC performance and DC precision with low power consumption.

click Product page


Click library

  • Author : Nenad Filipovic
  • Date : Aug 2023.
  • Type : SPI type

Software Support

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

Standard key functions :

  • adc23_cfg_setup Config Object Initialization function.
    void adc23_cfg_setup(adc23_cfg_t *cfg)
    ADC 23 configuration object setup function.
    ADC 23 Click configuration object.
    Definition adc23.h:211
  • adc23_init Initialization function.
    err_t adc23_init ( adc23_t *ctx, adc23_cfg_t *cfg );
    err_t adc23_init(adc23_t *ctx, adc23_cfg_t *cfg)
    ADC 23 initialization function.
    ADC 23 Click context object.
    Definition adc23.h:189
  • adc23_default_cfg Click Default Configuration function.
    err_t adc23_default_cfg ( adc23_t *ctx );
    err_t adc23_default_cfg(adc23_t *ctx)
    ADC 23 default configuration function.

Example key functions :

Example Description

‍This example demonstrates the use of the ADC 23 Click boardâ„¢ by reading and writing data by using SPI serial interface and reading results of AD conversion.

The demo application is composed of two sections :

Application Init

‍Initialization of SPI module and log UART. After driver initialization, the app executes a default configuration.

void application_init ( void )
{
log_cfg_t log_cfg;
adc23_cfg_t adc23_cfg;
LOG_MAP_USB_UART( log_cfg );
log_init( &logger, &log_cfg );
log_info( &logger, " Application Init " );
// Click initialization.
adc23_cfg_setup( &adc23_cfg );
ADC23_MAP_MIKROBUS( adc23_cfg, MIKROBUS_1 );
if ( SPI_MASTER_ERROR == adc23_init( &adc23, &adc23_cfg ) )
{
log_error( &logger, " Communication init." );
for ( ; ; );
}
if ( ADC23_ERROR == adc23_default_cfg ( &adc23 ) )
{
log_error( &logger, " Default configuration." );
for ( ; ; );
}
log_info( &logger, " Application Task " );
Delay_ms ( 100 );
}
@ ADC23_ERROR
Definition adc23.h:239
#define ADC23_MAP_MIKROBUS(cfg, mikrobus)
MikroBUS pin mapping.
Definition adc23.h:172
void application_init(void)
Definition main.c:30

Application Task

‍The demo application reads the voltage levels from analog input and displays the results. Results are being sent to the UART Terminal, where you can track their changes.

void application_task ( void )
{
static float voltage = 0.0;
if ( ADC23_OK == adc23_get_voltage( &adc23, &voltage ) )
{
log_printf( &logger, " Voltage : %.2f [mV]\r\n", voltage );
Delay_ms ( 1000 );
}
}
@ ADC23_OK
Definition adc23.h:238
void application_task(void)
Definition main.c:67

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

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.