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.

CC3200 SPI bus crash after disable the SPI DMA

Other Parts Discussed in Thread: CC3200

Hi, 

In my current project, I need to use the SPI bus to transfer data, and I need to switch the SPI bus operation method between two modes: 1. interrupt+FIFO mode and 2. DMA+FIFO+interrutp mode. 

If I use the mode 2 first, then I need to switch the mode 2 to mode 1 by disable the spi dma, the spi bus will crash, the LA snap shot  and my code are both attached. 

cc3200_spi_data_error.zip

Regards, 

Gaojun

  • Hi Gaojun,

    See the SPI implementation in the file cc3200-SDK\simplelink\cc_pal.c

    The SPI driver changes its behavior depending on whether or not DMA is enabled, but it only checks upon opening the interface : spi_Open(). You may want to try closing and opening the interface if you want to switch modes, or maybe edit the driver to do additional checks for the DMA for every write/read operation.

    -Aaron