Other Parts Discussed in Thread: ADS1298, ADS1294
Dear Technical staff,
I run into a weird problem that the acquired data from ADS1294 will get corrupted after running normally for 20-30sec. I did not encounter this problem while using the complete evaluation kit. However, when I tried to use a PIC24F microcontroller (MCU) to interface with the ADS1298 daughter board, such an event occurs. One mystical solution I find is to supply the DVDD with a Agilent power supply at 3.3V instead of using a 3.3V DC adapter.
At that time I was thinking maybe the problem arises from the poor wiring and/or grounding, I therefore go ahead designing a custom PCB. To my surprise, the custom board gives even worse results. I could not get rid of the corruption problem at all. I wonder if you have experience tackling this problem.
Attached is the schematic for the circuit. I later on figured out that the GPIO ports should be grounded if used as inputs. I therefore programmed them as outputs during the startup. I am pretty sure the MCU read/write the data correctly. I could configure the register without a problem. I also checked the DO of the ADC using oscilloscope. The SPI output indeed changes as corruption occurs.
The following are my debug history. All these measures failed to solve the problem. Please advise if any other method can be attempted to make the ADC work.
(1) I designed the board to have split ground plane across the ADC, but left the option to connect them together near the ADC. Both grounding methods are tried.
(2) Lower the SPI baud rate from 500kHz to 100kHz.
(3) Insert a 100 ohm series resistor on the SCLK line.
(4) Add an RC/RL filtering at the DVDD.
(5) Toggle CS line at each read cycle (250Hz SPS).
(6) Set DVDD at 3.3V and 2.5V.
(7) Configure the channels as normal electrodes, input short or test signals.
