I search a small example for SPI Master and DMA transfer.
So that I can receive e.g. 15 bytes with DMA and get a transfer end interrupt/callback when it is finished.
Thanks in advanced !
You set software start.
R_DMAC1->DMTMD_b.DCTG = 0; // Transfer Request : Software
Please change to
R_DMAC1->DMTMD_b.DCTG = 1;
I want to use Software start. But when I make your changes , nothing is changed.In Software start mode , if I set of the SWREQ again in DMREQ register , transfer the SPI the next value.But it must send automaticly the 10 values ...If I use the blockmode the SPI send 2 values !?
Could you try ra-fsp-examples/example_projects/ek_ra4m1/spi/spi_ek_ra4m1_ep/e2studio at master · renesas/ra-fsp-examples (github.com)
You can change transfer from dtc to dma for the master spi and test the R_SPI_WriteRead() api. The master and slave spi are on same RA4M1. You should see the activation source for dma transfer are the spi tx and rx interrupts. You can send/receive upto 64 bytes in that example.