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.

ADS7816 with ARM Cortex M3 LM3S3748

Other Parts Discussed in Thread: LM3S3748, ADS7816

Hi,

I was curious to know if the SSI interfaces supported by both the ADS7816 ADC and the ARM LM3S3748 microprocessor are compatible with one another.  And, if so, what framing format does the ADS7816 implement: TI, Freescale or Microwire.  The timing diagram in the ADS7816 data sheet seemed to be most close to Freescale where data is clocked on the falling edge, but I wasn't sure.  Ultimately I am just looking for an ADC having an SSI interface compatible with the LM3S3748 that is offered in a DIP package.  So, if there is a better chip than the ADS7816, I would be interested to learn about it.

Thanks!

Court

  • I would agree the LM3S3748 SSI frame format using the Freescale SPI is the most appropriate mode when connecting to the ADS7816.  The LM3S3748 will be the SPI master, and provide the clock to the ADS7816.  Also, your sampling rate will be dictated by how often the SSI peripheral is accessed as the falling edge of the ADS7816 /CS (LM3S3748 SSIFss) is what initiates a conversion.

  • Hi Courtenay,

    As Brandon mentioned, the Freescale SPI interface would be appropriate for the ADS7816 with the LM3S37.  The top half of the Basic Timing Diagram in Figure 1 is where you want to focus.  Set the SCLK to dwell low (CPOL=0) with valid data on the rising SCLK (CPHA - 0).  Note that sampling takes place during the first two clocks.  There is a 'null bit' followed by the 12-bit conversion result.  Assuming you will be using 16-bit transfers, you would need to right shift your received data by one to have LSB alignment in memory.

  • Thanks gentlemen for your quick response.  I've now used Freescale with these parameters to obtain valid data from the ADC.  I'm currently configuring uDMA with SSI in order to grab 100 samples from the ADC at a time.  I'm samping a 5kHz sine wave with the ADC sampling at 100kHz.  For the most part, the data looks like a sine wave, though I've noticed that some samples are left at the max scale ADC count for some reason.  I will need to work that out.  

    Thanks again,

    Court