| Linduino 1.3.0 Linear Technology Arduino-Compatible Demonstration Board

Functions | Variables
DC1009AA.ino File Reference
Analog-to-Digital Converters (ADC) » LTC2492: 24-Bit, 4-Channel Delta Sigma ADCs with Easy Drive Input Current Cancellation

Linear Technology DC1009A-A Demonstration Board. More...

## Detailed Description

Linear Technology DC1009A-A Demonstration Board.

LTC2492: 24-Bit, 4-Channel Delta Sigma ADC with SPI interface

    NOTES
      Setup:
       Set the terminal baud rate to 115200 and select the newline terminator. Equipment
       required is a precision voltage source and a precision voltmeter. Ensure the COM
       and REF- pins are connected to ground. The REF+ pin should be connected to +5V.

      How to test Single-Ended mode:
       The voltage source should be connected to the ADC such that the negative lead is
       connected to the COM(common) pin. The positive lead may be connected to any
       channel input. Ensure voltage is within analog input voltage range -0.3 to 2.5V.

      How to test Differential Mode:
       The voltage source should be connected with positive and negative leads to paired
       channels. The voltage source negative output must also be connected to the COM
       pin in order to provide a ground-referenced voltage. Ensure voltage is within
       analog input voltage range -0.3V to +2.5V. Swapping input voltages results in a
       reversed polarity reading.

    USER INPUT DATA FORMAT:
     decimal : 1024
     hex     : 0x400
     octal   : 02000  (leading 0 "zero")
     binary  : B10000000000
     float   : 1024.0

http://www.linear.com/product/LTC2492

http://www.linear.com/product/LTC2492#demoboards

Copyright 2018(c) Analog Devices, Inc.

All rights reserved.

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

- Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
- Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
- Neither the name of Analog Devices, Inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
- The use of this software may or may not infringe the patent rights of one or more patent holders. This license does not release you from the requirement that you obtain separate licenses from these patent holders to use this software.
- Use of the software either in source or binary form, must be run on or directly connected to an Analog Devices Inc. component.

THIS SOFTWARE IS PROVIDED BY ANALOG DEVICES "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, NON-INFRINGEMENT, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL ANALOG DEVICES BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, INTELLECTUAL PROPERTY RIGHTS, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Definition in file DC1009AA.ino.

Go to the source code of this file.

## Functions
static void | print_title ()
| Prints the title block when program first starts. More...
static void | print_prompt ()
| Prints main menu. More...
static void | print_user_command (uint8_t menu)
| Display selected differential channels. More...
static uint8_t | menu_1_read_single_ended ()
| Read channels in single-ended mode. More...
static uint8_t | menu_2_read_differential ()
| Read channels in differential mode. More...
static void | menu_3_set_1X2X ()
| Set 1X or 2X mode. More...
static void | setup ()
| Initialize Linduino. More...
static void | loop ()
| Repeats Linduino loop. More...
static void | menu_4_select_rejection_freq ()
| Set 1X or 2X mode. More...

## Variables
static uint8_t | demo_board_connected
| Set to 1 if the board is connected. More...
static uint8_t | two_x_mode = LTC2492_SPEED_1X
| The LTC2492 2X Mode settings. More...
static uint8_t | rejection_mode = LTC2492_R50_R60
| The LTC2492 rejection mode settings. More...
static float | LTC2492_vref = 5.0
| The LTC2492 ideal reference voltage. More...
static uint16_t | eoc_timeout = 350
| timeout in ms More...
const uint8_t | BUILD_COMMAND_SINGLE_ENDED [4]
| Lookup table to build the command for single-ended mode. More...
const uint8_t | BUILD_COMMAND_DIFF [4]
| Lookup table to build the command for differential mode. More...
const uint8_t | BUILD_1X_2X_COMMAND [2] = {LTC2492_SPEED_1X, LTC2492_SPEED_2X}
| Lookup table to build 1X / 2X bits. More...
const uint8_t | BUILD_FREQ_REJ_COMMAND [3] = {LTC2492_R50, LTC2492_R60, LTC2492_R50_R60}
| Lookup table to build 1X / 2X bits. More...

## Function Documentation

## ◆ loop()

static void loop | ( | void |  | ) |
| static

Repeats Linduino loop.

Definition at line 145 of file DC1009AA.ino.

## ◆ menu_1_read_single_ended()

static uint8_t menu_1_read_single_ended | ( |  | ) |
| static

Read channels in single-ended mode.

Returns
  Returns 0=successful, 1=unsuccessful (exceeded timeout)

Definition at line 233 of file DC1009AA.ino.

## ◆ menu_2_read_differential()

static uint8_t menu_2_read_differential | ( |  | ) |
| static

Read channels in differential mode.

Returns
  Returns 0=successful, 1=unsuccessful (exceeded timeout)

Definition at line 322 of file DC1009AA.ino.

## ◆ menu_3_set_1X2X()

static void menu_3_set_1X2X | ( |  | ) |
| static

Set 1X or 2X mode.

Definition at line 376 of file DC1009AA.ino.

## ◆ menu_4_select_rejection_freq()

static void menu_4_select_rejection_freq | ( |  | ) |
| static

Set 1X or 2X mode.

Definition at line 402 of file DC1009AA.ino.

## ◆ print_prompt()

static void print_prompt | ( |  | ) |
| static

Prints main menu.

Definition at line 200 of file DC1009AA.ino.

## ◆ print_title()

static void print_title | ( | void |  | ) |
| static

Prints the title block when program first starts.

Definition at line 185 of file DC1009AA.ino.

## ◆ print_user_command()

static void print_user_command | ( | uint8_t | menu | ) |
| static

Display selected differential channels.

Displaying single-ended channels is straightforward; not so with differential because the inputs can take either polarity.

Definition at line 211 of file DC1009AA.ino.

## ◆ setup()

static void setup | ( | void |  | ) |
| static

Initialize Linduino.

Definition at line 121 of file DC1009AA.ino.

## Variable Documentation

## ◆ BUILD_1X_2X_COMMAND

const uint8_t BUILD_1X_2X_COMMAND[2] = {LTC2492_SPEED_1X, LTC2492_SPEED_2X}

Lookup table to build 1X / 2X bits.

Build the command for 1x or 2x mode

Definition at line 115 of file DC1009AA.ino.

## ◆ BUILD_COMMAND_DIFF

const uint8_t BUILD_COMMAND_DIFF[4]

Initial value:
= {LTC2492_P0_N1, LTC2492_P2_N3, LTC2492_P1_N0, LTC2492_P3_N2
}
LTC2492_P3_N2
#define LTC2492_P3_N2
Definition: LTC2492.h:150
LTC2492_P1_N0
#define LTC2492_P1_N0
Definition: LTC2492.h:147
LTC2492_P0_N1
#define LTC2492_P0_N1
Definition: LTC2492.h:146
LTC2492_P2_N3
#define LTC2492_P2_N3
Definition: LTC2492.h:149

Lookup table to build the command for differential mode.

Build the command for differential mode

Definition at line 111 of file DC1009AA.ino.

## ◆ BUILD_COMMAND_SINGLE_ENDED

const uint8_t BUILD_COMMAND_SINGLE_ENDED[4]

Initial value:
= {LTC2492_CH0, LTC2492_CH1, LTC2492_CH2, LTC2492_CH3
}
LTC2492_CH3
#define LTC2492_CH3
Definition: LTC2492.h:141
LTC2492_CH1
#define LTC2492_CH1
Definition: LTC2492.h:139
LTC2492_CH2
#define LTC2492_CH2
Definition: LTC2492.h:140
LTC2492_CH0
#define LTC2492_CH0
Definition: LTC2492.h:138

Lookup table to build the command for single-ended mode.

Builds the command for single-ended mode

Definition at line 107 of file DC1009AA.ino.

## ◆ BUILD_FREQ_REJ_COMMAND

const uint8_t BUILD_FREQ_REJ_COMMAND[3] = {LTC2492_R50, LTC2492_R60, LTC2492_R50_R60}

Lookup table to build 1X / 2X bits.

Build the command for 1x or 2x mode

Definition at line 118 of file DC1009AA.ino.

## ◆ demo_board_connected

uint8_t demo_board_connected
| static

Set to 1 if the board is connected.

Definition at line 99 of file DC1009AA.ino.

## ◆ eoc_timeout

uint16_t eoc_timeout = 350
| static

timeout in ms

Definition at line 103 of file DC1009AA.ino.

## ◆ LTC2492_vref

float LTC2492_vref = 5.0
| static

The LTC2492 ideal reference voltage.

Definition at line 102 of file DC1009AA.ino.

## ◆ rejection_mode

uint8_t rejection_mode = LTC2492_R50_R60
| static

The LTC2492 rejection mode settings.

Definition at line 101 of file DC1009AA.ino.

## ◆ two_x_mode

uint8_t two_x_mode = LTC2492_SPEED_1X
| static

The LTC2492 2X Mode settings.

Definition at line 100 of file DC1009AA.ino.