Digital I/O

cancel
Showing results for 
Search instead for 
Did you mean: 

Sixteen SPI devices simultaneously - possible to bit-bang this with only digital I/O?

Title basically says it all. I need to read 16 SPI devices simultaneously. The devices are AD7606B 8-channel AD converters. The way I see it, that's a total of 36 DIO, 32 inputs from the AD7606 array and 4 outputs to control them (CONVST, CS, SCLK, and RESET if you're following along in the data sheet). Is there any reason I can't do that with a USB-6509 or a PCIe-6509?

0 Kudos
Message 1 of 7
(202 Views)

@bendrinksalotofcoffee wrote:

Title basically says it all. I need to read 16 SPI devices simultaneously. The devices are AD7606B 8-channel AD converters. The way I see it, that's a total of 36 DIO, 32 inputs from the AD7606 array and 4 outputs to control them (CONVST, CS, SCLK, and RESET if you're following along in the data sheet). Is there any reason I can't do that with a USB-6509 or a PCIe-6509?


6509 supports only static DIO, which means the timing between level transitions is determined by software, which is something you don't want for timely capture of data from ADC.

Santhosh
Soliton Technologies

New to the forum? Please read community guidelines and how to ask smart questions

Only two ways to appreciate someone who spent their free time to reply/answer your question - give them Kudos or mark their reply as the answer/solution
0 Kudos
Message 2 of 7
(185 Views)

Since the datasheet specifies that VDRIVE must be between 1.71 V and 3.6 V, NI-DAQmx device is out of the equation unless you want to add an external logic shifter.

 

The next option is PCIe-653x, which provides digital sampling clock of up to 50MHz but only comes with 32 DIO channels. There is an example for SPI Generation and Acquisition using HSDIO Hardware

 

The best option is NI R Series. Either USB 7845R OEM (48 DIO) or PCIe-7820 (128 DIO) supports clock rate of up to 80MHz. However, you need LabVIEW FPGA Module to program them.

-------------------------------------------------------
Applications Engineer | TME Systems
https://tmesystems.net/
-------------------------------------------------------
https://github.com/ZhiYang-Ong
0 Kudos
Message 3 of 7
(147 Views)

What is your goal? why these ADCs must be simultaneously sampled?

 

As ZYong advised, a cost-effective approach would be the RIO card to synchronously read data from 16 ADCs

Santhosh
Soliton Technologies

New to the forum? Please read community guidelines and how to ask smart questions

Only two ways to appreciate someone who spent their free time to reply/answer your question - give them Kudos or mark their reply as the answer/solution
0 Kudos
Message 4 of 7
(137 Views)

My goal is to sample sixteen eight-channel ADCs simultaneously. I’m reading 128 sensors at the same time. 

0 Kudos
Message 5 of 7
(132 Views)

@bendrinksalotofcoffee wrote:

My goal is to sample sixteen eight-channel ADCs simultaneously. I’m reading 128 sensors at the same time. 


What kind of sensors? and why are you implementing your own ADC based DAQ instead of getting a COTS DAQ?

 

Downside of implementing your own DAQ system is with the inability to calibrate and have a known measurement accuracy.

Santhosh
Soliton Technologies

New to the forum? Please read community guidelines and how to ask smart questions

Only two ways to appreciate someone who spent their free time to reply/answer your question - give them Kudos or mark their reply as the answer/solution
0 Kudos
Message 6 of 7
(118 Views)

On top of what santo_13 asks, what's your sample rate requirement?

-------------------------------------------------------
Applications Engineer | TME Systems
https://tmesystems.net/
-------------------------------------------------------
https://github.com/ZhiYang-Ong
0 Kudos
Message 7 of 7
(110 Views)