Herunterladen Diese Seite drucken

turck TBEN-S2-2COM-4DXP Betriebsanleitung Seite 147

Kompaktes i/o-modul für serielle datenübertragung

Werbung

9.3.2
Daten empfangen
Das folgende Flussdiagramm beschreibt die Sequenz zum Empfangen von Daten.
IF Receive complete := True
IF Receive complete := FALSE
Abb. 73: Empfangssequenz
Empfangssequenz
Initial-Zustand: „Empfangsbestätigung" (Receive complete) ist FALSE (1.).
 Ausgangsprozesswert „Empfangen" (Receive) auf TRUE setzen (startet den Empfänger) (2.).
 Warten bis der Eingangsprozesswert „Empfangsbestätigung" (Receive complete) = TRUE ist,
oder ein Fehler signalisiert wird (3.).
 Fehlerbehandlung durchführen, falls ein Fehler signalisiert wurde und weiter bei (5.).
 Empfangene Daten vom Empfangspuffer lesen und verarbeiten (5.).
 Ausgangsprozesswert „Empfangen" (Receive) auf FALSE setzen (stoppt den Empfänger) (6.).
 Warten bis der Eingangsprozesswert „Empfangsbestätigung" (Receive complete) = FALSE ist.
 Springe zu 1 für die nächste Empfangssequenz.
Folgende Punkte beim Empfangen beachten:
Zwischen zwei Sendevorgängen muss der Empfänger zeitweise deaktiviert werden (vgl. Schritte
5...8). Die Dauer der Deaktivierung hängt von der eingestellten protokollspezifischen Aktualisie-
rungszeit und der SPS-Zykluszeit ab. In dieser Zeit können keine Daten empfangen werden.
Der Empfang ist auf 192 Bytes pro Telegramm
2018/03
1. Init
2. Start receiving
Receiver frame length := [expected frame length]1
Receive := TRUE
WHILE(Receive complete = FALSE
AND Frame error = FALSE
AND parity/format error = FALSE
AND Buffer overflow = FALSE
AND Timeout = FALSE
3. Wait for data
AND invalid RX length = FALSE
IF(Frame error = TRUE
OR parity/format error = TRUE
OR Buffer overflow = TRUE
OR Timeout = TRUE
OR invalid RX length = TRUE
4. Error handling
5. Process received data
6. Reset receiver
Receive := FALSE
limitiert.
141

Werbung

loading