Herunterladen Inhalt Inhalt Diese Seite drucken

Büp03E-Empfangspuffer - Bosch R200 Gebrauchsanweisung

Inhaltsverzeichnis

Werbung

BÜP03E
7.6.2
BÜP03E-Empfangspuffer
Mit dem Kommando "Empfangen" werden ständig Daten aus dem UART-Empfangspuffer
in den BÜP03E-Empfangspuffer kopiert. Die Größe dieses BÜP03E-Empfangspuffers kann
vom Anwender über einen Parameter bei dem Kommando "Empfangen" frei gewählt
werden, muß jedoch im Bereich von 10 bis 256 Byte liegen. Sonst wird eine Fehler-
meldung ausgelöst und der BÜP03E-Empfangspuffer nicht angelegt.
Der BÜP03E-Empfangspuffer wird als ein Ringspeicher verwaltet, solange der Anwender
die RD- und WR-Zeiger mit dem Kommando "Reset Empfangspuffer" nicht beeinflußt. Das
erste Wort im definierten BÜP03E-Empfangspuffer ist für den User-Zeiger reserviert. Der U-
ser-Zeiger zeigt auf das zuletzt eingelesene Zeichen. Damit stehen insgesamt maximal
254 Byte für die Zeichen zur Verfügung. Der User-Zeiger fängt bei 0 (Null) an, obwohl
das "Zeichen 1" an dritter Stelle im BÜP03E-Empfangspuffer steht.
+0
+2
+n
n+1
1+3
4
2
2+4
Abb. 7-4 BÜP03E - Empfangspuffer
Die RD- und WR-Zeiger werden zur internen Verwaltung des Ringspeichers benötigt. Die-
se Zeiger werden mit dem Kommandostart "Empfangen" immer zurückgesetzt und können
von dem Anwender mit dem Kommando "Reset-Empfangspuffer" auch jederzeit zurückge-
setzt werden. Nach dem Zurücksetzen zeigen beide Zeiger auf den Anfang des BÜP03E-
Empfangspuffers. Werden nun n-Zeichen empfangen, so wird der WR-Zeiger um n-
Zeichen hochgezählt und zeigt auf die nächste freie Stelle im BÜP03E-Empfangspuffer
(n+1). Der RD-Zeiger zeigt solange auf das zuerst empfangene Zeichen, bis der Anwen-
der mit dem Kommando "Datenkopie" die Daten gelesen hat. Dann werden RD- und WR-
Zeiger gleichgestellt und (RD_Zeiger-1) als User-Zeiger definiert.
Werden die Zeichen vom Anwender nicht rechtzeitig geholt, so kann es vorkommen, daß
der WR-Zeiger den RD-Zeiger überholt. Dies bedeutet Datenverlust. Ein Datenverlust wird
dem Anwender mitgeteilt, wenn er die Daten mit dem Kommando "Datenkopie" holt. In
diesem Fehlerfall werden die Daten nicht in den SPS-Empfangspuffer kopiert und die RD-
und WR-Zeiger von BÜP03E zurückgesetzt. Bei der nächsten "Datenkopie" werden die
Zeichen an den Anfang des SPS-Speichers kopiert.
60
*User-Zeiger
Zeichen 1
Zeichen n
BÜP03E-Empf.-P.
: RD- und WR-Zeiger nach dem Aufruf von Reset-Empfangpuffer
: WR-Zeiger nach dem Einlesen von n-Zeichen in den Empfangspuffer
: RD-Zeiger nach dem Auslesen von n-Zeichen aus dem Empfangspuffer
: n-Zeichen einlesen und an SPS ausgeben
1
*RD-
2
Zeiger
3
*WR-
4
Zeiger
1070 072 400-101

Werbung

Inhaltsverzeichnis
loading

Inhaltsverzeichnis