MEMCMP

MEMCMP 1:

Mit der Funktion MEMCMP können die Werte der SPS-Variablen in zwei unterschiedlichen Speicherbereichen verglichen werden.

FUNCTION MEMCMP : DINT

MEMCMP 2: Eingänge

VAR_INPUT
    pBuf1 : PVOID;
    pBuf2 : PVOID;
    n     : UDINT;
END_VAR

Name

Typ

Beschreibung

pBuf1

PVOID

Anfangsadresse des ersten Speicherbereichs (der erste Datenpuffer).

pBuf2

PVOID

Anfangsadresse des zweiten Speicherbereichs (der zweite Datenpuffer).

n

UDINT

Anzahl der zu vergleichenden Bytes.

Die Funktion vergleicht die ersten n-Bytes in den beiden Datenpuffern und liefert einen Wert, der deren Verhältnis entspricht.

Rückgabeparameter

Verhältnis des ersten unterschiedlichen Bytes im ersten und zweiten Datenpuffer

-1

pBuf1 kleiner als pBuf2

0

pBuf1 identisch mit pBuf2

1

pBuf1 größer als pBuf2

0xFF

Falsche Parameterwerte. pBuff1 = 0 oder pBuff2 = 0 oder n = 0

Beispiel für einen Aufruf in FUP

PROGRAM MAIN
VAR
    Buffer1   : ARRAY[0..3] OF BYTE;
    Buffer2   : ARRAY[0..3] OF BYTE;
    CmpResult : DINT;
END_VAR

MEMCMP 3:

Im Beispiel werden 4 Byte Daten vom Buffer2 mit dem Buffer1 verglichen. Das erste unterschiedliche Datenbyte ist im Buffer1 größer als in Buffer2.

Voraussetzungen

Entwicklungsumgebung

Zielplattform

Einzubindende SPS-Bibliotheken (Kategoriegruppe)

TwinCAT v3.1.0

PC oder CX (x86, x64, ARM)

Tc2_System (System)