CAMSWITCH_REF

Der Datentyp CAMSWITCH_REF verweist auf eine Datenstruktur mit Nockenparametern für ein digitales Nockenschaltwerk MC_DigitalCamSwitch.

TYPE CAMSWITCH_REF :
STRUCT
    NumberOfSwitches : UDINT; 
    pSwitches        : POINTER TO MC_CamSwitch; 
    SizeOfSwitches   : UDINT; 
END_STRUCT
END_TYPE

Die eigentliche Datenstruktur zur Parametrierung eines digitalen Nockenschaltwerks ist üblicherweise ein ARRAY OF MC_CamSwitch. CAMSWITCH_REF verweist mit einem POINTER auf diese Struktur und definiert eindeutig die Größe der Struktur und die Anzahl der tatsächlich verwendeten Nocken.

Eine Variable des Typs CAMSWITCH_REF wird, wie in dem folgenden Beispiel gezeigt, initialisiert:

VAR
    CamSwitchArray : ARRAY[1..3] OF MC_CamSwitch;
    CamSwitchRef   : CAMSWITCH_REF;
END_VAR

MC_CamSwitch

(* real number of defined digital cams *)
CamSwitchRef.NumberOfSwitches := 1; (* 1..3 *)
(* pointer to the digital cam data array *)
CamSwitchRef.pSwitches        := ADR(CamSwitchArray);
(* maximum size of the digital cam data array *)
CamSwitchRef.SizeOfSwitches   := SIZEOF(CamSwitchArray);

Beispiel mit zwei Nockenspuren

CAMSWITCH_REF 1: