Quantcast
Channel: Forums - Recent Threads
Viewing all articles
Browse latest Browse all 262198

ADS 1298 Development for Arduino

$
0
0

Hi there,

I am a student working on a project to read EEG using the 1298.  I purchased the development kit and want to use the EVM without the MMBO.

There have been several excellent posts on this topic, but I still cannot read the deviceID to get things going.  I am using an Arduino UNO

controller board.  Here are the details of my setup:

Connections:

EVM separated from the MMBO component.

EVM and MMBO were tested together upon receipt, the components work.

EVM powered by at TP10 . Analog ground is on TP8.  3.3V verified across JP24 pins 2-3 which are jumpered.

The power is supplied by the Arduino power rail and puts out 3.3V/125mA across these pins.

J3.3 SCLK connected to Arduino pin 13 SRC

J3.7 CS complement connected to Arduino pin 10 (CS default)

J3.8 RESET connect to Arduino pin 9 (programmed).

J3.11 DIN connected to Arduino pin  11 (MOSI default)

J3.13 DOUT connected to Arduino pin 12 (MISO default)

J.3.15 DRDY connected to Arduino pin 2 (DRDY interupt - programmed)

Programming algorithm (Arduino UNO):

- initialize serial connection to PC, SPI library, begin SPI

- set the in and out pin directions

- set internal registers on the Arduino to create a 2MHz, CPOL = 0, CPhase = 1 (SPI MODE1)

- take CS HIGH, then take RESET LOW, delay 33ms, RESET HIGH  ( I know this should be more than enough at 2Mhz)

- take CS LOW, issue 00010001 SDATAC command, then CS HIGH

- take CS LOW, issue SPI 0010000 READREG first byte for DeviceID

- issue SPI 00000001 second byte indicating one Register to read

- issue SPI with dummy variable to receive DEVICE ID.

- Result:  receive back only 0, not the DeviceID

The problem is....I cannot see anything on the SPI traces using a logic analyzer.  Is there something I am missing regarding the setup of the EVM board with power/ground/other?  The other major post on this issue appeared to have the CLKSEL set to one, requiring a hard PWDN in the start sequence.  Does it need to be done this way?  I assumed that since the clock is coming from the controller board, the default CLKSEL value of 0 would suffice and the hard RESET would be enough to initialize the board. One more small question, many posts refer to an OPCODE for PWDN, but I cannot find one.  I assume this would require a pin.

Any help you could give would be greatly appreciated.

Nick


Viewing all articles
Browse latest Browse all 262198

Trending Articles