8.6.8
Anweisungen Speicher lesen / in Speicher schreiben
8.6.8.1
PEEK und POKE (nur SCL)
SCL bietet die Anweisungen PEEK und POKE, mit denen Sie aus Datenblöcken, E/A oder
dem Speicher lesen oder in diese schreiben können. Sie geben für die Operation Parameter
mit einem spezifischen Byte- oder Bit-Versatz an.
Hinweis
Um die Anweisungen PEEK und POKE mit Datenbausteinen zu verwenden, müssen Sie
Standarddatenbausteine (keine optimierten Datenbausteine) verwenden. Beachten Sie
zudem, dass die Anweisungen PEEK und POKE lediglich Daten übertragen. Die Datentypen
an den Adressen werden nicht beachtet.
PEEK(area:=_in_,
PEEK_WORD(area:=_in_,
PEEK_DWORD(area:=_in_,
PEEK_BOOL(area:=_in_,
S7-1200 Automatisierungssystem
Systemhandbuch, V4.2, 09/2016, A5E02486681-AK
dbNumber:=_in_,
byteOffset:=_in_);
dbNumber:=_in_,
byteOffset:=_in_);
dbNumber:=_in_,
byteOffset:=_in_);
dbNumber:=_in_,
byteOffset:=_in_,
bitOffset:=_in_);
8.6 Anweisungen zum Übertragen von Daten
Liest das von byteOffset angegebene Byte
aus dem angegebenen Datenbaustein, aus
den E/A oder dem Speicherbereich.
Beispiel für den Verweis auf einen Datenbau-
stein:
%MB100 := PEEK(area:=16#84,
dbNumber:=1, byteOffset:=#i);
Beispiel für den Verweis auf Eingang EB3:
%MB100 := PEEK(area:=16#81,
dbNumber:=0, byteOffset:=#i); // when
#i = 3
Liest das von byteOffset angegebene Wort
aus dem angegebenen Datenbaustein, aus
den E/A oder dem Speicherbereich.
Beispiel:
%MW200 := PEEK_WORD(area:=16#84,
dbNumber:=1, byteOffset:=#i);
Liest das von byteOffset angegebene Dop-
pelwort aus dem angegebenen Datenbau-
stein, aus den E/A oder dem Speicherbereich.
Beispiel:
%MD300 := PEEK_DWORD(area:=16#84,
dbNumber:=1, byteOffset:=#i);
Liest einen von bitOffset und byteOffset an-
gegebenen Booleschen Wert aus dem ange-
gebenen Datenbaustein, aus den E/A oder
dem Speicherbereich.
Beispiel:
%MB100.0 := PEEK_BOOL(area:=16#84,
dbNumber:=1, byteOffset:=#ii,
bitOffset:=#j);
Anweisungen
299