LTC2302 - Low Noise, 500ksps, 1-/2-Channel, 12-Bit ADC
Features
- 12-Bit Resolution
- 500ksps Sampling Rate
- Low Noise: SINAD = 72.8dB
- Guaranteed No Missing Codes
- Single 5V Supply
- Auto-Shutdown Scales Supply Current with Sample Rate
- Low Power: 14mW at 500ksps
70μW at 1ksps
35μW Sleep Mode - 1-Channel (LTC2302) and 2-Channel (LTC2306) Versions
- Unipolar or Bipolar Input Ranges (Software Selectable)
- Internal Conversion Clock
- SPI/MICROWIRE Compatible Serial Interface
- Separate Output Supply OVDD (2.7V to 5.25V)
- Software Compatible with the LTC2308
- 10-Pin (3mm x 3mm) DFN Package
AEC-Q100 data available for specific packages
Typical Application
Description
The LTC2302/LTC2306 are low noise, 500ksps, 1-/2-channel, 12-bit ADCs with an SPI/MICROWIRE compatible serial interface. These ADCs include a fully differential sample-and-hold circuit to reduce common mode noise. The internal conversion clock allows the external serial output data clock (SCK) to operate at any frequency up to 40MHz.The LTC2302/LTC2306 operate from a single 5V supply and draw just 2.8mA at a sample rate of 500ksps. The auto-shutdown feature reduces the supply current to 14μA at a sample rate of 1ksps.
The LTC2302/LTC2306 are packaged in a tiny 10-pin 3mm x 3mm DFN. The low power consumption and small size make the LTC2302/LTC2306 ideal for battery-operated and portable applications, while the 4-wire SPI compatible serial interface makes these ADCs a good match for isolated or remote data acquisition systems.
Packaging
CAD Symbols and Footprints: The downloadable Zip file below contains the schematic symbol and PCB footprints.
For complete and up to date package information and drawings, please refer to our packaging page
| Part Number | Package | Code | Temp | Package Drawing |
RoHS |
|---|---|---|---|---|---|
| LTC2302CDD#PBF | 3x3 DFN-10 | DD | C | 05-08-1699 | Yes |
| LTC2302CDD#TRPBF | 3x3 DFN-10 | DD | C | 05-08-1699 | Yes |
| LTC2302IDD#PBF | 3x3 DFN-10 | DD | I | 05-08-1699 | Yes |
| LTC2302IDD#TRPBF | 3x3 DFN-10 | DD | I | 05-08-1699 | Yes |
Order Info
- Part numbers ending in PBF are lead free. Solder plated terminal finish (SnPb) versions are non-standard and special terms and conditions and pricing applies if available. Please contact LTC marketing for information.
- Part numbers containing TR or TRM are shipped in tape and reel or 500 unit mini tape and reel, respectively
- Please refer to our general ordering information or the product datasheet for more details
Package Variations and Pricing
| Part Number | Package | Temp | Price (1-99) |
Price (1k)* |
RoHS | |
|---|---|---|---|---|---|---|
| LTC2302CDD#PBF | 3x3 DFN-10 | C | $3.00 | $2.10 | Yes | |
| LTC2302CDD#TRPBF | 3x3 DFN-10 | C | $2.16 | Yes | ||
| LTC2302IDD#PBF | 3x3 DFN-10 | I | $3.60 | $2.52 | Yes | |
| LTC2302IDD#TRPBF | 3x3 DFN-10 | I | $2.58 | Yes | ||
| Buy Now • Request Samples | ||||||
Demo Boards
Linear Technology offers many demo boards free of charge to qualified customers. Contact your local sales office or distributor to inquire about a demo board. Certain demo boards are also available for sale via credit card on this website. Demo boards are for evaluation purposes only. It remains the customer’s responsibility to verify proper and reliable operation in the actual end application.| Part Number | Description | Price | Documentation |
|---|---|---|---|
| DC1339A | LTC2302:12-Bit 1-ch Differential 500ksps SAR ADC with SPI I/F (req. DC590 for DC apps, DC890 for AC apps) | $50.00 | |
| Buy Now | |||
Companion Boards
| Part Number | Description | Price | Documentation |
|---|---|---|---|
| DC2026C | Linduino One Isolated USB Demo Board: An Arduino- and QuikEval-Compatible Code Development Platform | $75.00 | |
| DC590B | Isolated USB Serial Controller for Linear Technology QuikEval-Compatible Demo Boards | $50.00 | |
| DC890B | USB Data Acquisition Controller, for PScope Evaluation Kits (up to 250Mbps, CMOS/LVDS) | $300.00 | |
| Buy Now | |||
Designed for Automotive and Transportation Applications
AEC-Q100 data is available for these specific part numbers. Please contact your local sales representative for more information regarding reliability reports or to inquire about parts that are not included. For more information, view our Automotive and Transportation page
| Part Number | Package | Temp | Price (1-99) |
Price (1k)* |
RoHS | |
|---|---|---|---|---|---|---|
| LTC2302IDD#PBF | 3x3 DFN-10 | I | $3.60 | $2.52 | Yes | |
| LTC2302IDD#TRPBF | 3x3 DFN-10 | I | $2.58 | Yes | ||
| Buy Now • Request Samples | ||||||
Applications
- High Speed Data Acquisition
- Industrial Process Control
- Motor Control
- Accelerometer Measurements
- Battery-Operated Instruments
- Isolated and/or Remote Data Acquisition
People Who Viewed This Product Also Viewed
- LT1790 - Micropower SOT-23 Low Dropout Reference Family
- LTC6655 - 0.25ppm Noise, Low Drift Precision References
- LTM2883 - SPI/Digital or I2C μModule Isolator with Adjustable ±12.5V and 5V Regulated Power
- LTC6362 - Precision, Low Power Rail-to-Rail Input/Output Differential Op Amp/SAR ADC Driver
- LT1761 - 100mA, Low Noise, LDO Micropower Regulators in TSOT-23
- LTC1860 - µPower, 12-Bit, 250ksps 1- and 2-Channel ADCs in MSOP
- LT3757 - Boost, Flyback, SEPIC and Inverting Controller
- LT3080 - Adjustable 1.1A Single Resistor Low Dropout Regulator
- LTC2312-12 - 12-Bit, 500ksps Serial Sampling ADC in TSOT
- LT3042 - 20V, 200mA, Ultralow Noise, Ultrahigh PSRR RF Linear Regulator
Product Notifications
Please login to your MyLinear account for notifications of datasheet updates, new document releases and LTspice model announcements for your favorite products. If you do not have a MyLinear account you may Sign Up Now.
Forgot your password? Click here.
Need help? Email mylinear@linear.com with questions and comments.
Design Tools
Linduino
Linduino is an Arduino compatible platform for developing and distributing firmware libraries and code for SPI and I²C-compatible integrated circuits. The Linduino One board interfaces to more than 300 QuikEval demonstration cards, supporting a variety of product types including analog-to-digital converters (ADCs), digital-to-analog converters (DACs), power monitors, and more. Firmware libraries for individual devices are written in C and designed to be portable to a wide variety of processors and microcontrollers. Each library has a demonstration program that can be uploaded to the Linduino One platform to allow the circuit and software to be quickly and easily verified.
Code
Linduino is Linear Technology's Arduino compatible system for developing and distributing firmware libraries and example code for Linear Technology’s integrated circuits. The code below can be downloaded or copied and pasted into your project. Please visit the Linduino Home Page for demo board, manual and setup information.
This part is Code Supported: There is example code available for this part. The code below may rely on other drivers available in the full library.
Download LTC2302 - DC1339A Linduino.INO File
/*!
Linear Technology DC1186A Demonstration Board.
LTC2302: 12-Bit, 1-Channel 500ksps SAR ADC with SPI Interface.
@verbatim
NOTES
Setup:
Set the terminal baud rate to 115200 and select the newline terminator. No
external power supply is required and it has an on-board reference voltage
of 4.096V. The analog input is given at IN+ and IN-.
There are options to chose between unipolar and bipolar modes.
USER INPUT DATA FORMAT:
decimal : 1024
hex : 0x400
octal : 02000 (leading 0 "zero")
binary : B10000000000
float : 1024.0
@endverbatim
http://www.linear.com/product/LTC2302
http://www.linear.com/product/LTC2302#demoboards
REVISION HISTORY
$Revision: 3237 $
$Date: 2015-03-05 17:45:18 -0800 (Thu, 05 Mar 2015) $
Copyright (c) 2013, Linear Technology Corp.(LTC)
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
1. Redistributions of source code must retain the above copyright notice, this
list of conditions and the following disclaimer.
2. 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.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
(INCLUDING, BUT NOT LIMITED TO, 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.
The views and conclusions contained in the software and documentation are those
of the authors and should not be interpreted as representing official policies,
either expressed or implied, of Linear Technology Corp.
The Linear Technology Linduino is not affiliated with the official Arduino team.
However, the Linduino is only possible because of the Arduino team's commitment
to the open-source community. Please, visit http://www.arduino.cc and
http://store.arduino.cc , and consider a purchase that will help fund their
ongoing work.
*/
/*! @file
@ingroup LTC2302
*/
// Headerfiles
#include <Arduino.h>
#include <stdint.h>
#include "Linduino.h"
#include "LT_SPI.h"
#include "UserInterface.h"
#include "LT_I2C.h"
#include "QuikEval_EEPROM.h"
#include <SPI.h>
#include "LTC2302.h"
// Global variables
static uint16_t uni_bipolar = LTC2302_UNIPOLAR; //!< Default set for unipolar mode
static float LTC2302_vref = 4.096;
//! Initialize Linduino
void setup()
{
quikeval_I2C_init(); // Configure the EEPROM I2C port for 100kHz
quikeval_SPI_init(); // Configure the spi port for 4MHz SCK
quikeval_SPI_connect(); // Connect SPI to main data port
Serial.begin(115200); // Initialize the serial port to the PC
print_title();
print_prompt();
}
//! Repeats Linduino loop
void loop()
{
uint16_t user_command;
if (Serial.available()) // Check for user input
{
user_command = read_int(); // Read the user command
if (user_command != 'm')
Serial.println(user_command); // Prints the user command to com port
Serial.flush();
switch (user_command)
{
case 1:
menu_1_read_input();
break;
case 2:
menu_2_select_uni_bipolar();
break;
default:
Serial.println(F("Invalid Option"));
break;
}
Serial.println();
Serial.println(F("*************************\n"));
print_prompt();
}
}
//! Read ADC code and display the measured voltage
void menu_1_read_input()
{
uint16_t adc_command;
uint16_t adc_code;
float voltage;
adc_command = uni_bipolar;
LTC2302_read(QUIKEVAL_CS, adc_command, &adc_code);
adc_code = (adc_code >> 4) & 0x0FFF;
voltage = LTC2302_code_to_voltage(adc_code, LTC2302_vref, uni_bipolar);
Serial.print("\nMeasured Voltage = ");
Serial.println(voltage);
}
//! Select unipolar (0-VREF) or bipolar (+/- 0.5 x VREF) mode
void menu_2_select_uni_bipolar()
{
uint8_t user_command;
Serial.println(F("\n 0 = Bipolar"));
Serial.println(F(" 1 = Unipolar"));
Serial.print(F(" Enter an option: "));
user_command = read_int(); // Read user input for uni_bipolar
Serial.println(user_command);
switch (user_command)
{
case 0:
Serial.println(F("\n Bipolar mode selected"));
uni_bipolar = LTC2302_BIPOLAR;
break;
case 1:
Serial.println(F("\n Unipolar mode selected"));
uni_bipolar = LTC2302_UNIPOLAR;
break;
default:
Serial.println("\n Invalid Option");
return;
break;
}
}
//! Prints the title block when program first starts.
void print_title()
{
Serial.println();
Serial.println(F("*****************************************************************"));
Serial.println(F("* DC1339A Demonstration Program *"));
Serial.println(F("* *"));
Serial.println(F("* This program demonstrates how to send data and receive data *"));
Serial.println(F("* from the LTC2302 12-bit ADC. *"));
Serial.println(F("* *"));
Serial.println(F("* Set the baud rate to 115200 and select the newline terminator.*"));
Serial.println(F("* *"));
Serial.println(F("*****************************************************************"));
}
//! Prints main menu.
void print_prompt()
{
Serial.println(F(" OPTIONS\n"));
Serial.println(F("1-Read ADC Input "));
Serial.println(F("2-Select Unipolar / Bipolar measurement (default is Unipolar)"));
Serial.println();
Serial.print(F("Enter a command: "));
}
Download LTC2302 Linduino Header File
/*!
LTC2302: 12-Bit, 1-Channel 500ksps SAR ADC with SPI Interface.
@verbatim
The LTC2302 is a single-channel 12-bit A/D converter with with serial I/O.
The part can be configured to operate on unipolar or bipolar modes. The
automatic sleep mode benefits power sensitive applications.
SPI DATA FORMAT (MSB First):
Byte #1 Byte #2
Data In : X OS X X UNI X X X X X X X X X X X
Data Out : D15 D14 D13 D12 D11 D10 D9 D8 D7 D6 D5 D4 D3 D2 D1 D0
OS : ODD/Sign Bit
UNI : Unipolar/Bipolar Bit
Dx : Data Bits
X : Don't care
@endverbatim
http://www.linear.com/product/LTC2302
http://www.linear.com/product/LTC2302#demoboards
REVISION HISTORY
$Revision: 3237 $
$Date: 2015-03-05 17:45:18 -0800 (Thu, 05 Mar 2015) $
Copyright (c) 2013, Linear Technology Corp.(LTC)
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
1. Redistributions of source code must retain the above copyright notice, this
list of conditions and the following disclaimer.
2. 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.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
(INCLUDING, BUT NOT LIMITED TO, 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.
The views and conclusions contained in the software and documentation are those
of the authors and should not be interpreted as representing official policies,
either expressed or implied, of Linear Technology Corp.
The Linear Technology Linduino is not affiliated with the official Arduino team.
However, the Linduino is only possible because of the Arduino team's commitment
to the open-source community. Please, visit http://www.arduino.cc and
http://store.arduino.cc , and consider a purchase that will help fund their
ongoing work.
*/
/*! @file
@ingroup LTC2302
Header for LTC2302: 12-Bit, 1-Channel 500ksps SAR ADC with SPI Interface.
*/
#ifndef LTC2302_H
#define LTC2302_H
//! Define the SPI CS pin
#ifndef LTC2302_CS
#define LTC2302_CS QUIKEVAL_CS
#endif
//! @name LTC2302 Uni/Bipolar Config bits
//! @{
// Unipolar Mode Command
#define LTC2302_UNIPOLAR 0xBFFF
// Bipolar Mode Command
#define LTC2302_BIPOLAR 0x0000
//!@}
//! Reads the ADC and returns 16-bit data
//! @return void
void LTC2302_read(uint8_t cs, //!< Chip Select Pin
uint16_t adc_command, //!< Channel address, config bits ORed together
uint16_t *adc_code //!< Returns code read from ADC (from previous conversion)
);
//! Calculates the LTC2302 input voltage given the data, range, and unipolar/bipolar status.
//! @return Floating point voltage
float LTC2302_code_to_voltage(uint16_t adc_code, //!< Raw ADc code
float vref, //!< Reference voltage
uint8_t uni_bipolar //!< Choice of unipolar/bipolar
);
#endif // LTC2302_H
/*!
LTC2302: 12-Bit, 1-Channel 500ksps SAR ADC with SPI Interface.
@verbatim
The LTC2302 is a single-channel 12-bit A/D converter with with serial I/O.
The part can be configured to operate on unipolar or bipolar modes. The
automatic sleep mode benefits power sensitive applications.
SPI DATA FORMAT (MSB First):
Byte #1 Byte #2
Data In : X OS X X UNI X X X X X X X X X X X
Data Out : D15 D14 D13 D12 D11 D10 D9 D8 D7 D6 D5 D4 D3 D2 D1 D0
OS : ODD/Sign Bit
UNI : Unipolar/Bipolar Bit
Dx : Data Bits
X : Don't care
@endverbatim
http://www.linear.com/product/LTC2302
http://www.linear.com/product/LTC2302#demoboards
REVISION HISTORY
$Revision: 3237 $
$Date: 2015-03-05 17:45:18 -0800 (Thu, 05 Mar 2015) $
Copyright (c) 2013, Linear Technology Corp.(LTC)
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
1. Redistributions of source code must retain the above copyright notice, this
list of conditions and the following disclaimer.
2. 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.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
(INCLUDING, BUT NOT LIMITED TO, 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.
The views and conclusions contained in the software and documentation are those
of the authors and should not be interpreted as representing official policies,
either expressed or implied, of Linear Technology Corp.
The Linear Technology Linduino is not affiliated with the official Arduino team.
However, the Linduino is only possible because of the Arduino team's commitment
to the open-source community. Please, visit http://www.arduino.cc and
http://store.arduino.cc , and consider a purchase that will help fund their
ongoing work.
*/
//! @defgroup LTC2302 LTC2302: 12-Bit, 1-Channel 500ksps SAR ADC with SPI Interface.
/*! @file
@ingroup LTC2302
Library for LTC2302: 12-Bit, 1-Channel 500ksps SAR ADC with SPI Interface.
*/
#include "LT_SPI.h"
#include <SPI.h>
#include "LTC2302.h"
// Reads the ADC and returns 16-bit data
void LTC2302_read(uint8_t cs, uint16_t adc_command, uint16_t *adc_code)
{
spi_transfer_word(cs, (uint16_t)(adc_command), adc_code);
spi_transfer_word(cs, (uint16_t)(adc_command), adc_code); // Throws out last reading and starts a new connection
}
// Calculates the LTC2302 input voltage given the data, range, and unipolar/bipolar status.
float LTC2302_code_to_voltage(uint16_t adc_code, float vref, uint8_t uni_bipolar)
{
float voltage;
float sign = 1;
if (uni_bipolar == LTC2302_UNIPOLAR)
{
voltage = (float)adc_code;
voltage = vref * voltage / (4095); //! This calculates the actual voltage at the input (in volts)
}
else
{
vref = vref/2;
if ((adc_code & 0x8000) == 0x8000) //adc code is < 0
{
adc_code = (adc_code ^ 0xFFFF)+1; //! Convert ADC code from two's complement to binary
sign = -1;
}
voltage = sign*(float)adc_code;
voltage = vref * voltage / 2047; //! This calculates the actual voltage at the input (in volts)
}
return(voltage);
}
Technical Support
- For immediate technical assistance, contact your local sales office or distributor or call 1-800-4-LINEAR (US customers only) or 408-432-1900.
- For less urgent requests, please complete our Technical Support Request Form. Please allow 2-3 business days for reply.
