FB_DMXGetDMX512StartAddress

FB_DMXGetDMX512StartAddress 1:

This function block queries the DMX512 start address. This lies within the range from 1 – 512. If the DMX device does not occupy any DMX slot, then the DMX512 start address is 0xFFFF (65535). Each sub-device and the root device occupy different DMX512 start addresses.

Applying a positive edge to the bStart input starts the function block, and the bBusy output goes TRUE. The wDestinationManufacturerId and dwDestinationDeviceId inputs address the DMX device. The byPortId input defines the channel within the addressed DMX device. If the execution of the command has been completed, the bBusy output goes back to FALSE. The outputs bError, udiErrorId and iDMX512StartAddress can now be evaluated. Further positive edges at the bStart input will be ignored as long as the function block is active (bBusy is TRUE).

FB_DMXGetDMX512StartAddress 2: Inputs

VAR_INPUT
  bStart                     : BOOL;
  wDestinationManufacturerId : WORD;
  dwDestinationDeviceId      : DWORD;
  byPortId                   : BYTE;
  dwOptions                  : DWORD := 0;
END_VAR

Name

Type

Description

bStart

BOOL

The function block is activated by a positive edge at this input.

wDestinationManufacturerId

WORD

Unique manufacturer Id of the DMX device (for details, see DMX device address).

dwDestinationDeviceId

DWORD

Unique device Id of the DMX device (for details, see DMX device address).

byPortId

BYTE

Channel within the addressed DMX device. Sub-devices are addressed through the Port Id. The root device always has the Port Id 0.

dwOptions

DWORD

Options (currently not used).

FB_DMXGetDMX512StartAddress 3: Inputs/outputs

VAR_IN_OUT
  stCommandBuffer : ST_DMXCommandBuffer;
END_VAR

Name

Type

Description

stCommandBuffer

ST_DMXCommandBuffer

Reference to the structure for communication (buffer) with the function block FB_EL6851Communication()

FB_DMXGetDMX512StartAddress 4: Outputs

VAR_OUTPUT
  bBusy                   : BOOL;
  bError                  : BOOL;
  udiErrorId              : UDINT;
  iDMX512StartAddress     : INT;
END_VAR

Name

Type

Description

bBusy

BOOL

When the function block is activated the output is set, and it remains active until execution of the command has been completed.

bError

BOOL

This output is switched to TRUE as soon as an error occurs during the execution of a command. The command-specific error code is contained in udiErrorId. Only valid if bBusy is FALSE.

udiErrorId

UDINT

Contains the command-specific error code of the most recently executed command. Only valid if bBusy is FALSE (see error codes).

iDMX512StartAddress

INT

If the execution of the command has been completed (bBusy is FALSE), then the DMX512 start address of the DMX device will be available at this output.

Requirements

Development environment

required TC3 PLC library

TwinCAT from v3.1.4020.14

Tc2_DMX from 3.5.3.0