Author
|
Matrix TSL
|
Version
|
2.0
|
Category
|
Misc
|
RMT (Internal) component
Provides access to the onboard remote control (RMT) peripheral allowing for high speed data input / output without requiring bit banging from the ESP32 processor.
Component Source Code
Please click here to download the component source project: FC_Comp_Source_RMT.fcfx
Please click here to view the component source code (Beta): FC_Comp_Source_RMT.fcfx
Detailed description
No detailed description exists yet for this component
Examples
No additional examples
Macro reference
|
TransmitBusy
|
Checks to see if the RMT channel is currently transmitting. Returns 1 if transmitting and 0 if transmission is complete.
|
- BYTE
|
Return
|
|
SetBuffer
|
Writes data to the RMT buffer
|
- UINT
|
Index
|
Array index, Range: 0 - (BufferSize - 1)
|
- BOOL
|
State0
|
The first state to output
|
- UINT
|
Length0
|
The length of the first output state in divided clock periods
|
- BOOL
|
State1
|
The second state to output
|
- UINT
|
Length1
|
The length of the second output state in divided clock periods
|
- VOID
|
Return
|
|
Transmit
|
Sends out the RMT data buffer.
|
- BYTE
|
WaitWhileComplete
|
0=Dont Wait, 1=Wait for TX to complete
|
- VOID
|
Return
|
|
Initialise
|
Initialises the RMT module ready for data to be sent or received.
|
- VOID
|
Return
|
Property reference
|
Properties
|
|
Mode
|
Controls if we are transmitting or receiving data
|
|
Pin
|
Pin to assign the RMT functionality
|
|
Clock Divider
|
Base Clock speed is 80MHz. Div by 1 = 80MHz Div by 2 = 40MHz Div by 4 = 20MHz Div by 8 = 10MHz
|
|
Mem Block Num
|
Starting RMT memory block
|
|
Buffer Size
|
Number of values inside the data buffer, 64 = 1 Block A buffer size of 128 would consume two sequential blocks of memory. If starting at block 1 then you can have a maximum buffer size of 512 consuming all 8 blocks.
|
|
Tx Properties
|
|
TX Loop Enable
|
Allows the transmit buffer to be constantly looped.
|
|
TX Carrier Enable
|
Enables a carrier frequency to be overlaid on the transmitted data
|
|
TX Idle Output
|
When not transmitting should the Transmit pin be an active output?
|
|
TX Idle Level
|
Sets the output state when idle.
|
==Macro reference==
|
TransmitBusy
|
Checks to see if the RMT channel is currently transmitting. Returns 1 if transmitting and 0 if transmission is complete.
|
- BYTE
|
Return
|
|
SetBuffer
|
Writes data to the RMT buffer
|
- UINT
|
Index
|
Array index, Range: 0 - (BufferSize - 1)
|
- BOOL
|
State0
|
The first state to output
|
- UINT
|
Length0
|
The length of the first output state in divided clock periods
|
- BOOL
|
State1
|
The second state to output
|
- UINT
|
Length1
|
The length of the second output state in divided clock periods
|
- VOID
|
Return
|
|
Transmit
|
Sends out the RMT data buffer.
|
- BYTE
|
WaitWhileComplete
|
0=Dont Wait, 1=Wait for TX to complete
|
- VOID
|
Return
|
|
Initialise
|
Initialises the RMT module ready for data to be sent or received.
|
- VOID
|
Return
|
Property reference
|
Properties
|
|
Mode
|
Controls if we are transmitting or receiving data
|
|
Pin
|
Pin to assign the RMT functionality
|
|
Clock Divider
|
Base Clock speed is 80MHz. Div by 1 = 80MHz Div by 2 = 40MHz Div by 4 = 20MHz Div by 8 = 10MHz
|
|
Mem Block Num
|
Starting RMT memory block
|
|
Buffer Size
|
Number of values inside the data buffer, 64 = 1 Block A buffer size of 128 would consume two sequential blocks of memory. If starting at block 1 then you can have a maximum buffer size of 512 consuming all 8 blocks.
|
|
Tx Properties
|
|
TX Loop Enable
|
Allows the transmit buffer to be constantly looped.
|
|
TX Carrier Enable
|
Enables a carrier frequency to be overlaid on the transmitted data
|
|
TX Idle Output
|
When not transmitting should the Transmit pin be an active output?
|
|
TX Idle Level
|
Sets the output state when idle.
|
==Macro reference==
|
TransmitBusy
|
Checks to see if the RMT channel is currently transmitting. Returns 1 if transmitting and 0 if transmission is complete.
|
- BYTE
|
Return
|
|
SetBuffer
|
Writes data to the RMT buffer
|
- UINT
|
Index
|
Array index, Range: 0 - (BufferSize - 1)
|
- BOOL
|
State0
|
The first state to output
|
- UINT
|
Length0
|
The length of the first output state in divided clock periods
|
- BOOL
|
State1
|
The second state to output
|
- UINT
|
Length1
|
The length of the second output state in divided clock periods
|
- VOID
|
Return
|
|
Transmit
|
Sends out the RMT data buffer.
|
- BYTE
|
WaitWhileComplete
|
0=Dont Wait, 1=Wait for TX to complete
|
- VOID
|
Return
|
|
Initialise
|
Initialises the RMT module ready for data to be sent or received.
|
- VOID
|
Return
|
Property reference
|
Properties
|
|
Mode
|
Controls if we are transmitting or receiving data
|
|
Pin
|
Pin to assign the RMT functionality
|
|
Clock Divider
|
Base Clock speed is 80MHz. Div by 1 = 80MHz Div by 2 = 40MHz Div by 4 = 20MHz Div by 8 = 10MHz
|
|
Mem Block Num
|
Starting RMT memory block
|
|
Buffer Size
|
Number of values inside the data buffer, 64 = 1 Block A buffer size of 128 would consume two sequential blocks of memory. If starting at block 1 then you can have a maximum buffer size of 512 consuming all 8 blocks.
|
|
Tx Properties
|
|
TX Loop Enable
|
Allows the transmit buffer to be constantly looped.
|
|
TX Carrier Enable
|
Enables a carrier frequency to be overlaid on the transmitted data
|
|
TX Idle Output
|
When not transmitting should the Transmit pin be an active output?
|
|
TX Idle Level
|
Sets the output state when idle.
|
==Macro reference==
|
TransmitBusy
|
Checks to see if the RMT channel is currently transmitting. Returns 1 if transmitting and 0 if transmission is complete.
|
- BYTE
|
Return
|
|
SetBuffer
|
Writes data to the RMT buffer
|
- UINT
|
Index
|
Array index, Range: 0 - (BufferSize - 1)
|
- BOOL
|
State0
|
The first state to output
|
- UINT
|
Length0
|
The length of the first output state in divided clock periods
|
- BOOL
|
State1
|
The second state to output
|
- UINT
|
Length1
|
The length of the second output state in divided clock periods
|
- VOID
|
Return
|
|
Transmit
|
Sends out the RMT data buffer.
|
- BYTE
|
WaitWhileComplete
|
0=Dont Wait, 1=Wait for TX to complete
|
- VOID
|
Return
|
|
Initialise
|
Initialises the RMT module ready for data to be sent or received.
|
- VOID
|
Return
|
Property reference
|
Properties
|
|
Mode
|
Controls if we are transmitting or receiving data
|
|
Pin
|
Pin to assign the RMT functionality
|
|
Clock Divider
|
Base Clock speed is 80MHz. Div by 1 = 80MHz Div by 2 = 40MHz Div by 4 = 20MHz Div by 8 = 10MHz
|
|
Mem Block Num
|
Starting RMT memory block
|
|
Buffer Size
|
Number of values inside the data buffer, 64 = 1 Block A buffer size of 128 would consume two sequential blocks of memory. If starting at block 1 then you can have a maximum buffer size of 512 consuming all 8 blocks.
|
|
Tx Properties
|
|
TX Loop Enable
|
Allows the transmit buffer to be constantly looped.
|
|
TX Carrier Enable
|
Enables a carrier frequency to be overlaid on the transmitted data
|
|
TX Idle Output
|
When not transmitting should the Transmit pin be an active output?
|
|
TX Idle Level
|
Sets the output state when idle.
|