We are deciding to try this board for simplicity, we tried to use the ADS7884 separately but we have not been successful. From the description of the board, we believe it filters out the noise of the input signal to the A/D. We need to make sure the A/D does at least 2.5MSPS. Do we need to use only one function generator to feed the clock to the board and then the board takes care of clocking the CS and SCLK pins correctly? I would really appreciate if you would also comment on the other advantages of using this board. Thank you.
The User's Guide for the ADS7884 is intended to help answer some of these questions. You can find it at: http://www.ti.com/lit/ug/slau166b/slau166b.pdf. I would specifically look at the schematic at the back of the document to help you get an idea if this evaluation module will accomplish what you are wanting to do.
Regarding your questions:
Christopher Hall | Δ-Σ Data Converter ApplicationsTI.com | Selection Guide | Technical Documents | Tools & Software | Design Notes | E2E Site Map
Thanks for your quick response. Here is some of the information we highlighted from the datasheet:
"The serial interface for each ADC is controlled by two signals: chip select and the serial shift clock"
"The EVM provides users the option to power the ADC from either the analog supply voltage applied at TP4 or from an onboard 2.5-V reference chip"
"The analog input circuit is optimized for a 100-kHz input signal; therefore, users may need to adjust the resistor and capacitor values to accommodate higher frequencies and different test systems"
"The analog, power, and digital connectors can be made to plug into a standard 0.1-inch breadboard or ribbon cables to interface directly to FPGAs or processors."
The processor we have been working with is the ATMEGA328P from the arduino uno board, unfortunately, its built-in A/D (the arduino takes care of the clocking) only samples at about 62ksps, that is why we decided to use an external A/D (ads7884) that samples at least 2.5MSPS to sample a 1MHz input signal. We are trying to figure out how to program the atmega328p through the arduino's own IDE so that two pins on the arduino serve as clock inputs to the CS' and SCLK pins of the ads7884, although we are not sure if the arduino is capable of doing this.
Could you suggest a microprocessor or FPGA that we could try instead? and also, can you please give us more insight on "the newer EVMs interface with ADCPro, a Window's-based software program to immediately show you the data the part" that TI offers?
It looks like your board has an SPI peripheral. I came across this document which may help you with SPI Setup: www.atmel.com/Images/doc2585.pdf
I looked into other ADCs that you could use with ADCPro, however, there are only a few ADCs in the Precision Data Converter category that have sampling rates of 2.5MSPS or greater and all of them used the 5-6k interface card with DSK kit, so they will not run with ADCPro.
I would use your current processor since you already have it and are probably most familiar with it.
Sorry for my late reply, I read about interfacing the ADS7884 and the ATMEGA328 on the Arduino via SPI but, as we understand, the arduino's speed seems to be very slow to read 2.5MSPS, so we decided to use a 8-bit shift register to latch the ADS7884 outputs to make the arduino read them at its slower speed, "It takes about 100 microseconds (0.0001 s) to read an analog input, so the maximum reading rate is about 10,000 times a second", which means the arduino's reading rate it's 200 times slower than the ADS7884 output. We think using shift registers such as the 74HC595 to latch the readings momentarily so that the arduino is able to read all the samples.
Is there a TI shift register that you might recommend or an alternative component that you think could be useful to reach our goal? Any hints would be appreciated. Thanks!
I don't understand how you plan on implementing a shift register; you should not need one. The ADS7884 is an SPI slave device which requires a fast SPI master clock to output data. To get 2.5MSPS throughput from the ADS7884 you will need to apply a clock with a frequency of at least 35MHz. The ADS7884 will accept clock frequencies as high as 40MHz (VDD = 3V) or 48MHz (VDD = 5V). If you use a slower clock then you will not be able to get the 2.5MSPS data throughput of the ADS7884 that you want.
What is the fastest SPI clock you can generate with the ATMEGA328 Arduino microcontroller? If it is limited to 10 MHz then you may only get about 500kSPS throughput.
We came across this article on the Arduino SPI Control Register (SPCR), that can be found here http://arduino.cc/en/Tutorial/SPIEEPROM
It says that "SPR1 and SPR0 - Sets the SPI speed, 00 is fastest (4MHz) 11 is slowest (250KHz)", so 4MHz being much more lower than 40MHz, we concluded that SPI will not work between the ADS7884 and the Arduino to effectively collect all the samples (are we correct?) This is why we think we cannot use SPI and need to just read the samples directly from the Arduino analog pin.
Yeah, you will not be able to get the throughput and sampling rate you want with this part combination.
What about looking into an ADC that uses a parallel interface, such as the ADS7881? Parallel interface ADC's typically have internal clocks, so you would not need to generate it with the microcontroller. The draw-back of a parallel interface is that you will need to use a lot more pins on your microcontroller to read in the data. I don't know how many pins are available to you but if you have enough this may be a possible solution.
Our breakout board, (we call the evaluation modules), for the ADS8411 was made obsolete. I would recommend going with the ADS7881 because it has a faster sampling rate that will meet your 2.5MSPS requirement, it has an internal clock, and an evaluation module (EVM) is available for this part.
Check out the ADS7881 device page at: http://www.ti.com/product/ads7881
and the ADS7881EVM page at: http://www.ti.com/tool/ads7881evm
The ADS7881 sounds good. I've looked at the MSP430 Launchpad, which sounds amazing by the way, but it is not intended for fast clock frequencies. Then, we looked at the TMS320F28xxx family and at the TMS320F28026(38TSSOP) but neither had EVM options like the MSP430 launchpad. Can you suggest one please? Only one with EVM would work for us since it's already soldered and we can use their regular size pins on the EVM (it would be very difficult for us to solder such a tiny microprocessor). Thanks.
I would check out "Interfacing the ADS7881 to TMS320C6713 DSP" at: http://www.ti.com/lit/an/slaa257/slaa257.pdf
The ADS7881EVM has example software for the TMS320C6713 digital signal processor: Software Link
The EVM can be used with the following boards:
Please read "Interfacing the ADS7881 to TMS320C6713 DSP" before you decide to go down this road. Capturing data at this speed is not a simple task. I don't know where else to point you to. If you provide me with more information about your application and what you are trying to sample I may be able to give better advice.
We'll go ahead and check out these boards and documentation.
In regards to our application, we need to be able construct a portable unit to sample a sine wave up to 1MHz, store the samples in digital storage of our choice (we had chosen a SD card that works effortlessly with the arduino...) and later reproduce the original signal from the sample data, either on an oscilloscope or on a computer. Since we are basically at square 1 again, we don't know yet the kind of storage we'll be able to interface with the new microcontroller.
All content and materials on this site are provided "as is". TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with regard to these materials, including but not limited to all implied warranties and conditions of merchantability, fitness for a particular purpose, title and non-infringement of any third party intellectual property right. TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with respect to these materials. No license, either express or implied, by estoppel or otherwise, is granted by TI. Use of the information on this site may require a license from a third party, or a license from TI.
TI is a global semiconductor design and manufacturing company. Innovate with 100,000+ analog ICs andembedded processors, along with software, tools and the industry’s largest sales/support staff.