This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

ADS1298 with EFM32 Wonder Gecko Development Kit

Other Parts Discussed in Thread: ADS1298R

Hi!

I am trying to use an ads1298R with a EFM32 Wonder Gecko Development Kit, some pals used the same ADS for another application with the MSP430 launchpad apparently with no troubles. The thing is that the ADS is not sending back the correct configuration I sent with the microcontroller.

At the very first begining I thought the problem was with the clock ( I am working with a 14MHz clock) but after reading the datasheet I realized it can work at up to 20 MHz so that wasn't the problem, although I did have to put some delays on so that the ADS could process the info I sent so I did. I have checked all pins over and over again and it appers to be working correctly, I actually though my config numbers at my code were incorrectly but they are not, I followed the Power On Reset step by step and still doesn't work. When I plugin the ads board, I get the DRDY pulse as it supposed to be, after I cong it with the 1000 samples I get nothing but the pin at high level.

What else can I do to ensure correct read of the data I send?

Regards,

Susana

  • Hi Susana,

    To which clock are you referring? The master clock must be run at 2.048 MHz but the SPI Serial Clock can run up to 20 MHz. If you think your clocking is correct, send us a oscilloscope or logic analyzer screen capture of the SPI lines (SCLK, DOUT, DIN, CS) during your RREG command and we can further debug the issue.

    Thanks,
    Brian Pisani
  •  Hi Brian,

    Sorry I was talking about the SPI clock. Here is my screen shot the yellow signal is my clock, the blue is MISO, the purple is the /CS and the green is the MOSI.

    Thanks,

    Susana

  • Hey Susana,

    Your timing looks good so it's probably not an issue with that. I have a couple more questions. Do you issue the SDATAC command before attempting to read and write registers? That command will prevent a register read or write from being interrupted when the device has new conversion data ready. Once you've finished with your configuration routine, issue the RDATAC command to re-enable continuous data reading mode. Do you ever try issuing the START command or pulling the START pin high after the DRDY stops pulsing? As a final check with the WREG command, are you sending one of the following combinations when you try to write to the CONFIG1 register to obtain a sampling rate of 1 kSPS:

    0x41 00 04 (WREG CONFIG1 to Low Power Mode and internal clock output disabled with a datarate of 1 kSPS)
    0x41 00 85 (WREG CONFIG1 to High Power Mode and internal clock output disabled with a datarate of 1 kSPS)
    0x41 00 24 (WREG CONFIG1 to Low Power Mode and internal clock output enabled with a datarate of 1 kSPS)
    0x41 00 A5 (WREG CONFIG1 to High Power Mode and internal clock output enabled and a datarate of 1 kSPS)

    The clock output may throw things off if you're trying to use an external modulator clock. Are you using the internal clock? Let me know if one of these suggestions changes the behavior.

    Regards,
    Brian Pisani
  • Hi Brian!

    I had already tried all those things, and that wasn't the problem. I actually used the same code with the small configuration variations with the MSP4302553 and it worked. Apparently the problem was that for some strange reason I wasn't getting into the interrupt service request when I needed to, I guess my microcontroller is broken because as soon as I changed it it was working as it was supposed to be.

    Thanks a lot for the help.