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.

C5510 McBSP SPI slave

Other Parts Discussed in Thread: SPRC133

hi every one

I'm trying to transfer data from a microcontroller  to DSP (C5510) via SPI, the MCU as a master and the DSP as a slave. i did the configuration for the McBSP exactly as mentioned in the McBSP datasheet. the result configuration is as follows:

0x1000

0x0000

0x0040

0x0000

0x0040

0x0000

0x0001

0x6000

0x0000

0x0000

0x000C

Connections are done as required:

DX0 -> MISO

DR0 -> MOSI

FSX0 -> SS

CLKX0 -> SCK 

the McBSP0 should receive the data, then data will be transferred to a memory buffer via DMA, the sync event for DMA is REVT0.

MCU is transmitting numbers from 0 to 10; but no significant data is shown when viewing the memory locations.

any ideas guys!?

  • Your entry is not clear not what the data represents. However, I will try to guest and to answer it. Assuming C5510's pin function names, DX0, DR0, FSX0 & CLKX0 are C5510's McBSP pins.; and as you stated, McBSP0 should receive the data, then, this connection is in opposite direction.
    Also, there is an McBSP example in SPRC133 CSL: http://www.ti.com/tool/SPRC133
    Regards.
  • I'm sorry my question was not so clear;

    first of all i'm working with TMS320VC5510 DSK

    The problem is this: i am trying to configure the McBSP0 to work as an SPI slave (in clock stop mode). previously i configured the McBSP0 as SPI master and it worked perfectly; now that i'm configuring it as a SPI slave, the result is not right. i have an MCU that is sending a stream of data and acting as SPI master; providing clock and frame sync, the data should be received on DSP's McBSP0 and moved to a memory buffer. when i view the memory buffer all i see is series of "EA EF EA EF...". i reviewed the configuration several times and it is exactly as the documentation of the McBSP stated (the values of the control registers are shown in my original post". the connections are done as stated in the datasheet as well.

    Regarding what you suggested about flipping the connections, as you might know, in "clock stop mode" (providing compatibility with SPI protocol), the  CLKX0 pin is configured as an input source of timing(SCK in SPI), and FSX0 is source also input source of sync (SS in SPI), and CLKR0 and FSR0 are drived internally by CLKX0 and FSX0. My connections on DX0 and DR0 pins is made based on the fact that DR0 is receiving the data coming out of the MCU (master), so it is connected to "Master out slave in" pin (MOSI), and DX0 is transmitting data out from McBSP(slave) to MCU (master), so it is connected to "Master in Slave out" pin (MISO). so i think there should be no error in  my connections. (note: CLKX0, FSX0, DX0, and DR0 are the serial pins of C5510 McBSP0).

    additional problem that i am facing is that i found no example on how to use the McBSP as a SLAVE. all i found are some examples on how to configure it as master, the thing that I've done a couple of weeks earlier.

    Thank you for your concern sir, and i'm looking foreword to read your comments.