I'm interfacing with an external ADC chip (mcp3002) over SPI and I'm getting about 2000 reads per second with a tight loop. The ADC chip's sampling rate ranges from 75 ksps to 200 ksps but I can't seem to get anywhere close to that just calling WriteRead in a loop. Are there any options out there for speeding this up?
Since the chip only does a read every time CS is brought low one thing I was thinking about trying is hooking up a PWM pin to the CS on the chip at a given frequency and then just give WriteRead large buffers to use to send/capture the data. I'm guessing this probably wouldn't be too reliable assuming the PWM freq isn't exactly in sync with the SPI calls.
Any help would be appreciated.