Difference between revisions of "Component: I2S Master/Slave ESP32 (Comms: Interface)"
From Flowcode Help
Jump to navigationJump to search| (13 intermediate revisions by the same user 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 26: | Line 48: | ||
==Examples==  | ==Examples==  | ||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| Line 37: | Line 75: | ||
| − | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | ==Macro reference==  | ||
| + | |||
| + | ===CheckQueue===  | ||
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"  | {| class="wikitable" style="width:60%; background-color:#FFFFFF;"  | ||
|-  | |-  | ||
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]  | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]  | ||
| − | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''  | + | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''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.   | ||
| + | |-  | ||
| + | |-  | ||
| + | | 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="wikitable" style="width:60%; background-color:#FFFFFF;"  | ||
| + | |-  | ||
| + | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]  | ||
| + | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Initialise'''  | ||
|-  | |-  | ||
| − | | colspan="2" |   | + | | colspan="2" | Configures the I2C peripheral ready for data.   | 
|-  | |-  | ||
|-  | |-  | ||
| Line 52: | Line 119: | ||
| + | ===Read===  | ||
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"  | {| class="wikitable" style="width:60%; background-color:#FFFFFF;"  | ||
|-  | |-  | ||
| Line 80: | Line 148: | ||
| + | ===Start===  | ||
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"  | {| class="wikitable" style="width:60%; background-color:#FFFFFF;"  | ||
|-  | |-  | ||
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]  | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]  | ||
| − | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''  | + | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Start'''  | 
| + | |-  | ||
| + | | 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="wikitable" style="width:60%; background-color:#FFFFFF;"  | ||
| + | |-  | ||
| + | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]  | ||
| + | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Stop'''  | ||
|-  | |-  | ||
| − | | colspan="2" |   | + | | colspan="2" | Stops the I2S audio stream   | 
|-  | |-  | ||
|-  | |-  | ||
| − | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-  | + | | 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''  | ||
|}  | |}  | ||
| + | ===Write===  | ||
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"  | {| class="wikitable" style="width:60%; background-color:#FFFFFF;"  | ||
|-  | |-  | ||
| Line 119: | Line 203: | ||
| width="90%" style="border-top: 2px solid #000;" | ''Return''  | | width="90%" style="border-top: 2px solid #000;" | ''Return''  | ||
|}  | |}  | ||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| Line 212: | Line 268: | ||
| colspan="2" | I2S DMA Buffer Size   | | colspan="2" | I2S DMA Buffer Size   | ||
|-  | |-  | ||
| − | | width="10%" align="center" style="background-color:#  | + | | width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]  | 
| − | | width="90%" style="background-color:#  | + | | width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Simulation  | 
| − | |||
| − | |||
| − | |||
| − | |||
|-  | |-  | ||
|}  | |}  | ||
Latest revision as of 10:24, 24 February 2023
| Author | Matrix TSL | 
| Version | 2.0 | 
| Category | Comms: Interface | 
Contents
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