lpcware

GPDMA to I2S peripheral questions

Discussion created by lpcware Employee on Jun 15, 2016
Content originally posted in LPCWare by jdowd on Thu Nov 20 14:21:59 MST 2014
I have a memory buffer with audio data in it that I want to move to the Transmit side of the I2S peripheral. I have this done using a more conventional method (straight copy using ring buffers, works great!!) but I want to introduce the GPDMA feature.

For the flow control, am I correct in assuming that the I2S side can perform the flow control since it has a FIFO and does report it's current data level?

Also, for interrupts, I would think that there is just a GPDMA interrupt to service (TC & Error) since the peripheral (via it's flow control) would handle the constant bursts required to keep the I2S FIFO fed until the memory buffer was emtpy. Correct?

The example in periph_i2s does have a GPDMA example except that it's a straight Peripheral - Peripheral transfer. Not from memory although it has been a great source of information.

Thanks in advance for any advice you can render.

Cheers!!

Outcomes