Difference between revisions of "Component: DMX-512 Master (Comms: System)"
Line 17: | Line 17: | ||
==Component Source Code== | ==Component Source Code== | ||
− | Please click here to download the component source project: [https://www.flowcode.co.uk/wikicopy/componentsource/FC_Comp_Source_DMX- | + | Please click here to download the component source project: [https://www.flowcode.co.uk/wikicopy/componentsource/FC_Comp_Source_DMX-512_Master.fcfx FC_Comp_Source_DMX-512_Master.fcfx] |
− | Please click here to view the component source code (Beta): [https://www.flowcode.co.uk/FlowchartView/?wfile=componentsource/FC_Comp_Source_DMX- | + | Please click here to view the component source code (Beta): [https://www.flowcode.co.uk/FlowchartView/?wfile=componentsource/FC_Comp_Source_DMX-512_Master.fcfx FC_Comp_Source_DMX-512_Master.fcfx] |
==Detailed description== | ==Detailed description== | ||
+ | |||
+ | |||
Line 58: | Line 60: | ||
==Examples== | ==Examples== | ||
+ | |||
+ | |||
Line 629: | Line 633: | ||
|- | |- | ||
| colspan="2" | Number of data bytes used by the DMX chain, Max 512 bytes per transmission. 24 Bytes minimum to match minimum 1204us timing requirements, not all channels need to be used. | | colspan="2" | Number of data bytes used by the DMX chain, Max 512 bytes per transmission. 24 Bytes minimum to match minimum 1204us timing requirements, not all channels need to be used. | ||
+ | |}==Macro reference== | ||
+ | |||
+ | {| 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;" | '''SetDataChannel''' | ||
+ | |- | ||
+ | | colspan="2" | Sets the data byte in a data channel | ||
+ | |- | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT | ||
+ | | width="90%" | Channel | ||
+ | |- | ||
+ | | colspan="2" | | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | ||
+ | | width="90%" | DataValue | ||
+ | |- | ||
+ | | colspan="2" | | ||
+ | |- | ||
+ | | 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'' | ||
+ | |} | ||
+ | |||
+ | |||
+ | {| 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;" | '''SendDataChain''' | ||
+ | |- | ||
+ | | colspan="2" | Transmits the BREAK, MAB and StartCode followed by the contents of the data channels. | ||
+ | |- | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | ||
+ | | width="90%" | StartCode | ||
+ | |- | ||
+ | | colspan="2" | | ||
+ | |- | ||
+ | | 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'' | ||
+ | |} | ||
+ | |||
+ | |||
+ | {| 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" | Configures the UART serial interface. | ||
+ | |- | ||
+ | |- | ||
+ | | 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'' | ||
+ | |} | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | ==Property reference== | ||
+ | |||
+ | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
+ | |- | ||
+ | | width="10%" align="center" style="background-color:#D8C9D8;" | [[File:Fc9-prop-icon.png]] | ||
+ | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Properties''' | ||
+ | |- | ||
+ | |- | ||
+ | | width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]] | ||
+ | | width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Serial Properties | ||
+ | |- | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-16-icon.png]] | ||
+ | | width="90%" | Channel | ||
+ | |- | ||
+ | | colspan="2" | UART Channel selector Software channels are bit banged using generic I/O pins but are not as reliable as hardware channels. Hardware channels use the selected peripheral on-board the target microcontroller. | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-16-icon.png]] | ||
+ | | width="90%" | Baud Options | ||
+ | |- | ||
+ | | colspan="2" | Baud rate option selector | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-14-icon.png]] | ||
+ | | width="90%" | Baud Rate | ||
+ | |- | ||
+ | | colspan="2" | | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-5-icon.png]] | ||
+ | | width="90%" | TX | ||
+ | |- | ||
+ | | colspan="2" | Pin to be used for Transmit data | ||
+ | |- | ||
+ | | width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]] | ||
+ | | width="90%" style="background-color:#EAE1EA; color:#4B008D;" | DMX Properties | ||
+ | |- | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-21-icon.png]] | ||
+ | | width="90%" | Data Channels | ||
+ | |- | ||
+ | | colspan="2" | Number of data bytes used by the DMX chain, Max 512 bytes per transmission. 24 Bytes minimum to match minimum 1204us timing requirements, not all channels need to be used. | ||
+ | |- | ||
+ | | width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]] | ||
+ | | width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Simulation | ||
+ | |- | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
+ | | width="90%" | Scope Traces | ||
+ | |- | ||
+ | | colspan="2" | Selects if the scope traces are automatically added to the data recorder window or not. Simulation - draws an approximation of the UART data onto the scope trace. ICT - sets up the scope trace for incoming data and adds UART packet decoding at the correct BAUD. | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
+ | | width="90%" | Console Data | ||
+ | |- | ||
+ | | colspan="2" | Selects if the console data is automatically generated or not | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-21-icon.png]] | ||
+ | | width="90%" | Console Columns | ||
+ | |- | ||
+ | | colspan="2" | Number of characters that can be displayed on a single line of the console. | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-16-icon.png]] | ||
+ | | width="90%" | Data Source | ||
+ | |- | ||
+ | | colspan="2" | Simulation data source used to allow the component to connect to various remote devices Nothing - Simulation data is ignored COM port - Routes the communication data to and from a physical or virtual COM port Injector - Routes the communication data via a data injector component on the Panel. | ||
|} | |} |
Revision as of 15:20, 20 January 2023
Author | MatrixTSL |
Version | 2.0 |
Category | Comms: System |
Contents
DMX-512 Master component
A serial based communications protocol designed for controlling theatrical equipment such as dimmers, fog machines and intelligent lights. DMX-512 Slave devices are daisy chained together with a final 180R terminating resistor at the end of the chail. DMX requires the signal to be level shifted from VCC and GND to +2.5V and -2.5V.
Component Source Code
Please click here to download the component source project: FC_Comp_Source_DMX-512_Master.fcfx
Please click here to view the component source code (Beta): FC_Comp_Source_DMX-512_Master.fcfx
Detailed description
No detailed description exists yet for this component
Examples
DMX Master Example, reads the value of two ports using switch arrays to set the values and then transmits the data in a DMX packet.
For DMX 512 slave example see: DMX Slave
Macro reference
![]() |
SetDataChannel |
Sets the data byte in a data channel | |
![]() |
Channel |
![]() |
DataValue |
![]() |
Return |
![]() |
SendDataChain |
Transmits the BREAK, MAB and StartCode followed by the contents of the data channels. | |
![]() |
StartCode |
![]() |
Return |
![]() |
Initialise |
Configures the UART serial interface. | |
![]() |
Return |
Property reference
==Macro reference==
![]() |
SetDataChannel |
Sets the data byte in a data channel | |
![]() |
Channel |
![]() |
DataValue |
![]() |
Return |
![]() |
SendDataChain |
Transmits the BREAK, MAB and StartCode followed by the contents of the data channels. | |
![]() |
StartCode |
![]() |
Return |
![]() |
Initialise |
Configures the UART serial interface. | |
![]() |
Return |
Property reference
==Macro reference==
![]() |
SetDataChannel |
Sets the data byte in a data channel | |
![]() |
Channel |
![]() |
DataValue |
![]() |
Return |
![]() |
SendDataChain |
Transmits the BREAK, MAB and StartCode followed by the contents of the data channels. | |
![]() |
StartCode |
![]() |
Return |
![]() |
Initialise |
Configures the UART serial interface. | |
![]() |
Return |
Property reference
==Macro reference==
![]() |
SetDataChannel |
Sets the data byte in a data channel | |
![]() |
Channel |
![]() |
DataValue |
![]() |
Return |
![]() |
SendDataChain |
Transmits the BREAK, MAB and StartCode followed by the contents of the data channels. | |
![]() |
StartCode |
![]() |
Return |
![]() |
Initialise |
Configures the UART serial interface. | |
![]() |
Return |
Property reference
==Macro reference==
![]() |
SetDataChannel |
Sets the data byte in a data channel | |
![]() |
Channel |
![]() |
DataValue |
![]() |
Return |
![]() |
SendDataChain |
Transmits the BREAK, MAB and StartCode followed by the contents of the data channels. | |
![]() |
StartCode |
![]() |
Return |
![]() |
Initialise |
Configures the UART serial interface. | |
![]() |
Return |
Property reference
==Macro reference==
![]() |
SetDataChannel |
Sets the data byte in a data channel | |
![]() |
Channel |
![]() |
DataValue |
![]() |
Return |
![]() |
SendDataChain |
Transmits the BREAK, MAB and StartCode followed by the contents of the data channels. | |
![]() |
StartCode |
![]() |
Return |
![]() |
Initialise |
Configures the UART serial interface. | |
![]() |
Return |