Hi,
I send a new post here about how to use PSRAM to do audio delay.
The PSRAM use SPI or QPI to read and write. It's a waste to wait all the time until read and write operation completed, especially when there are lots of datas.
So we need a mechanism that first set read or write command and address, and then the datas are automatically transferred by DMA.
We can do some other tasks while datas transferring. After the DMA callback occured, We can come back to deal with the datas.
Let's talk about it in two cases and assume we have 4 channels audio delay.
1. Write operation.
We need to send command, address and datas.
I think we can use listdescriptor DMA mode and set 4 lists chained one by one to do it, which is relatively easy to be achieved.
2. Read operation.
We need to send command, address and wait several cycles, then we can get datas.
I don't know how to use DMA in this case.
I find there is a memory mapped mode, which is good to read datas. However it's sad that we can't write datas in this mode.
It's there any other method to do the read operation?
Thanks for your help!