Carte à clic ADC 9
Carte à clic ADC 9
Key Features
- Résolution 24 bits, quatre canaux d'entrée différentiels ou huit canaux d'entrée asymétriques, dérive à faible température, registres d'étalonnage d'erreur de gain et de décalage numérique 24 bits et bien plus encore, huit canaux d'entrée analogiques
- Basé sur le MCP3564, un convertisseur analogique-numérique Delta-Sigma 24 bits avec un débit de données programmable jusqu'à 153,6 Ksps de Microchip
- Peut être utilisé pour une conversion analogique-numérique dans diverses applications, telles que la mesure précise de la température, de la contrainte, du débit, de la force et de la pression, le contrôle des processus de fabrication, l'instrumentation précise en général et pour des applications similaires
- mikroBUS : interfaces SPI et GPIO
Le Carte à clic ADC 9™ est la carte d'extension de convertisseur analogique-numérique à 8 canaux, pour les projets où vous avez besoin de conversions ADC multicanaux tels que les microcontrôleurs avec un petit nombre ou aucune entrée analogique. Cette carte Click est basée sur le MCP3564, un convertisseur analogique-numérique Delta-Sigma 24 bits avec un débit de données programmable jusqu'à 153,6 KSPS de Microchip. Il offre des fonctionnalités intégrées, telles qu'un oscillateur interne, un capteur de température et une détection de capteur de burnout, afin de réduire le nombre de composants du système et le coût total de la solution. Un choix idéal pour les systèmes d'acquisition de données de précision, les convertisseurs de données haute résolution, le contrôle industriel, les appareils alimentés par batterie et bien d'autres.
La carte à clic ADC 9™ est pris en charge par une bibliothèque compatible mikroSDK, qui comprend des fonctions qui simplifient le développement logiciel. Cette Click Board™ est un produit entièrement testé, prêt à être utilisé sur un système équipé du socket mikroBUS™.
How Does The ADC 9 Click Board™ Work?
The MCP3564 24-bit Delta-Sigma Analog-to-Digital Converter is fully configurable with Oversampling Ratio (OSR) from 32 to 98304 and gain from 1/3x to 64x. It include an internal sequencer (SCAN mode) with multiple monitor channels and a 24-bit timer to be able to automatically create conversion loop sequences without needing MCU communications. Advanced security features, such as CRC and register map lock, can ensure configuration locking and integrity, as well as communication data integrity for secure environments.
The ADC 9 Click Board™ comes with a 20 MHz SPI-compatible serial interface. Communication is largely simplified with 8-bit commands, including various Continuous Read/Write modes and 24/32-bit multiple data formats that can be accessed by the Direct Memory Access (DMA) of an 8-bit, 16-bit or 32-bit MCU.
The noise value generally increases when temperature is higher as thermal noise is dominant for all OSR larger than 32. For high OSR settings (> 512), the thermal noise is largely dominant and increases proportionally to the square root of the absolute temperature. The noise performance is also a function of the measurement duration. For short duration measurements (low number of consecutive samples), the peak-to-peak noise is usually reduced because the crest factor (ratio between the RMS noise and peak-to-peak noise) is reduced. This is only a consequence of the noise distribution being Gaussian by nature.
The ADC 9 Click Board™ uses the MCP3564 IC with a fully configurable analog input dual multiplexer that can select which input is connected to each of the two differential input pins (VIN+/VIN-) of the Delta-Sigma ADC. Each of these multiplexers includes the same possibilities for the input selection, so that any required combination of input voltages can be converted by the ADC. The analog multiplexer is composed of parallel low-resistance input switches turned on or off depending on the input channel selection. Their resistance is negligible compared to the input impedance of the ADC (caused by the charge and discharge of the input sampling capacitors on the VIN+/VIN- ADC inputs).
The ADC 9 Click Board™ also features MCP1501-20, a low drift bandgap-based voltage reference from Microchip for precision data acquisition systems. The bandgap uses chopper-based amplifiers, effectively reducing the drift to zero.
It is designed to be operated only with 3.3V logic levels. A proper logic voltage level conversion should be performed before the ADC 9 Click Board™ is used with MCUs with logic levels of 5V.
SPECIFICATIONS
Type | ADC |
Applications | Can be used for an analog to digital conversion in various applications, such as precise temperature, strain, flow, force measurement and pressure measurement, manufacturing process control, precise instrumentation in general, and for similar applications |
On-board modules | MCP3564 |
Key Features | 24-Bit Resolution, Four Differential or Eight Single-Ended Input Channels, Low-Temperature Drift, 24-Bit Digital Offset and Gain Error Calibration Registers and many more eight analog input channels |
Interface | GPIO,SPI |
Compatibility | mikroBUS |
Click board size | M (42.9 x 25.4 mm) |
Input Voltage | 3.3V |
PINOUT DIAGRAM
This table shows how the pinout on the ADC 9 Click Board™ corresponds to the pinout on the mikroBUS™ socket (the latter shown in the two middle columns).
Notes | Pin | Pin | Notes | ||||
---|---|---|---|---|---|---|---|
NC | 1 | AN | PWM | 16 | MCK | Master Clock | |
NC | 2 | RST | INT | 15 | INT | Interrupt/Modulator Data | |
SPI Chip Select | CS | 3 | CS | RX | 14 | NC | |
SPI Clock | SCK | 4 | SCK | TX | 13 | NC | |
SPI Data OUT | SDO | 5 | MISO | SCL | 12 | NC | |
SPI Data IN | SDI | 6 | MOSI | SDA | 11 | NC | |
Power Supply | 3.3V | 7 | 3.3V | 5V | 10 | NC | |
Ground | GND | 8 | GND | GND | 9 | GND | Ground |
ONBOARD SETTINGS AND INDICATORS
Label | Name | Default | Description |
---|---|---|---|
LD1 | PWR | - | Power LED Indicator |
VOLT SEL | JP1 | Right | Voltage Reference Selector (Left VCC, Right 2.048V) |
Software Support
We provide a library for the ADC 9 Click Board™ on our LibStock page, as well as a demo application (example), developed using MikroElektronika compilers. The demo can run on all the main MikroElektronika development boards.
Library Description
The library covers necessary functions that enables the usage of the ADC 9 Click Board™. User can read and write data of variable lenght and read and calculate ADC values.
Key Functions
uint8_t adc9_write_fast_cmd ( uint8_t dev_adr, uint8_t cmd );
- Function is used to execute fast command.uint8_t adc9_read_def_adc ( uint8_t dev_adr, int32_t *rd_data );
- Function is used to read ADC value when the default fata format is applied.float adc9_volt_calc ( int32_t adc_val, uint16_t v_ref, uint8_t gain );
- Function is used to calculate voltage based on ADC values.
Example Description
The application is composed of three sections :
- System Initialization - Initializes SPI module, LOG structure, sets CS and PWM pins as output and INT pin as input.
- Application Initialization - Initalizes SPI driver, resets and starts the device, and makes an initial log.
- Application Task - (code snippet) This is an example that shows the capabilities of the ADC 9 Click Board™ by calculating voltage level based on ADC from channels 0(positive) and 1(negative), and logs the result.
void application_task ( ) { mikrobus_logWrite( "Setup... ", _LOG_LINE ); adc9_meas_init( ); mikrobus_logWrite( "Done! ", _LOG_LINE ); while ( adc9_irq_pin_state( ) ) { } adc9_read_def_adc ( ADC9_DEVICE_ADR, &adc_value ); LongToStr( adc_value, log_txt ); mikrobus_logWrite( "ADC Value : ", _LOG_TEXT ); Ltrim( log_txt ); mikrobus_logWrite( log_txt, _LOG_LINE ); m_volts = adc9_volt_calc ( adc_value, v_ref, 1 ); FloatToStr( m_volts, log_txt ); mikrobus_logWrite( "Voltage in milivolts : ", _LOG_TEXT ); Ltrim( log_txt ); mikrobus_logWrite( log_txt, _LOG_TEXT ); mikrobus_logWrite( "mV", _LOG_LINE ); mikrobus_logWrite( "------------------------", _LOG_LINE ); Delay_ms( 1000 ); }
void adc9_meas_init ( );
Function is used to easily apply desired settings.
The full application code, and ready to use projects can be found on our LibStock page.
Other mikroE Libraries used in the example:
- SPI
- UART
- Conversions
Additional Notes and Information
Depending on the development board you are using, you may need a 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.
MIKROSDK
The ADC 9 Click Board™ is supported with mikroSDK - MikroElektronika Software Development Kit. To ensure proper operation of mikroSDK compliant Click board™ demo applications, mikroSDK should be downloaded from the LibStock and installed for the compiler you are using.
Software Support
We provide a library for the ADC 9 Click Board™ on our LibStock page, as well as a demo application (example), developed using MikroElektronika compilers. The demo can run on all the main MikroElektronika development boards.
Library Description
The library covers necessary functions that enables the usage of the ADC 9 Click Board™. User can read and write data of variable lenght and read and calculate ADC values.
Key Functions
uint8_t adc9_write_fast_cmd ( uint8_t dev_adr, uint8_t cmd );
- Function is used to execute fast command.uint8_t adc9_read_def_adc ( uint8_t dev_adr, int32_t *rd_data );
- Function is used to read ADC value when the default fata format is applied.float adc9_volt_calc ( int32_t adc_val, uint16_t v_ref, uint8_t gain );
- Function is used to calculate voltage based on ADC values.
Example Description
The application is composed of three sections :
- System Initialization - Initializes SPI module, LOG structure, sets CS and PWM pins as output and INT pin as input.
- Application Initialization - Initalizes SPI driver, resets and starts the device, and makes an initial log.
- Application Task - (code snippet) This is an example that shows the capabilities of the ADC 9 Click Board™ by calculating voltage level based on ADC from channels 0(positive) and 1(negative), and logs the result.
void application_task ( ) { mikrobus_logWrite( "Setup... ", _LOG_LINE ); adc9_meas_init( ); mikrobus_logWrite( "Done! ", _LOG_LINE ); while ( adc9_irq_pin_state( ) ) { } adc9_read_def_adc ( ADC9_DEVICE_ADR, &adc_value ); LongToStr( adc_value, log_txt ); mikrobus_logWrite( "ADC Value : ", _LOG_TEXT ); Ltrim( log_txt ); mikrobus_logWrite( log_txt, _LOG_LINE ); m_volts = adc9_volt_calc ( adc_value, v_ref, 1 ); FloatToStr( m_volts, log_txt ); mikrobus_logWrite( "Voltage in milivolts : ", _LOG_TEXT ); Ltrim( log_txt ); mikrobus_logWrite( log_txt, _LOG_TEXT ); mikrobus_logWrite( "mV", _LOG_LINE ); mikrobus_logWrite( "------------------------", _LOG_LINE ); Delay_ms( 1000 ); }
void adc9_meas_init ( );
Function is used to easily apply desired settings.
The full application code, and ready to use projects can be found on our LibStock page.
Other mikroE Libraries used in the example:
- SPI
- UART
- Conversions
Additional Notes and Information
Depending on the development board you are using, you may need a 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.
MIKROSDK
The ADC 9 Click Board™ is supported with mikroSDK - MikroElektronika Software Development Kit. To ensure proper operation of mikroSDK compliant Click board™ demo applications, mikroSDK should be downloaded from the LibStock and installed for the compiler you are using.
Carte à clic ADC 9
Frequently Asked Questions
Have a Question?
Be the first to ask a question about this.