Hello, All
I am conducting a project with the purpose of reading four I2S bus data (I2S0, I2S1, I2S2, I2S3) synchronously. My hardware is TMS320C5535 eZdsp USB Kit, software is Code Composer Studio 4.2.4.
I tried to use DMA controllers to establish data transfer between I2S peripherals and DSP memory. Four DMA corresponds to four I2S bus (DMA0--I2S0, DMA1--I2S2, DMA2--I2S3, DMA3--I2S1). I have inclued DMA head file "csl_dma.c" from Chip Support Library C55XCSL in my program and set I2S0 receive event for DMA0 synchronization event, I2S2 receive event for DMA1 synchronizaiton event, I2S3 receive event for DMA2 synchronizaiton event, I2S1 receive event for DMA3 synchronizaiton event. When I debugged the program on my TMS320C5535 DSP evaluation kid, I found it did not work correctly. I checked the technical reference manual of TMS320C5535 and found DMA synchronization events just support I2S3 receive event in that chip. However, the Chip Support Library was based on C5505/5515. Then, I checked the manual of C5505 and found that chip support all the four I2S bus transmit/receive DMA synchronization events. I think this is the reason why my program did not work correctly.
It seems that the number and types of DMA synchronization events is significantly reduced in C5535 compared to C5505. And this difference was not mentioned in the application document "Migrating from TMS320C5505 to TMS320C5535". My quesiton is: if I still use C5535 and Chip support library C55XCSL, can I achieve DMA synchronized transfer between four I2S bus and memory?
Thanks!