Is it possible to do this?
- Configure the McSPI to use 32 bit transfers, with a FIFO depth of 2 (for a total of 64 bits at a time)
- Configure the EDMA so that ACNT = ~1 Megabyte, BCNT = 8 bytes (corresponding to my 64 bits, above)
- Using a timer, trigger the McSPI to read the 64 bits and have a FIFO event notify the EDMA controller when there are 8 bytes ready to transfer
- Set the EDMA up to issue the ARM MPU an event only when I have gotten the full ~1 megabyte
If all of that is possible, can you also set up a timer to trigger the 8 byte McSPI transfer?
What I have is four, 16-bit A/D converters on an SPI bus. I want to have the thing more or less run automatically, and only issue an event to the main CPU about once a second. My initial strategy was to have the PRU do most of the work here, but I started looking at the amazing capabilities of the EDMA controller and now I'm wondering if all this can just happen through configuration.
Whenever I ask these questions of the support line, I get directed to this forum... yet I don't seem to get answers to questions about these topics. If there's somewhere else I should be asking, let me know that as well.
--Chris