13.07.2015 Aufrufe

Erweitertes Handbuch - SYMEK GmbH

Erweitertes Handbuch - SYMEK GmbH

Erweitertes Handbuch - SYMEK GmbH

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

denkbar, das alle obigen Informationen nutzt um einfach festzustellen, dass der Durchsatz zu gering ist unddann abbricht. Alle diese Möglichkeiten sind im Host-Mode einfach zu realisieren.Im Falle eines FehlersWas passiert, wenn irgendwas auf der Verbindung Rechner/TNC nicht in Ordnung ist? z.B. ein Wackelkontaktoder Hochfrquenz gelangt über die Verbindungsleitung in den Eingang der RS232 Schnittstelle etc. Was immerauch der Grund ist, nehmen wir an es werden Daten verstümmelt. Verbindungen nach dem RS232 Standartsind sehr zuverlässig, aber trotzdem sollte Ihr Anwender-Programm mit einem Fehlerfall fertig werden.Das Programm oder Programmstück,was den Fehlerfall behandelt, muss davon ausgehen,dass der TNC sichin einem nicht bestimmbaren Zustand befindet. Der TNC wartet vielleich gerade darauf weitere Bytes zu lesen,weil die ihm bekannte Anzahl Bytes (aus dem Byte-count) noch nicht übergeben wurden, oder der TNC warteteigentlich nur auf irgendwelche Aktivitäten des Rechners. Dieser aber hat durch fehlerhafte Datenübertragungeinen Fehlerfall entdeckt und muss versuchen die Synchronität zum TNC wiederherzustellen. Was kann mantun? Man schickt dem TNC eine Anzahl von Befehlen, die dafür sorgen sollen, dass er hoffentlich dann ineinem bekannten Zustand ist. Sinnvollerweise sollte dieses aber so durchgeführt werden, dass möglichst wenigunsinnige Sachen auf der AX.25 passieren, also nichts gesendet wird.Zunächst muss man -jetzt gehen wir davon aus,dass die Synchronität verloren ging- sich darüber im klarensein,dass alle ankommenden Daten wegzuwerfen sind, selbst die aus einer noch bestehenden Verbindung. Wirwissen nicht, wozu die Daten gehören, also können wir sie nicht verwenden. Das ist zwar schade aber nicht zuändern.Dann senden wir eine Folge von ^A's,wobei wir jeweils nach dem Zeichen warten, ob eine Antwort des TNCerscheint.Spekulieren wir ein wenig: die ersten ^A's werden dazu benutzt eine noch nicht komplette Anzahl von Bytes, dievom vorherigen Befehl dem TNC mitgeteilt wurden, aufzufüllen. Gehören diese Bytes zu einer bestehendenVerbindung, dann werden sie auch gesendet. Ist dann aber die komplette Anzahl der Bytes vom TNCempfangen (es können ja nicht mehr als 256 sein !) wirken die folgenden fünf ^A's als Befehl an den Kanal 1.Die Wahl des Zeichens ^A stellt sicher, dass der TNC irgendwann die Folge der Zeichen als Befehl interpretiert.01 01 01 01 01! ! ! ^A ^A! ! !! ! +-- zwei Bytes! +----- ein Befehl+-------- Kanal 1Nun gibt es den Befehl ^A^A nicht und der TNC kommt mit seiner Antwort :01 02 49 4E 56 41 4C 49 44 20 43 4F 4D 4D 41 4E 44 00! ! I N V A L I D C O M M A N D !! ! !! +---- Fehler mit Null abgeschlossen --++------- muss Kanal 1 sein,wie im BefehlEigentlich muss es uns gleich sein,was der TNC genau antwortet, die Fehlermeldung ist nicht eindeutig.Nehmen wir z.B. nur ein einziges ^A , das aber die Anzahl für den *byte count* befriedigt. Dieses ^A gehörtdann angenommen zu einem verstümmelten Befehl an den TNC. Der TNC wird dann mit einer Fehlermeldungkommen, die anders aussieht als die vorstehende. Was wir eigentlich suchen ist der Zeitpunkt, wo erstmalsnach dem Zeichen eine Erwiderung des TNC vorliegt. Damit ist dann der Zeitpunkt gefunden, an dem der TNCauf einen Befehl wartet.Dieses Verfahren setzt voraus, dass man lange genug wartet, nachdem man ein ^A an den TNC gesendet hat,um festzustellen, ob eine Antwort vom TNC erfolgt. Das kann den Vorgang langsam machen. Nehmen wir an,der TNC hat bis jetzt folgends erhalten:00 00 FF ,damit wartet er auf 256 Bytes und eine Antworterscheint auch erst nach 256 Bytes. Diese wird den Erfolg melden, dass die Daten übertragen wurden. Manmuss jedoch davon ausgehen, dass ein Versuch zur Rückerlangung der Synchronität nicht allzu häufignotwendig sein wird.Danksagung und KommentareEs soll hier Ronald E.Raikes,WA8DED,gedankt werden,der die AX.25 Version 2 Multi-Kanal Firmware für denTNC geschrieben hat. Ebenso für SS,dem sog. split screen Terminal-Emulator, der die Vorteile des Hostmode09.11.02 erweitertes <strong>Handbuch</strong> zum TNC Seite 25

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!