AnsweredAssumed Answered

Mixed DMA RX, polled TX SPI

Question asked by frackers on Sep 13, 2016
Latest reply on Sep 16, 2016 by barton.michael
I already know the HAL firmware doesn't support this but is this due to the bad programming of the HAL or inadequacies of the hardware?

I'm interfacing to an external NOR flash device but have run out of DMA channels to have both TX as well as RX running under DMA. Saving data is not time critical, reading (getting sound samples in particular) is, hence the requirement to use DMA on receive only. Note - this is NOT RXONLY mode, as TX is still required.

The HAL_SPI_Receive_DMA function assumes if not RXONLY then DMA both ways but if only one DMA channel is assigned it crashes with a hard fault trying to set the non-existent transmit callbacks (it doesn't check to see if it has one!!).

Has anyone used the old(er) std-periph-lib for SPI RX DMA but polled TX ?

Outcomes