UNPACK8-Baustein

Kurz-Information

Name

UNPACK8

→POE-Typ

→Funktion

Kategorie

IEC-Baustein, ConvertEnh

Konform zur →IEC-Norm

images/s/b2ic8e/9012/1ca6q62/_/images/icons/emoticons/add.svg nicht in IEC-Norm vorgesehen

Grafische Schnittstelle

images/download/thumbnails/414781238/UNPACK8-version-1-modificationdate-1534940035494-api-v2.png

Verfügbar ab

Version 1.50.0 (für logi.CAD 3)

Funktionalität

Der Baustein überträgt den Wert, der am Eingang IN anliegt, byteweise auf die Ausgänge OUT0OUT7 . Bei Zielsystemen, die Daten im Little- →Endian -Format speichern, wird das niederwertigste Byte des Eingangs auf den Ausgang OUT0 übertragen, das höchstwertige auf OUT7. Bei Zielsystemen, die Daten im Big - Endian -Format speichern, ist das Verhalten umgekehrt.

Spezialfälle (siehe unter " Beispiel für Verwendung im ST-Editor" ) :

  • Falls die Größe des Eingangswerts (Anzahl der Bytes, durch die der Datentyp repräsentiert wird) > als die Anzahl der Ausgänge ist, werden nur die niederwertigen Eingangsbytes übertragen.

  • Falls mehr Ausgangsbytes vorhanden sind, als der Eingangswert enthält, bleiben die höherwertigen Ausgangsbytes uninitialisiert. Bei Zielsystemen, die Daten im Little-Endian-Format speichern, sind dies die Ausgänge, die weiter unten am Baustein liegen.

Ein-/Ausgänge


Bezeichner

→Datentyp

Beschreibung

Eingänge:

IN

REAL, LREAL, USINT, UINT, UDINT, ULINT, SINT, INT, DINT, LINT, TIME, BOOL, BYTE, WORD, DWORD, LWORD, DATE_AND_TIME, DATE oder TIME_OF_DAY

Eingangswert

Ausgänge:

OUT0

BYTE

1. Byte-Ausgangswert

OUT1

BYTE

2. Byte-Ausgangswert

OUT2

BYTE

3. Byte-Ausgangswert

OUT3

BYTE

4. Byte-Ausgangswert

OUT4

BYTE

5. Byte-Ausgangswert

OUT5

BYTE

6. Byte-Ausgangswert

OUT6

BYTE

7. Byte-Ausgangswert

OUT7

BYTE

8. Byte-Ausgangswert

Der Eingang EN und der Ausgang ENO sind für den →Aufruf des Bausteins verfügbar. Siehe "Ausführungssteuerung: EN, ENO" für Informationen zum Eingang EN und zum Ausgang ENO.

Informieren Sie sich unter:

Beispiel für Verwendung im ST-Editor

Das folgende Beispiel gilt für Zielsysteme, die Daten im Little - Endian -Format speichern. Die berechneten Werte werden mit Hilfe des Assert-Bausteins ausgewertet.

FUNCTION_BLOCK ExampleUnpack8
VAR
resultA1, resultA2, resultA3, resultA4, resultA5, resultA6, resultA7, resultA8, resultB1, resultB2, resultB3, resultB4, resultB5, resultB6, resultB7, resultB8 : BYTE;
END_VAR
UNPACK8(IN := DWORD#16#04030201, OUT0 => resultA1, OUT1 => resultA2, OUT2 => resultA3, OUT3 => resultA4, OUT4 => resultA5, OUT5 => resultA6, OUT6 => resultA7, OUT7 => resultA8);
UNPACK8(IN := WORD#16#0201, OUT0 => resultB1, OUT1 => resultB2, OUT2 => resultB3, OUT3 => resultB4, OUT4 => resultB5, OUT5 => resultB6, OUT6 => resultB7, OUT7 => resultB8);
 
Assert(resultA1 = 16#01);
Assert(resultA2 = 16#02);
Assert(resultA3 = 16#03);
Assert(resultA4 = 16#04);
Assert(resultA5 = 16#00);
Assert(resultA6 = 16#00);
Assert(resultA7 = 16#00);
Assert(resultA8 = 16#00);
Assert(resultB1 = 16#01);
Assert(resultB2 = 16#02);
Assert(resultB3 = 16#00);
Assert(resultB4 = 16#00);
Assert(resultB5 = 16#00);
Assert(resultB6 = 16#00);
Assert(resultB7 = 16#00);
Assert(resultB8 = 16#00);
END_FUNCTION_BLOCK

Bei der Erstellung Ihrer Anwendung im ST-Editor erstellen Sie den Aufruf eines Bausteins, indem Sie den laut Syntax erforderlichen Text eintippen oder die Inhaltshilfe verwenden.