-

*_TO_BUF

TypFunktionsbaustein
BeschreibungKopiert elementare Datentypen aus einer Variablen, einem Feld oder aus Elementen einer anwenderdefinierten Struktur in einen Byte-Strom. Für den Byte-Strom kann das Little-/Big-Endian-Format verwendet werden. Deshalb wird eine automatische Konvertierung des Datenformats unterstützt.

Dieser Funktionsbaustein ist für den Datentransfer oder die Kommunikation zwischen Applikationen auf verschiedenen Hardware-Plattformen (Little-/Big-Endian) geeignet.

Funktionsweise

Mit einer steigenden Flanke am Eingang REQ startet der Kopiervorgang. Die Daten werden je nach Wert des Parameters BUF_FORMAT entweder in das Little- oder in das Big-Endian-Format konvertiert. Die Größe des Empfangspuffers (BUFFER) wird vor dem Kopieren geprüft.

Nach erfolgreichem Kopieren wird DONE auf TRUE gesetzt. Sind beim Kopierprozess Fehler aufgetreten, wird der Parameter ERROR auf TRUE gesetzt und ein Wert ungleich Null in den Ausgang STATUS geschrieben (der STATUS-Wert stellt die Fehlernummer dar). Diese Werte werden gehalten bis eine fallende Flanke am Eingang REQ anliegt. Eine neue steigende Flanke an REQ löst einen neuen Kopierprozess aus.

Zeitdiagramm
Hinweise
  • '*' ist ein Platzhalter für die unterstützten Datentypen. Der FB ist für die Datentypen BYTE, WORD, DWORD, LWORD, SINT, INT, DINT, LINT, UDINT, UINT, ULINT, USINT, TIME, REAL, LREAL, STRING, WSTRING, LTIME, LDATE, LTOD und LDT verfügbar.
  • Beim Datentyp STRING/WSTRING unterscheidet sich das Verhalten von der nachfolgenden Beschreibung. Weitere Informationen über den Funktionsbaustein STRING_TO_BUF/WSTRING_TO_BUF finden Sie hier.
  • Für die Quelle und das Ziel darf nicht die gleiche Adresse verwendet werden.
  • Funktionsbausteine müssen instanziiert werden. Der FB-Instanzname muss in der 'Variablen'-Tabelle der POE deklariert werden, in welcher der FB verwendet werden soll. Der Instanzname muss innerhalb der POE eindeutig sein.
ParameterEingänge

REQ

BUF_FORMAT

BUF_OFFS

BUF_CNT

Ein-/Ausgang

SRC

BUFFER

Ausgänge

DONE

ERROR

STATUS
Zusätzliche Informationen