Difference between revisions of "Component: DALI Master (Comms: System)"
| (18 intermediate revisions by 3 users not shown) | |||
| Line 1: | Line 1: | ||
| − | + | {| style="width:50%"  | |
| − | |||
| − | {|   | ||
|-  | |-  | ||
| − | | width="20%" style="color: gray;" | Author  | + | | width="20%" style="color:gray;" | Author  | 
| MatrixTSL  | | MatrixTSL  | ||
|-  | |-  | ||
| − | | width="20%" style="color: gray;" | Version  | + | | width="20%" style="color:gray;" | Version  | 
| − | | 1.0   | + | | 1.0  | 
|-  | |-  | ||
| − | | width="20%" style="color: gray;" | Category  | + | | width="20%" style="color:gray;" | Category  | 
| Comms: System  | | Comms: System  | ||
|}  | |}  | ||
| + | ==DALI Master component==  | ||
| + | A serial based communications protocol designed for controlling lighting, specifically digitally controlled dimmable fluorescent ballasts. DALI requires the signals to be level shifted from  VCC and GND to +9.5V - +25.5V and GND.  The master component can addess up to 64 individual slaves & up to 16 groups.  | ||
| − | ==  | + | ==Component Source Code==  | 
| − | |||
| − | |||
| − | |||
| − | |||
| − | + | Please click here to download the component source project: [https://www.flowcode.co.uk/wiki/componentsource/FC_Comp_Source_DALI_Master.fcfx FC_Comp_Source_DALI_Master.fcfx]  | |
| − | |||
| − | + | Please click here to view the component source code (Beta): [https://www.flowcode.co.uk/FlowchartView/?wfile=componentsource/FC_Comp_Source_DALI_Master.fcfx FC_Comp_Source_DALI_Master.fcfx]  | |
| + | ==Detailed description==  | ||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | + | ''No detailed description exists yet for this component''  | |
| − | |||
| − | + | ==Examples==  | |
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | '''  | + | DALI Master Example, reads the value of a keypad and sends out DALI commands based on the key pressed, 1 = switch on a slave's light, 2 = switch off a slave's light, 3 = read the slave's light level.  | 
| + | {{Fcfile|DALI_Master.fcfx|DALI Master Example1}}  | ||
| − | :  | + | For a DALI Slave example see: [[Component: DALI Slave (Comms: System)]]  | 
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | + | ==Macro reference==  | |
| + | ===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" | 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''  | ||
| + | |}  | ||
| − | + | ===ReceiveBackwardFrame===  | |
| + | {| 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;" | '''ReceiveBackwardFrame'''  | ||
| + | |-  | ||
| + | | colspan="2" | Attempts to receive an 8-bit reply  0 indicates timeout or no reply   | ||
| + | |-  | ||
| + | |-  | ||
| + | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE  | ||
| + | | width="90%" style="border-top: 2px solid #000;" | ''Return''  | ||
| + | |}  | ||
| + | |||
| + | |||
| + | ===TransmitForwardFrame===  | ||
| + | {| 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;" | '''TransmitForwardFrame'''  | ||
| + | |-  | ||
| + | | colspan="2" | Send out a 16-bit frame consisting of the 8-bit address and data bytes. After sending the controller will attempt to receive  If a reply is detected then the Return value will equal to the reply. If no reply is detected then the Return value will be 0.   | ||
| + | |-  | ||
| + | |-  | ||
| + | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE  | ||
| + | | width="90%" | Address  | ||
| + | |-  | ||
| + | | colspan="2" | Address byte   | ||
| + | |-  | ||
| + | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE  | ||
| + | | width="90%" | Data  | ||
| + | |-  | ||
| + | | colspan="2" | Data Byte   | ||
| + | |-  | ||
| + | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE  | ||
| + | | width="90%" style="border-top: 2px solid #000;" | ''Return''  | ||
| + | |}  | ||
| − | |||
| − | ''  | + | ===TransmitGroupForwardFrame===  | 
| + | {| 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;" | '''TransmitGroupForwardFrame'''  | ||
| + | |-  | ||
| + | | colspan="2" | Sends out a group frame containing address and data. After sending the controller will attempt to receive a reply. If a reply is detected then the Return value will equal to the reply. If no reply is detected then the Return value will be 0.   | ||
| + | |-  | ||
| + | |-  | ||
| + | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE  | ||
| + | | width="90%" | Address  | ||
| + | |-  | ||
| + | | colspan="2" | Group Address 0-15   | ||
| + | |-  | ||
| + | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE  | ||
| + | | width="90%" | Type  | ||
| + | |-  | ||
| + | | colspan="2" | 0 = Data, 1 = Command   | ||
| + | |-  | ||
| + | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE  | ||
| + | | width="90%" | Data  | ||
| + | |-  | ||
| + | | colspan="2" |    | ||
| + | |-  | ||
| + | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE  | ||
| + | | width="90%" style="border-top: 2px solid #000;" | ''Return''  | ||
| + | |}  | ||
| + | ===TransmitIndividualForwardFrame===  | ||
| + | {| 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;" | '''TransmitIndividualForwardFrame'''  | ||
| + | |-  | ||
| + | | colspan="2" | Sends out an individual frame containing address and data. After sending the controller will attempt to receive a reply. If a reply is detected then the Return value will equal to the reply. If no reply is detected then the Return value will be 0.   | ||
| + | |-  | ||
| + | |-  | ||
| + | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE  | ||
| + | | width="90%" | Address  | ||
| + | |-  | ||
| + | | colspan="2" | Individual Address 0-63   | ||
| + | |-  | ||
| + | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE  | ||
| + | | width="90%" | Type  | ||
| + | |-  | ||
| + | | colspan="2" | 0 = Data, 1 = Command   | ||
| + | |-  | ||
| + | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE  | ||
| + | | width="90%" | Data  | ||
| + | |-  | ||
| + | | colspan="2" |    | ||
| + | |-  | ||
| + | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE  | ||
| + | | 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-5-icon.png]]  | ||
| + | | width="90%" | TX Pin  | ||
| + | |-  | ||
| + | | colspan="2" |    | ||
| + | |-  | ||
| + | | width="10%" align="center" | [[File:Fc9-type-5-icon.png]]  | ||
| + | | width="90%" | RX Pin  | ||
| + | |-  | ||
| + | | colspan="2" |    | ||
| + | |-  | ||
| + | | 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-16-icon.png]]  | ||
| + | | width="90%" | API  | ||
| + | |-  | ||
| + | | colspan="2" |    | ||
| + | |}  | ||
Latest revision as of 13:09, 7 February 2023
| Author | MatrixTSL | 
| Version | 1.0 | 
| Category | Comms: System | 
Contents
DALI Master component
A serial based communications protocol designed for controlling lighting, specifically digitally controlled dimmable fluorescent ballasts. DALI requires the signals to be level shifted from VCC and GND to +9.5V - +25.5V and GND. The master component can addess up to 64 individual slaves & up to 16 groups.
Component Source Code
Please click here to download the component source project: FC_Comp_Source_DALI_Master.fcfx
Please click here to view the component source code (Beta): FC_Comp_Source_DALI_Master.fcfx
Detailed description
No detailed description exists yet for this component
Examples
DALI Master Example, reads the value of a keypad and sends out DALI commands based on the key pressed, 1 = switch on a slave's light, 2 = switch off a slave's light, 3 = read the slave's light level.
DALI Master Example1
For a DALI Slave example see: Component: DALI Slave (Comms: System)
Macro reference
Initialise
| Initialise | |
| Configures the UART serial interface. | |
| Return | |
ReceiveBackwardFrame
| ReceiveBackwardFrame | |
| Attempts to receive an 8-bit reply 0 indicates timeout or no reply | |
| Return | |
TransmitForwardFrame
TransmitGroupForwardFrame
TransmitIndividualForwardFrame
Property reference
| Properties | |
| Serial Properties | |
| TX Pin | |
| RX Pin | |
| Simulation | |
| API | |