flexio_i2s_edma_transfer#
Overview#
The flexio_i2s_EDMA example shows how to use flexio_i2s driver with EDMA:
In this example, flexio acts as I2S module to record data from codec line and playbacks the recorded data at the same time using EDMA.
Supported Boards#
EVKB-IMXRT1050
Hardware requirements
Mini/micro USB cable
EVKB-IMXRT1050 board
Headphone(OMTP standard)
Personal Computer
Board settings
J12, headphone connected
remove R98,R99,R100,R101 and connect FLEXIO pins to the pad close to U13 as follows:
Pin Name Board Location Pin Name Board Location
RX_DATA SW5-1 RX_DATA U13-16
TX_DATA SW5-2 TX_DATA U13-14
SYNC SW5-3 SYNC U13-13
BCLK SW5-4 BCLK U13-12
Prepare the Demo
Connect a USB cable between the host PC and the OpenSDA USB port on the target board.
Open a serial terminal with the following settings:
115200 baud rate
8 data bits
No parity
One stop bit
No flow control
Download the program to the target board.
Either press the reset button on your board or launch the debugger in your IDE to begin running the example.
Running the demo
Note: This demo uses both headphone mic and board main mic(P1) as input source. The headphone mic provides left channel data, and main mic (P1) provides right channel data. If users found there is noise while do record operation, most probably it is the headphone standard issue (OMTP and CTIA standard difference). You should use the OMTP standard headphone. You can disable the left channel by using an headphone without microphone feature.
When the demo runs successfully, the log would be seen on the OpenSDA terminal like as below.
~~~~~~~~~~~~~~~~~~~~~
FLEXIO I2S EDMA example started!
FLEXIO I2S EDMA example finished!
~~~~~~~~~~~~~~~~~~~~~
MIMXRT1060-EVKB
Hardware requirements
Mini/micro USB cable
MIMXRT1060-EVKB board
Headphone(OMTP standard)
Personal Computer
Board settings
J34, headphone connected
connect FLEXIO pins to the pad close to J23 as follows:
Pin Name Board Location Pin Name Board Location
RX_DATA SW2-1 RX_DATA J23-11
TX_DATA SW2-2 TX_DATA J23-17
SYNC SW2-3 SYNC J23-16
BCLK SW2-4 BCLK J23-23
Prepare the Demo
Connect a USB cable between the host PC and the OpenSDA USB port on the target board.
Open a serial terminal with the following settings:
115200 baud rate
8 data bits
No parity
One stop bit
No flow control
Download the program to the target board.
Either press the reset button on your board or launch the debugger in your IDE to begin running the example.
Running the demo
Note: This demo uses both headphone mic and board main mic(P1) as input source. The headphone mic provides left channel data, and main mic (P1) provides right channel data. If users found there is noise while do record operation, most probably it is the headphone standard issue (OMTP and CTIA standard difference). You should use the OMTP standard headphone. You can disable the left channel by using an headphone without microphone feature.
When the demo runs successfully, the log would be seen on the OpenSDA terminal like as below.
~~~~~~~~~~~~~~~~~~~~~
FLEXIO I2S EDMA example started!
FLEXIO I2S EDMA example finished!
~~~~~~~~~~~~~~~~~~~~~
Note:
This example's right/left channel data is swapped due to the buffer maintain issue. This issue will be fixed in later release.
MIMXRT1170-EVKB
Hardware requirements
Mini/micro USB cable
MIMXRT1170-EVKB board
Headphone(OMTP standard)
Personal Computer
Board settings
J101, headphone connected
connect FLEXIO pins to the pad as follows:
Pin Name Board Location Pin Name Board Location
RX_DATA J26-2 RX_DATA J99-2
TX_DATA J26-4 TX_DATA J100-2
SYNC J26-6 SYNC J97-2
BCLK J26-8 BCLK J98-2
Prepare the Demo
Connect a USB cable between the host PC and the OpenSDA USB port on the target board.
Open a serial terminal with the following settings:
115200 baud rate
8 data bits
No parity
One stop bit
No flow control
Download the program to the target board.
Either press the reset button on your board or launch the debugger in your IDE to begin running the example.
Running the demo
Note: This demo uses both headphone mic and board main mic(P1) as input source. The headphone mic provides left channel data, and main mic (P1) provides right channel data. If users found there is noise while do record operation, most probably it is the headphone standard issue (OMTP and CTIA standard difference). You should use the OMTP standard headphone. You can disable the left channel by using an headphone without microphone feature.
When the demo runs successfully, the log would be seen on the OpenSDA terminal like as below.
~~~~~~~~~~~~~~~~~~~~~
FLEXIO I2S EDMA example started!
FLEXIO I2S EDMA example finished!
~~~~~~~~~~~~~~~~~~~~~
MIMXRT1060-EVKC
Hardware requirements
Mini/micro USB cable
MIMXRT1060-EVKC board
Headphone(OMTP standard)
Personal Computer
Board settings
J101, headphone connected
connect FLEXIO pins to the pad close to J23 as follows:
Pin Name Board Location Pin Name Board Location
RX_DATA SW2-1 RX_DATA J99-2
TX_DATA SW2-2 TX_DATA J100-2
SYNC SW2-3 SYNC J97-2
BCLK SW2-4 BCLK J98-2
Prepare the Demo
Connect a USB cable between the host PC and the OpenSDA USB port on the target board.
Open a serial terminal with the following settings:
115200 baud rate
8 data bits
No parity
One stop bit
No flow control
Download the program to the target board.
Either press the reset button on your board or launch the debugger in your IDE to begin running the example.
Running the demo
Note: This demo uses both headphone mic and board main mic(P1) as input source. The headphone mic provides left channel data, and main mic (P1) provides right channel data. If users found there is noise while do record operation, most probably it is the headphone standard issue (OMTP and CTIA standard difference). You should use the OMTP standard headphone. You can disable the left channel by using an headphone without microphone feature.
When the demo runs successfully, the log would be seen on the OpenSDA terminal like as below.
~~~~~~~~~~~~~~~~~~~~~
FLEXIO I2S EDMA example started!
FLEXIO I2S EDMA example finished!
~~~~~~~~~~~~~~~~~~~~~
Note:
This example's right/left channel data is swapped due to the buffer maintain issue. This issue will be fixed in later release.
FRDM-IMXRT1152
Hardware requirements
Type-C USB cable
FRDM-IMXRT1152 board
Headphone(OMTP standard)
Personal Computer
Board settings
Remove R183, R131, R151, R177, R124.
J30, headphone connected
connect FLEXIO pins to the pad as follows:
Pin Name Board Location Pin Name Board Location
RX_DATA J44-1 RX_DATA J28-1
TX_DATA J44-3 TX_DATA J27-1
SYNC J44-5 SYNC J20-1
BCLK J44-7 BCLK J21-1
Prepare the Demo
Connect a USB cable between the host PC and the OpenSDA USB port on the target board.
Open a serial terminal with the following settings:
115200 baud rate
8 data bits
No parity
One stop bit
No flow control
Download the program to the target board.
Either press the reset button on your board or launch the debugger in your IDE to begin running the example.
Running the demo
Note: This demo uses both headphone mic and board main mic(P1) as input source. The headphone mic provides left channel data, and main mic (P1) provides right channel data. If users found there is noise while do record operation, most probably it is the headphone standard issue (OMTP and CTIA standard difference). You should use the OMTP standard headphone. You can disable the left channel by using an headphone without microphone feature.
When the demo runs successfully, the log would be seen on the OpenSDA terminal like as below.
~~~~~~~~~~~~~~~~~~~~~
FLEXIO I2S EDMA example started!
FLEXIO I2S EDMA example finished!
~~~~~~~~~~~~~~~~~~~~~
EVK-MIMXRT1010
Hardware requirements
Mini/micro USB cable
EVK-MIMXRT1010 board
Headphone(OMTP standard)
Personal Computer
Board settings
J11, headphone connected
remove R85,R87,R88,R280 and connect FLEXIO pins to the pad close to U10 as follows:
Pin Name Board Location Pin Name Board Location
RX_DATA J54-2 RX_DATA U10-16
TX_DATA J26-8 TX_DATA U10-14
SYNC J26-6 SYNC U10-13
BCLK J26-4 BCLK U10-12
Prepare the Demo
Connect a USB cable between the host PC and the OpenSDA USB port on the target board.
Open a serial terminal with the following settings:
115200 baud rate
8 data bits
No parity
One stop bit
No flow control
Download the program to the target board.
Either press the reset button on your board or launch the debugger in your IDE to begin running the example.
Running the demo
Note: This demo uses both headphone mic and board main mic(P1) as input source. The headphone mic provides left channel data, and main mic (P1) provides right channel data. If users found there is noise while do record operation, most probably it is the headphone standard issue (OMTP and CTIA standard difference). You should use the OMTP standard headphone. You can disable the left channel by using an headphone without microphone feature.
When the demo runs successfully, the log would be seen on the OpenSDA terminal like as below.
~~~~~~~~~~~~~~~~~~~~~
FLEXIO I2S EDMA example started!
FLEXIO I2S EDMA example finished!
~~~~~~~~~~~~~~~~~~~~~
Note:
To debug in qspiflash, following steps are needed:
1. Select the flash target and compile.
2. Set the SW8: 1 off 2 off 3 on 4 off, then power on the board and connect USB cable to J41.
3. Start debugging in IDE.
- Keil: Click "Download (F8)" to program the image to qspiflash first then clicking "Start/Stop Debug Session (Ctrl+F5)" to start debugging.
EVK-MIMXRT1015
Hardware requirements
Mini/micro USB cable
EVK-MIMXRT1015 board
Headphone
Personal Computer
Board settings
J11, headphone connected
Prepare the Demo
Connect a USB cable between the host PC and the OpenSDA USB port on the target board.
Open a serial terminal with the following settings:
115200 baud rate
8 data bits
No parity
One stop bit
No flow control
Download the program to the target board.
Either press the reset button on your board or launch the debugger in your IDE to begin running the example.
Running the demo
Note: This demo uses both headphone mic and board main mic(P1) as input source. The headphone mic provides left channel data, and main mic (P1) provides right channel data. If users found there is noise while do record operation, most probably it is the headphone standard issue (OMTP and CTIA standard difference). You should use the OMTP standard headphone. You can disable the left channel by using an headphone without microphone feature.
When the demo runs successfully, the log would be seen on the OpenSDA terminal like as below.
~~~~~~~~~~~~~~~~~~~~~
FLEXIO I2S EDMA example started!
FLEXIO I2S EDMA example finished!
~~~~~~~~~~~~~~~~~~~~~
Known issue:
If pressing SW9 to rerun the demo frequently, it may cause booting from QSPI nor flash failed, since the SA1 RXD0 pin is muxed as boot configurations pin.
Workaround: To use SW3 instead of SW9.
Note:
To debug in qspiflash, following steps are needed:
1. Select the flash target and compile.
3. Set the SW8: 1 off 2 off 3 on 4 off, then power on the board and connect USB cable to J41.
4. Start debugging in IDE.
- Keil: Click "Download (F8)" to program the image to qspiflash first then clicking "Start/Stop Debug Session (Ctrl+F5)" to start debugging.
EVK-MIMXRT1020
Hardware requirements
Mini/micro USB cable
EVK-MIMXRT1020 board
Headphone
Personal Computer
Board settings
J11, headphone connected
remove R85,R87,R88,R89 and connect FLEXIO pins to the pad close to U10 as follows:
Pin Name Board Location Pin Name Board Location
RX_DATA J18-4 RX_DATA U10-16
TX_DATA J18-3 TX_DATA U10-14
SYNC J18-2 SYNC U10-13
BCLK J18-1 BCLK U10-12
Prepare the Demo
Connect a USB cable between the host PC and the OpenSDA USB port on the target board.
Open a serial terminal with the following settings:
115200 baud rate
8 data bits
No parity
One stop bit
No flow control
Download the program to the target board.
Either press the reset button on your board or launch the debugger in your IDE to begin running the example.
Running the demo
Note: This demo uses both headphone mic and board main mic(P1) as input source. The headphone mic provides left channel data, and main mic (P1) provides right channel data. If users found there is noise while do record operation, most probably it is the headphone standard issue (OMTP and CTIA standard difference). You should use the OMTP standard headphone. You can disable the left channel by using an headphone without microphone feature.
When the demo runs successfully, the log would be seen on the OpenSDA terminal like as below.
~~~~~~~~~~~~~~~~~~~~~
FLEXIO I2S EDMA example started!
FLEXIO I2S EDMA example finished!
~~~~~~~~~~~~~~~~~~~~~
Note:
To debug in qspiflash, following steps are needed:
1. Select the flash target and compile.
2. Set the SW8: 1 off 2 off 3 on 4 off, then power on the board and connect USB cable to J23.
3. Start debugging in IDE.
- Keil: Click "Download (F8)" to program the image to qspiflash first then clicking "Start/Stop Debug Session (Ctrl+F5)" to start debugging.
MIMXRT1024-EVK
Hardware requirements
Mini/micro USB cable
MIMXRT1024-EVK board
Headphone
Personal Computer
Board settings
J11, headphone connected
remove R85,R87,R88,R89 and connect FLEXIO pins to the pad close to U10 as follows:
Pin Name Board Location Pin Name Board Location
RX_DATA J18-8 RX_DATA U10-16
TX_DATA J18-6 TX_DATA U10-14
SYNC J18-4 SYNC U10-13
BCLK J18-2 BCLK U10-12
Prepare the Demo
Connect a USB cable between the host PC and the OpenSDA USB port on the target board.
Open a serial terminal with the following settings:
115200 baud rate
8 data bits
No parity
One stop bit
No flow control
Download the program to the target board.
Either press the reset button on your board or launch the debugger in your IDE to begin running the example.
Running the demo
Note: This demo uses both headphone mic and board main mic(P1) as input source. The headphone mic provides left channel data, and main mic (P1) provides right channel data. If users found there is noise while do record operation, most probably it is the headphone standard issue (OMTP and CTIA standard difference). You should use the OMTP standard headphone. You can disable the left channel by using an headphone without microphone feature.
When the demo runs successfully, the log would be seen on the OpenSDA terminal like as below.
~~~~~~~~~~~~~~~~~~~~~
FLEXIO I2S EDMA example started!
FLEXIO I2S EDMA example finished!
~~~~~~~~~~~~~~~~~~~~~
Note:
To debug in qspiflash, following steps are needed:
1. Select the flash target and compile.
2. Set the SW8: 1 off 2 off 3 on 4 off, then power on the board and connect USB cable to J23.
3. Start debugging in IDE.
- Keil: Click "Download (F8)" to program the image to qspiflash first then clicking "Start/Stop Debug Session (Ctrl+F5)" to start debugging.
MIMXRT1040-EVK
Hardware requirements
Mini/micro USB cable
MIMXRT1040-EVK board
Headphone(OMTP standard)
Personal Computer
Board settings
J34, headphone connected
Uninstall jumper J35,J36,J37,J41 and connect FLEXIO pins to the pad close to U25 as follows:
Pin Name Board Location Pin Name Board Location
RX_DATA SW2-1 RX_DATA U25-16
TX_DATA SW2-2 TX_DATA U25-14
SYNC SW2-3 SYNC U25-13
BCLK SW2-4 BCLK U25-12
Prepare the Demo
Connect a USB cable between the host PC and the OpenSDA USB port on the target board.
Open a serial terminal with the following settings:
115200 baud rate
8 data bits
No parity
One stop bit
No flow control
Download the program to the target board.
Either press the reset button on your board or launch the debugger in your IDE to begin running the example.
Running the demo
Note: This demo uses both headphone mic and board main mic(P1) as input source. The headphone mic provides left channel data, and main mic (P1) provides right channel data. If users found there is noise while do record operation, most probably it is the headphone standard issue (OMTP and CTIA standard difference). You should use the OMTP standard headphone. You can disable the left channel by using an headphone without microphone feature.
When the demo runs successfully, the log would be seen on the OpenSDA terminal like as below.
~~~~~~~~~~~~~~~~~~~~~
FLEXIO I2S EDMA example started!
FLEXIO I2S EDMA example finished!
~~~~~~~~~~~~~~~~~~~~~
Note:
This example's right/left channel data is swapped due to the buffer maintain issue. This issue will be fixed in later release.
EVK-MIMXRT1064
Hardware requirements
Mini/micro USB cable
EVK-MIMXRT1064 board
Headphone(OMTP standard)
Personal Computer
Board settings
J12, headphone connected
remove R98,R99,R100,R101 and connect FLEXIO pins to the pad close to U13 as follows:
Pin Name Board Location Pin Name Board Location
RX_DATA SW5-1 RX_DATA U13-16
TX_DATA SW5-2 TX_DATA U13-14
SYNC SW5-3 SYNC U13-13
BCLK SW5-4 BCLK U13-12
Prepare the Demo
Connect a USB cable between the host PC and the OpenSDA USB port on the target board.
Open a serial terminal with the following settings:
115200 baud rate
8 data bits
No parity
One stop bit
No flow control
Download the program to the target board.
Either press the reset button on your board or launch the debugger in your IDE to begin running the example.
Running the demo
Note: This demo uses both headphone mic and board main mic(P1) as input source. The headphone mic provides left channel data, and main mic (P1) provides right channel data. If users found there is noise while do record operation, most probably it is the headphone standard issue (OMTP and CTIA standard difference). You should use the OMTP standard headphone. You can disable the left channel by using an headphone without microphone feature.
When the demo runs successfully, the log would be seen on the OpenSDA terminal like as below.
~~~~~~~~~~~~~~~~~~~~~
FLEXIO I2S EDMA example started!
FLEXIO I2S EDMA example finished!
~~~~~~~~~~~~~~~~~~~~~
MIMXRT1160-EVK
Hardware requirements
Mini/micro USB cable
MIMXRT1160-EVK board
Headphone(OMTP standard)
Personal Computer
Board settings
J33, headphone connected
connect FLEXIO pins to the pad as follows:
Pin Name Board Location Pin Name Board Location
RX_DATA J26-2 RX_DATA J61-2
TX_DATA J26-4 TX_DATA J62-2
SYNC J26-6 SYNC J59-2
BCLK J26-8 BCLK J60-2
Prepare the Demo
Connect a USB cable between the host PC and the OpenSDA USB port on the target board.
Open a serial terminal with the following settings:
115200 baud rate
8 data bits
No parity
One stop bit
No flow control
Download the program to the target board.
Either press the reset button on your board or launch the debugger in your IDE to begin running the example.
Running the demo
Note: This demo uses both headphone mic and board main mic(P1) as input source. The headphone mic provides left channel data, and main mic (P1) provides right channel data. If users found there is noise while do record operation, most probably it is the headphone standard issue (OMTP and CTIA standard difference). You should use the OMTP standard headphone. You can disable the left channel by using an headphone without microphone feature.
When the demo runs successfully, the log would be seen on the OpenSDA terminal like as below.
~~~~~~~~~~~~~~~~~~~~~
FLEXIO I2S EDMA example started!
FLEXIO I2S EDMA example finished!
~~~~~~~~~~~~~~~~~~~~~
MIMXRT1180-EVK
Hardware requirements
Mini/micro USB cable
MIMXRT1180-EVK board
Headphone(OMTP standard)
Personal Computer
Board settings
J101, headphone connected
connect FLEXIO pins to the pad as follows:
Pin Name Board Location Pin Name Board Location
RX_DATA J41-2 RX_DATA J99-2
TX_DATA J41-4 TX_DATA J100-2
SYNC J41-6 SYNC J97-2
BCLK J41-8 BCLK J98-2
Prepare the Demo
Connect a USB cable between the host PC and the OpenSDA USB port on the target board.
Open a serial terminal with the following settings:
115200 baud rate
8 data bits
No parity
One stop bit
No flow control
Download the program to the target board.
Either press the reset button on your board or launch the debugger in your IDE to begin running the example.
Running the demo
Note: This demo uses both headphone mic and board main mic(P2) as input source. The headphone mic provides left channel data, and main mic (P2) provides right channel data. If users found there is noise while do record operation, most probably it is the headphone standard issue (OMTP and CTIA standard difference). You should use the OMTP standard headphone. You can disable the left channel by using an headphone without microphone feature.
When the demo runs successfully, the log would be seen on the OpenSDA terminal like as below.
~~~~~~~~~~~~~~~~~~~~~
FLEXIO I2S EDMA example started!
FLEXIO I2S EDMA example finished!
~~~~~~~~~~~~~~~~~~~~~