Quantcast
Channel: EngineerZone: Message List
Viewing all articles
Browse latest Browse all 22625

Re: BF537 SPI DMA RX in Master Mode - how to stop in time?

$
0
0

Hi Dmitry,

 

I've been facing the same trouble when trying to transfer chunks of data using SPI Master working in DMA Rx mode.

 

Actually, I need to perform data read (pooling) on 3 SPI slave devices reading 12 words from each one at a time. Starting reading from the first and going to the 3th device, going back to the first again and go on, like the time division multiplexed modes (picture attached).

 

When trying to read 12 words from the first device (SPI slave) I noticed that after 12 words have been transfered, the Bfin512 keeps the SPI clock till I stop the SPI dataflow. So, the SPI slave device shifts out more data that are lost.

 

That workaround using SPORT TX as RX clock reference seems to be feasible, actually, seems to be the unique way to use DMA RX transfers in "SPI like" peripherals as SPORT for Bfin512.

 

As I'm in time to change the schematic, so far the use of SPORT is the workaround.

 

By the way, what you mean with something like duplex SPI port when SPORT Tx clocks and Rx clocks are connected?

I understood that SPORT Tx clock is connected to the SPORT Rx clock and to the SPI Slave device as well. Am I right?  So, performing a dummy TX over SPORT, generates readings from SPI Slave through SPORT Rx. But, how about the DMA settings?

 

Any other advice?

 

Comunicação SPI.jpg


Viewing all articles
Browse latest Browse all 22625

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>