Component: I2S Master/Slave ESP32 (Comms: Interface): Difference between revisions
Appearance
No edit summary |
m Text replacement - "style="background-color:#EAE1EA;"" to "class="mtx-class-propfolder"" |
||
| (20 intermediate revisions by 2 users not shown) | |||
| Line 14: | Line 14: | ||
==I2S Master/Slave ESP32 component== | ==I2S Master/Slave ESP32 component== | ||
Provides access to the onboard inter-IC sound (I2S) peripheras allowing for simple digital audio input and output. | Provides access to the onboard inter-IC sound (I2S) peripheras allowing for simple digital audio input and output. | ||
==Component Source Code== | |||
Please click here to download the component source project: [https://www.flowcode.co.uk/wiki/componentsource/FC_Comp_Source_I2S.fcfx FC_Comp_Source_I2S.fcfx] | |||
Please click here to view the component source code (Beta): [https://www.flowcode.co.uk/FlowchartView/?wfile=componentsource/FC_Comp_Source_I2S.fcfx FC_Comp_Source_I2S.fcfx] | |||
==Detailed description== | ==Detailed description== | ||
| Line 24: | Line 48: | ||
==Examples== | ==Examples== | ||
| Line 33: | Line 75: | ||
{| class="wikitable" | |||
==Macro reference== | |||
===CheckQueue=== | |||
{| class="mtx-class-macrotable wikitable" | |||
|- | |||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | |||
| width="90%" class="mtx-class-macrohead" | '''CheckQueue''' | |||
|- | |- | ||
| | | colspan="2" | Checks the I2S Event queue for a DMA Buffer full or empty event. For an output returns true when there is an empty DMA buffer available. For an input return true when there is a full DMA buffer available. | ||
|- | |- | ||
| colspan="2" | | |- | ||
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-bool-icon.png]] - BOOL | |||
| width="90%" style="border-top: 2px solid #000;" | ''Return'' | |||
|} | |||
===Initialise=== | |||
{| class="mtx-class-macrotable wikitable" | |||
|- | |||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | |||
| width="90%" class="mtx-class-macrohead" | '''Initialise''' | |||
|- | |||
| colspan="2" | Configures the I2C peripheral ready for data. | |||
|- | |- | ||
|- | |- | ||
| Line 48: | Line 119: | ||
{| class="wikitable | ===Read=== | ||
{| class="mtx-class-macrotable wikitable" | |||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''Read''' | ||
|- | |- | ||
| colspan="2" | Wait timeout ticks to receive length number of samples, returns samples received. 24 and 32-bit data must be split into two integer values per sample. | | colspan="2" | Wait timeout ticks to receive length number of samples, returns samples received. 24 and 32-bit data must be split into two integer values per sample. | ||
|- | |- | ||
|- | |- | ||
| width="10%" align="center" | [[File:]] - | | width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT | ||
| width="90%" | Data | | width="90%" | Data | ||
|- | |- | ||
| Line 76: | Line 148: | ||
{| class="wikitable | ===Start=== | ||
{| class="mtx-class-macrotable wikitable" | |||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''Start''' | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | Starts the I2S audio stream, auto started by the initialise function. | ||
|- | |||
|- | |||
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | |||
| width="90%" style="border-top: 2px solid #000;" | ''Return'' | |||
|} | |||
===Stop=== | |||
{| class="mtx-class-macrotable wikitable" | |||
|- | |||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | |||
| width="90%" class="mtx-class-macrohead" | '''Stop''' | |||
|- | |||
| colspan="2" | Stops the I2S audio stream | |||
|- | |- | ||
|- | |- | ||
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:]] - | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | ||
| width="90%" style="border-top: 2px solid #000;" | ''Return'' | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
|} | |} | ||
{| class="wikitable | ===Write=== | ||
{| class="mtx-class-macrotable wikitable" | |||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''Write''' | ||
|- | |- | ||
| colspan="2" | Wait timeout ticks to send length number of samples, returns samples sent 24 and 32-bit data must be split into two integer values per sample. | | colspan="2" | Wait timeout ticks to send length number of samples, returns samples sent 24 and 32-bit data must be split into two integer values per sample. | ||
|- | |- | ||
|- | |- | ||
| width="10%" align="center" | [[File:]] - | | width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT | ||
| width="90%" | Data | | width="90%" | Data | ||
|- | |- | ||
| Line 115: | Line 203: | ||
| width="90%" style="border-top: 2px solid #000;" | ''Return'' | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
|} | |} | ||
==Property reference== | ==Property reference== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-prop-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''Properties''' | ||
|- | |- | ||
|- | |- | ||
| Line 208: | Line 268: | ||
| colspan="2" | I2S DMA Buffer Size | | colspan="2" | I2S DMA Buffer Size | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | Simulation | ||
|- | |- | ||
|} | |} | ||
Latest revision as of 14:36, 13 July 2026
| Author | Matrix TSL |
| Version | 2.0 |
| Category | Comms: Interface |
I2S Master/Slave ESP32 component
Provides access to the onboard inter-IC sound (I2S) peripheras allowing for simple digital audio input and output.
Component Source Code
Please click here to download the component source project: FC_Comp_Source_I2S.fcfx
Please click here to view the component source code (Beta): FC_Comp_Source_I2S.fcfx
Detailed description
No detailed description exists yet for this component
Examples
No additional examples
Macro reference
CheckQueue
Initialise
| Initialise | |
| Configures the I2C peripheral ready for data. | |
| Return | |
Read
Start
| Start | |
| Starts the I2S audio stream, auto started by the initialise function. | |
| Return | |
Stop
| Stop | |
| Stops the I2S audio stream | |
| Return | |
Write