Hello,
I have a question closely related to my last two questions:
e2e.ti.com/.../1404676
e2e.ti.com/.../1406834
I try to transfer two uint8_t buffers from one CC3200 to another (both are Rev 4.1) via SPI and DMA.
The normal SPI transfer works fine, but is too slow - thus I want to improve it with DMA. I read the past threads on SPI and DMA:
e2e.ti.com/.../353790
e2e.ti.com/.../381940
and tried to follow the code given there as closely as possible.
My problem is, that I will receive an (possible) infinite number of SPI_INT_DMATX interrupts. The output on the slave side looks like this:
Enabled SPI Interface in Slave Mode!
Starting while...
Count: 1
SPI_INT_DMATX
Count: 2
SPI_INT_DMATX
Count: 3
SPI_INT_DMATX
...
(without the printf's it will also loop forever).
For reference here is my code:
slave.c (similar to the main.c given in the thread mentioned above):
http://pastebin.com/imbPFGuC
master.c (no DMA, this one works fine with non-DMA SPI code):
http://pastebin.com/aJ0fsjz2
common.h:
http://pastebin.com/mKUmcWvU
common.c:
http://pastebin.com/tYdbcynk
pinmux.{c|h} are just like in the SDK examples.
On the boards the following jumpers are set:
J2,J3,J4,J6,J7,J8,J9,J10,J11,J12,J13
The pins are connected with short 10cm wires and the transfer works fine when a DMA-less slave.c is used.
Does anyone maybe have any idea where the problem might be?
Thank you for your time,
Severin