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.

LP-MSPM0G3507: Sending SPI block of data to master

Part Number: LP-MSPM0G3507

Tool/software:

Hello.

I want to send say a 1k block of data to a master...the 3507 is a slave.

The master is SPI clocking at 16 MHz.

I can't see how I can do this as a "single" block....since the FIFO is just 8 bytes there will be a "gap" if I either reload the FIFO in software or even DMA.

Effectively I want to DMA to SPi FIFO but never overwrite...

Regards

Phil

  • Of course the timing is driven by the master, the slave can't initiate anything.  Just load the FIFO as soon as it shows that there is space, don't wait for the fifo to empty.

  • Hello...yes of course I can do this.

    But I do not want to keep constantly polling the FIFO...I was hoping DMA could handle this.

    I would like the DMA to do this but I don't think it I possible.

  • I don't know of a reason (a priori) why the DMA wouldn't work. I didn't find a specification of how many MCLKs a DMA transfer takes, but if MCLK is fast enough I imagine it could keep up. The DMA keeps the FIFO level up to TXIFLSEL.

    You would have to have everything set up ahead of time since you won't have time to do that once the master starts the transaction. This is also the case if you're hand-feeding the FIFO.