BECKHOFF C1200 Benutzerhandbuch
Seite 9
C1200 PC-Interface
Beckhoff II/O-System
Datum: 12.10.94
Version : 2.0
Seite 9 von 14
Senden und Empfangen eines Telegramms
Zuerst muß gewartet werden , bis im Sende-Status-Register das Bit 7 ( Telegramm wird
gerade gesendet) 0 wird.
Zum Senden werden die Register für Adreßbyte, Controlbytes und Datenbytes beschrieben,
entsprechend der Funktion, die ausgeführt werden soll (siehe Telegrammtypen im II/0-
Lightbus Handbuch).
Die Reservebits sollten immer auf 0 gesetzt werden. Dann werden die Statusregister für beide
Empfänger mit 0 hex beschrieben, wodurch die Bits für „Empfänger voll“, „Parityfehler“ und
„Overrun“ zurückgesetzt werden. Der Sendevorgang wird ausgelöst, in dem im
Sendestatusregister das Bit 7 gestzt wird. Das bedeutet, daß man es mit 80 hex oder 81 hex
beschreibt. Ist dabei das Bit 0 gesetzt, dann wird mit verringerter Intensität gesendet. Es wird
daher nur beim Intensitätstest während der Initialisierung gesetzt.
Dann wartet man, bis im Statusregister von einem der beiden Empfänger das Bit 7
(Telegramm ist da) gesetzt ist. Wenn im Statusregister die Bits 6 (Parityfehler) oder 5
(Overrun) gesetzt sind, muß der Vorgang wiederholt werden. Falls die Datenregister
ausgewertet werden sollen, z.B. beim Lesen eines Moduls, muß nach dem Lesen der Register
erneut im Statusregister das "Overrun"-Bit geprüft werden. Ist es inzwischen gesetzt, sind die
Daten möglicherweise ungültig und das Telegramm muß wiederholt werden.
Wenn nach einer bestimmten Zeit keine Antwort gekommen ist, sollte man mit einer
Fehlermeldung abbrechen. Dies tritt z.B. auf, wenn am Empfänger der Zentrale nichts
angeschlossen ist (Zum Wiederholen eines Telegramms genügt es, wenn im betreffenden
Sender 80 hex ins Statusregister geschrieben wird.
Arbeitet man nur mit einem Sender, bleibt die Softwarestruktur einfach.
Sender-Status-Register
Bit 7 =1
Telegramm wird gerade gesendet, Sender ist voll
Bit 7 =0
Telegramm ist abgeschickt, Sender ist leer
Bit 0 =1
Senden mit verringerter Intensität
Bit 0 =0
Senden mit normaler Intensität
Empfänger-Status-Register
Bit 7 =1
Telegramm ist empfangen, Empfänger voll
Bit 7 =0
Empfänger leer
Bit 6 =1
Empfangenes Telegramm hatte CKC-Fehler
Bit 6 =0
Empfangenes Telegramm hatte keinen CKC-Fehler
Bit 5 =1
Telegramm wurde in vollen Empfänger abgelegt
Bit 5 =0
Telegramm wurde in leeren Empfänger abgelegt
Bit 4 =
beliebig
Bit 3 =
Bit 2 =
Bit 1 =
Reservebit 1
Bit 0 =
Reservebit 2