EVAL-ADICUP3029 Quick Start

All the products described on this page include ESD (electrostatic discharge) sensitive devices. Electrostatic charges as high as 4000V readily accumulate on the human body or test equipment and can discharge without detection. Although the boards feature ESD protection circuitry, permanent damage may occur on devices subjected to high-energy electrostatic discharges. Therefore, proper ESD precautions are recommended to avoid performance degradation or loss of functionality. This includes removing static charge on external equipment, cables, or antennas before connecting to the device.

This guide describes how to use the EVAL-AD7124-8-PMDZ Pmod board with the EVAL-ADICUP3029 development platform using the ADuCM3029_demo_ad7124_8PMDZ demo project.

The demo provides a CLI-based interface to control the AD7124-8 ADC, showcasing the flexibility of the AD7124 in choosing inputs, filters, and different ranges for the available 16 channels.

General description

The initial configuration engages all inputs in a mix of differential and single-ended channels:

  • Channels 0–7: AIN0/AIN1, AIN2/AIN3, …, AIN14/AIN15 (differential)

  • Channels 8–15: AIN0/AGND, AIN1/AGND, …, AIN7/AGND (single-ended)

By default only channel 0 is active, but this can be adjusted using the CLI commands described below. All channels initially use configuration register 0 (sinc4 filter, widest PGA range, maximum sample rate).

Prerequisites

See Prerequisites for the full list.

Hardware:

Software:

Setting up the hardware

  1. Connect the EVAL-AD7124-8-PMDZ board to the Pmod connector on the EVAL-ADICUP3029.

    EVAL-AD7124-8-PMDZ and EVAL-ADICUP3029 before connection

    Figure 1 EVAL-AD7124-8-PMDZ and EVAL-ADICUP3029 before connection

  2. Connect a micro-USB cable to the P10 connector of the EVAL-ADICUP3029 and connect it to a computer. The final setup should look similar to the picture below.

    EVAL-AD7124-8-PMDZ connected to EVAL-ADICUP3029

    Figure 2 EVAL-AD7124-8-PMDZ connected to EVAL-ADICUP3029

Serial terminal setup

A serial terminal is used to interact with the demo firmware over USB. The default serial settings are:

  • Baud rate: 115200

  • Data bits: 8

  • Parity: None

  • Stop bits: 1

  • Flow control: None

Example setup using PuTTY

  1. Plug in the EVAL-ADICUP3029 using a micro-USB cable.

  2. Wait for the device driver to install on your PC.

  3. Open Device Manager and find the assigned COM port.

    Windows Device Manager showing COM port

    Figure 3 Windows Device Manager showing COM port

  4. Open PuTTY and configure the serial settings:

    PuTTY serial configuration

    Figure 4 PuTTY serial configuration

  5. Under the Terminal category, enable Implicit CR in every LF and Implicit LF in every CR. Enable local echo and line editing.

    PuTTY terminal options

    Figure 5 PuTTY terminal options

  6. Click Open to start the terminal session.

Available commands

Type help or h after the initial calibration sequence to display the list of available commands.

Table 1 Available Commands

Function

Command

Description

Example

General commands

Help

h

Display available commands.

Reset

rst

Reset the application.

rst dev - perform only device reset (datasheet defaults);

<opt> = ‘dev’ to perform only a device reset; do not include to perform an application reset.

rst - perform application reset (application defaults).

ADC commands

Register read

arr

Read an ADC register of a specific address.

arr 2a - Read register 0x2A

<addr> = Address of the register to be read in hexadecimal base.

Register write

awr

Write an ADC register of a specific address with a new value.

arw 9 8002 - Write 0x8002 to register 0x9.

<addr> = Address of the register to be written in hexadecimal base.

<val> = New value of the register.

Get data

ags

Get a number of samples per enabled channels. If the operation takes too long press ‘q’ to abort.

<no> = Number of samples (maximum 2048). If sample rate is smaller than 3000 setting the argument 0 or no argument means continuous streaming.

Enable channels

aces

Choose ADC channels to be activated.

aces 0xAAAA - activate every other channel. ‘0x’ is necessary for hexadecimal interpretation.

<mask> = 16-bit mask of the channels to be activated. Can be hexadecimal or binary.

A bit of 1 means activated the channel, a bit of 0 means deactivate the channel.

Get enabled channels

aceg

Get enable status of ADC channels. Returns a hexadecimal 16-bit mask where bits of 1 represent enabled channels, and bits of 0 represent disabled channels.

Set PGA

aps

Set PGA for a channel.

aps 0 opt3 - set ADC channel 0 to PGA 3, gain value of 8.

<chan> = ID of the channel to be changed.

<opt> = PGA option; values are: opt0, opt1, … opt7 corresponding to the datasheet.

Get PGA

apg

Display a channel’s PGA option; return values are: opt0, opt1, … opt7 corresponding to the datasheet.

apg 0 - read the PGA value of channel 0.

<chan> = ID of the channel to be read.

Set sample

aos

Set ADC sample rate. Filter option, power mode and reference clock must be taken into consideration.

aos 2000 - set sample rate to 2000 samples per second.

rate

<odr> = New sample rate value.

Get sample rate

aog

Read the current sample rate.

Set filter option

afs

Set ADC filter option.

afs fflt4 - set filter option to fast settling sinc4.

<opt> = filter option; can be: ‘sinc4’, ‘sinc3’, ‘fflt4’, ‘fflt3’ and ‘postf’.

<post> = post-filter option; can be: ‘opt0’, ‘opt1’, … ‘opt3’; add only when opt=postf.

Get filter option

afg

Read the current filter.

Terminal output sample showing AD7124-8 PMDZ demo

Figure 6 Terminal output sample

Obtaining the software

There are two ways to program the EVAL-ADICUP3029:

  1. Drag and drop the prebuilt .Hex file to the DAPLINK USB drive (easiest method for quick evaluation)

  2. Build from source using CrossCore Embedded Studio (allows customization)

Download

Prebuilt AD7124-8 Pmod Hex File:

Complete AD7124-8 Pmod Source Files:

How to use the tools

The official tool for use with the EVAL-ADICUP3029 is CrossCore Embedded Studio. For more information on downloading the tools and a quick start guide, see the Tools Overview page.

For importing existing projects, see How to import existing projects into your workspace.

For configuring debug sessions, see How to configure the debug session.

Project structure

The application contains the platform drivers with sources in platform_source and headers in platform_include. In the src root directory there is the AD7124 driver as found on GitHub, but with a custom initialization vector in the ad7124_regs module.

AD7124 PMDZ project file structure

Figure 7 AD7124 PMDZ project file structure