BECKHOFF CX1100-000x Benutzerhandbuch

Seite 23

Advertising
background image

Produktübersicht

Embedded-PC

21

PROGRAM MAIN

VAR

Taster AT %IB0 : USINT;

END_VAR

Über ein einfaches CASE-Statement kann der Schalter dann ausgewertet, und die gewünschte Funktion initiiert
werden z.B.:

CASE Taster OF

0:

ACTION := NONE;

1:

ACTION := UP;

2:

ACTION := DOWN;

4:

ACTION := LEFT;

8:

ACTION := RIGHT;

16:

ACTION := SELECT;

END_CASE;

In diesem Fall ist "ACTION" ein neu definierter ENUM-Type. Es kann auch die gewünschte Aktion sofort aktiviert
werden.

Für die kombinierten Funktionen werden die Zahlwerte addiert. Also UP (1) und RIGHT (8) wäre dann 8 + 1 = 9
(Rechts-Oben). Es sind auf diese Weise nur sinnvolle Kombinationen möglich also Gegenüber liegende
Schalterpositionen sind ohne Zerstörung des Schalters nicht anwählbar.

Will man die Auswertung nicht selbst vornehmen, so stellt das TwinCAT-System eine Bibliotheksfunktion bereit, die
die Umwandlung der Tastereingabe in einen ENUM-Type realisiert. Dazu muss zuerst die Bibliothek für die CX-
Systeme: TcSystemCX.lib im Bibliotheksverwalter eingebunden werden. Die Funktion heißt "
F_CXNaviSwitch(iCX1100_IN : USINT) " und liefert einen ENUM-Type. Dieser codiert namentlich die gedrückte
Richtung des Schalters also z.B. e_CX1100_NaviSwitch_MIDDLE für <Mitte>. Alle gültigen Varianten lauten:

e_CX1100_NaviSwitch_IDLE

e_CX1100_NaviSwitch_MIDDLE

e_CX1100_NaviSwitch_TOP

e_CX1100_NaviSwitch_TOPRIGHT

e_CX1100_NaviSwitch_RIGHT

e_CX1100_NaviSwitch_BOTTOMRIGHT

e_CX1100_NaviSwitch_BOTTOM

e_CX1100_NaviSwitch_BOTTOMLEFT

e_CX1100_NaviSwitch_LEFT

e_CX1100_NaviSwitch_TOPLEFT

e_CX1100_NaviSwitch_MIDDLE_TOP

e_CX1100_NaviSwitch_MIDDLE_TOPRIGHT

e_CX1100_NaviSwitch_MIDDLE_RIGHT

e_CX1100_NaviSwitch_MIDDLE_BOTTOMRIGHT

e_CX1100_NaviSwitch_MIDDLE_BOTTOM

e_CX1100_NaviSwitch_MIDDLE_BOTTOMLEFT

e_CX1100_NaviSwitch_MIDDLE_LEFT

e_CX1100_NaviSwitch_MIDDLE_TOPLEFT

Advertising