John Boxall over at Tronixstuff has a series of Arduino tutorials. This chapter fifty-three of a series will show you how to use the TI ADS1110 16-bit ADC with Arduino:
Moving on from the last chapter where we explained an 8-bit ADC, in this instalment we have the Texas Instruments ADS1110 – an incredibly tiny but useful 16-bit analogue-to-digital converter IC. It can operate between 2.7 and 5.5 V so it’s also fine for Arduino Due and other lower-voltage development boards. This is a quick guide to get you going with the ADS1110 ready for further applications.
Tutorial – Arduino and the TI ADS1110 16-bit ADC - [Link]
Active analog filters can be found in almost every electronic circuit. Audio systems use filters for frequency-band limiting and equalization. Designers of communication systems use filters for tuning specific frequencies and eliminating others. To attenuate high-frequency signals, every data acquisition system has either an anti-aliasing (low-pass) filter before the analog-to-digital converter (ADC) or an anti-imaging (low-pass) filter after the digital-to-analog converter (DAC). This analog filtering can also remove higher-frequency noise superimposed on the signal before it reaches the ADC or after it leaves the DAC. If an input signal to an ADC is beyond half of the converter’s sampling frequency, the magnitude of that signal is converted reliably; but the frequency is modified as it aliases back into the digital output.
Designing active analog filters in minutes - [Link]
Analog-to-digital-conversion (ADC) is required in Embedded Systems to deal with various analog world parameters such as current, pressure, motion, temperature, etc. An ADC is an electronic system or a module that has analog input, reference voltage input and digital outputs. The ADC convert the analog input signal to a digital output value that represents the size of the analog input comparing to the reference voltage. It basically samples the input analog voltage and produces an output digital code for each sample taken. This application note from Atmel describes the fundamental concepts of ADC and the associated parameters that determine the performance and accuracy of the ADC’s output.
Understanding ADC parameters for accurate analog-to-digital conversions - [Link]
This project describes an Arduino-based FM transmission using the KT0803K Digital Stereo FM Transmitter Radio-Station-on-a-Chip. The KT0803K device is designed to process high fidelity stereo audio signal and transmit modulated FM signal over a short range. It features an on-board 20-bit audio ADC and supports standard I2C interface for frequency setting and power control. [via]
DIY FM transmission station using Arduino - [Link]
“miceuz” have set up this little experiment to gain a better understanding how does a SAR analog to digital converter work. Go to http://wemakethings.net/2013/02/25/how-does-adc-work/… for more info and Arduino code.
How does an ADC work? - [Link]
The MAX31855 performs cold-junction compensation and digitizes the signal from a K-, J-, N-, T-, S-, R-, or E-type thermocouple. The data is output in a signed 14-bit, SPI-compatible, read-only format. This converter resolves temperatures to 0.25°C, allows readings as high as +1800°C and as low as -270°C, and exhibits thermocouple accuracy of ±2°C for temperatures ranging from -200°C to +700°C for K-type thermocouples. For full range accuracies and other thermocouple types, see the Thermal Characteristics specifications in the full data sheet.
MAX31855 – Cold-Junction Compensated Thermocouple-to-Digital Converter - [Link]
This project explains how to use an FPGA or CPLD to take input from one device (an ADC) and then output appropriate signals to a motor controller IC, that provides precise control over the DC motor’s speed and direction.
Since we now know how to create PWM output with a CPLD or FPGA and we also know how to understand dynamic analog input using an A-to-D converter, we can actually combine these two functions together and create an FPGA DC motor controller!
Even though I have written many, other, motor control articles, none of them used a CPLD or FPGA as the main controller. This article will focus on explaining how to use a CPLD to take input from one device and then output appropriate signals to a motor controller IC, that will give us precise control over the DC motor’s speed and direction.
FPGA DC Motor Control - [Link]
I’d really like to know how to “”convert”” an analog value to a digital one. In a word : I have an Arduino, a photoresistor, with a pull-down resistor. I want to know if the light is above or below a given threshold.
I know how to read the value with analogRead(photoResPin), and compare it to my threshold (in code), but I’d like to do that without software (only using digitalRead), handling that threshold in hardware.
Can you help me ?
I guess I can use a transistor, but don’t know how to “”precisely”” set the threshold (by changing the pull-down resistor value ?).
How can I convert an analog value to a digital one? - [Link]
Toumas decided to code his own capacitive touch sensors based on a closed source Atmel example where a single ADC pin is used for capacitive sensing. He reverse engineered it, and documented his results: [via]
I’ve been thinking of a project that needs a little bit more elegant user interface than your usual push buttons. Partly inspired by a video blog on Dave Jones’ EEVblog, I decided to look into capacitive touch buttons. The big issue unfortunately for me was that you usually need a separate chip for capacitive touch sensing. With some tricks, you can however use a normal microcontroller to do the job. Even using only a single pin and resistor.
Capacitive touch sensing with a single ADC pin - [Link]
The MAX11209 can do 18 bits at sample rates up to 120 Hz (true) or 480 Hz (4x oversampled). It has both external analog and internal digital scaling. There is +Vref and -Vref, as well as +Vin and -Vin, so you can set your own full-range scale and offset via analog voltages (many ADCs have only +Vref, so you can’t set your own analog offset above ground). Maximum Vin = 3.6 V. The data sheet claim that CS/ can be tied low is apparently false (must be brought high after each SPI transaction).
The 11209 is part of a family, some other variants do 24 bits (although there I think some bits will be just noise). With the 11209 I can so far confirm that the input noise is less than 2 uV at a 15 Hz rate. Datasheet claims 0.57 uV RMS at 10 Hz.
Using the MAX11209 18bit ADC - [Link]