MCUXpresso SDK Documentation

flexio3_i2s_interrupt_transfer

flexio3_i2s_interrupt_transfer#

Overview#

The flexio_i2s_interrupt example shows how to use flexio_i2s driver with interrupt:

In this example, flexio acts as I2S module to record data from codec line and playbacks the recorded data at the same time using interrupt.

Supported Boards#

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    J16-1              RX_DATA     J23-11
TX_DATA    J16-2              TX_DATA     J23-17
SYNC       J33-4              SYNC        J23-16
BCLK       J33-3              BCLK        J23-23
Prepare the Demo
  1. Connect a USB cable between the host PC and the OpenSDA USB port on the target board.

  2. Open a serial terminal with the following settings:

    • 115200 baud rate

    • 8 data bits

    • No parity

    • One stop bit

    • No flow control

  3. Download the program to the target board.

  4. 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 interrupt example started!

FLEXIO_I2S interrupt 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.
MIMXRT1060-EVKC
Hardware requirements
  • Mini/micro USB cable

  • MIMXRT1060-EVKC board

  • Headphone(OMTP standard)

  • Personal Computer

Board settings
  • J101, headphone connected

  • connect FLEXIO pins as follows:

Pin Name   Board Location     Pin Name    Board Location
RX_DATA    J16-1              RX_DATA     J99-2
TX_DATA    J16-2              TX_DATA     J100-2
SYNC       J33-4              SYNC        J97-2
BCLK       J33-3              BCLK        J98-2
Prepare the Demo
  1. Connect a USB cable between the host PC and the OpenSDA USB port on the target board.

  2. Open a serial terminal with the following settings:

    • 115200 baud rate

    • 8 data bits

    • No parity

    • One stop bit

    • No flow control

  3. Download the program to the target board.

  4. 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 interrupt example started!

FLEXIO_I2S interrupt 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.
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 U13 as follows:

Pin Name   Board Location     Pin Name    Board Location
RX_DATA    J33-3              RX_DATA     U25-16   J41
TX_DATA    J33-4              TX_DATA     U25-14   J37
SYNC       J33-5              SYNC        U25-13   J36
BCLK       J33-6              BCLK        U25-12   J35
Prepare the Demo
  1. Connect a USB cable between the host PC and the OpenSDA USB port on the target board.

  2. Open a serial terminal with the following settings:

    • 115200 baud rate

    • 8 data bits

    • No parity

    • One stop bit

    • No flow control

  3. Download the program to the target board.

  4. 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 interrupt example started!

FLEXIO_I2S interrupt 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    J22-1              RX_DATA     U13-16
TX_DATA    J22-2              TX_DATA     U13-14
SYNC       J23-4              SYNC        U13-13
BCLK       J23-3              BCLK        U13-12
Prepare the Demo
  1. Connect a USB cable between the host PC and the OpenSDA USB port on the target board.

  2. Open a serial terminal with the following settings:

    • 115200 baud rate

    • 8 data bits

    • No parity

    • One stop bit

    • No flow control

  3. Download the program to the target board.

  4. 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 interrupt example started!

FLEXIO_I2S interrupt example finished!
~~~~~~~~~~~~~~~~~~~~~