1 Reply Latest reply on May 12, 2020 5:34 AM by YashwantK_46

    Single endpoint for cyfxusbi2sdmamode




      How I can reconfigure cyfxusbi2sdmamode.c to receive both left and right channels into endpoint 1 from the host?

      A wave file in the host has LEFT_CHANNEL | RIGHT CHANNEL | LEFT_CHANNEL | RIGHT CHANNEL  | LEFT_CHANNEL | RIGHT CHANNEL ... layout, which is called interleaved data. How to send this to a single endpoint and DMA copies to the bus?


      Where I can find more information about how this DMA-> I2S works?


      - For the I2S bus, with 16 bits, 2 channels and 48000 sample rate I need to send 192000 bytes per second.

      How the DMA handles data? It has a buffer of which size? What's the speed of data consumption?




        • 1. Re: Single endpoint for cyfxusbi2sdmamode

          Hello Lucas,


          Please refer to section 8.8 Integrated Interchip Sound Interface of the FX3_TRM.pdf document available in the SDK path: C:\Program Files (x86)\Cypress\EZ-USB FX3 SDK\1.3\doc\firmware\FX3_TRM.pdf.


          The above section mentions about the working of the I2S block of FX3 and all the respective conditions and interface definitions.


          Also, on Page no. 194 of the above-mentioned document, mentions the following about MONO channel(highlighted in Yellow):

          This means that both the endpoints need to be present and must have data for the hardware I2C transceiver to start working(highlighted in Blue).