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.

AM2434: CCS MCSPI Frequency Innacuracy

Part Number: AM2434
Other Parts Discussed in Thread: ADS131M06

I have been experimenting with the MCSPI library and came across a potential issue. When I input 12.5MHz in the AM243X+SDK's mcspi 32 bit transfer low latency example, my oscilloscope reads a 12.5MHz waveform. When I go into the syscfg mcspi settings and change the clock frequency to 10MHz my oscilloscope also reads 10MHz. When I input 8MHz it reads 7.25MHz, this is a problem because for the ADS131m06 it needs 8.192MHz, which when inputted yielded 7.49MHz. Is there a frequency range issue here or am I using it wrong?

  • HI Dylan,

    The input clock for MCSPI module is 50Mhz, so the 50Mhz/12.5Mhz and 50Mhz/10Mhz are 4 and 5 respectively. However 50Mhz/8Mhz = 6.25 and according to MCSPI_setClkConfig() in mcspi_v0.c, the divider will be set to 7, which is sets the actual bit clock to 50Mhz/7 = 7.14Mhz. If you want to set bit clock to 8.192Mhz, then divider 6 will give you 8.33Mhz which is closer. In order to do that, you will need to set the "Clock Frequency" to 9Mhz.

    Best regards,

    Ming

  • Ok, I will try that. I am trying to put together a library for using the ADS131m06 which has a few modes which require a 8.192MHz, 4.096MHz, or 2.048MHz clock. I am not sure how tolerant it is but 8.33MHz is pretty close so maybe it will work out.