-
Bereich der
Erfindung
-
Die Erfindung betrifft Datenübertragungen und
insbesondere eine Datenübertragungsvorrichtung,
die einen Universalrechner und einen Adapter umfasst, der dazu dient,
den Rechner an ein Datenübertragungsnetzwerk
anzuschließen.
-
Beschreibung
des Stands der Technik
-
In letzter Zeit wurden Adapter entwickelt,
die es Personal Computern, insbesondere tragbaren Rechnern, ermöglichen, über eine
Funktelefonnetzwerk-Infrastruktur mit anderen Rechnern zu kommunizieren
(siehe WO-A-96/35286).
-
Für
die heutige Generation von tragbaren Rechnern werden diese Adapter
gewöhnlich
in Form von Datenkarten vertrieben, die gemäß den bekannten Standards der
Personal Computer Memory Card International Association (PCMCIR)
konfiguriert sind. Diese Datenkarten enthalten die Logik und die
Software, die es einem tragbaren Rechner ermöglichen, mittels eines Mobiltelefons,
wie zum Beispiel eines GSM-Mobiltelefons, über eine Funktelefonnetzwerk-Infrastruktur
zu kommunizieren. Mit den vorhandenen Funktionen des Mobiltelefons
wird eine Datenübertragung über das
Funktelefonnetzwerk ermöglicht,
wobei das Mobiltelefon die verschiedenen Protokolle unterstützt, die
zur Kommunikation über das
Netzwerk notwendig sind.
-
Ähnliche
Einheiten, die als Sendeempfänger bekannt
sind und die Form von PCMCIA-Datenkarten haben, selbst aber die
gesamten Hardware- und Software-Funktionen eines Mobiltelefons enthalten, so
dass ein gesondertes Mobiltelefon nicht notwendig ist, wurden ebenfalls
vorgeschlagen.
-
Im Allgemeinen sind diese bekannten
Datenkarten beiden Typs so ausgelegt, dass die Karte dem Rechner
als ein herkömmlicher
drahtgebundener Modem erscheint. Anders ausgedrückt, der Rechner kommuniziert
mittels der Karte über
einen seiner seriellen COM-Anschlüsse und verwendet dabei genau dieselben
Schnittstellen und Befehle, die er mit einem drahtgebundenen Modem
verwenden würde. Der
Vorteil dieses Lösungsansatzes
besteht darin, dass vorhandene Software, die zur Verwendung mit herkömmlichen
drahtgebundenen Modems entwickelt wurde, unverändert mit den Datenkarten genutzt
werden kann.
-
Moderne digitale Funktelefonnetzwerke
bieten jedoch mehr Funktionen als die herkömmlichen analogen Telefonnetzwerke,
für die
herkömmliche Modems
entwickelt wurden. Folglich gibt es Unterschiede zwischen einem
herkömmlichen
Modem und einer Datenkarte, die beispielsweise zur Verwendung mit
einem GSM-Netzwerk
ausgelegt ist. Eine GSM-Datenkarte kann zum Beispiel nicht nur Datenübertragungsdienste
anbieten, sondern gegebenenfalls auch ergänzende Dienste, die von dem
Netzwerk angeboten werden, wie zum Beispiel die Anzeige der Gebühren je
Anruf und die Anzeige der Signalstärke sowie Funkruf- oder Nachrichtenübermittlungsdienste
nutzen. In modernen Netzwerken wie zum Beispiel GSM-Netzwerken können solche
zusätzlichen Dienste
gleichzeitig mit Sprach- oder Datenübertragungen genutzt werden,
so dass man gleichzeitig eine Kurznachricht über das Netzwerk und einen
Anruf empfangen kann.
-
Jedoch stellt die Nutzung dieser
zusätzlichen Funktionen über eine
herkömmliche
Datenkarte ein Problem dar, da die Architektur der heutigen Personal
Computer eine gemeinsame Benutzung von seriellen COM-Anschlüssen durch
gleichzeitig laufende Anwendungen nicht zulässt. Wenn ein Benutzer also beispielsweise
möchte,
dass eine Fax-Anwendung, die auf den Empfang von eingehenden Telefaxen über die
Datenkarte wartet, aktiv bleibt, kann er nicht gleichzeitig Kurznachrichten
lesen, die er mit Hilfe einer anderen Anwendung empfängt. Um
eingehende Kurznachrichten empfangen zu können, muss der Benutzer die
Fax-Anwendung beenden und neu starten, was umständlich oder wenig komfortabel
sein kann.
-
Es sind Einheiten bekannt, die zumindest
die Nutzung von Funkrufdiensten durch einen Rechner und eine Datenkarte
ermöglichen.
Die US-Patentschrift Nr. 5 455 572 beschreibt beispielsweise einen Pager
(Funkrufempfänger)
in Form von einer peripheren Einheit eines Rechners, der über eine Nur-Speicher-PCMCIA-Schnittstelle
mit einem Rechner kommuniziert. Jedoch stellt diese Einheit nicht gleichzeitig
eine Datenübertragungsverbindung über einen
seriellen COM-Anschluss zu dem Netzwerk bereit.
-
ZUSAMMENFASSUNG
DER ERFINDUNG
-
Es ist eine Aufgabe der vorliegenden
Erfindung, das vorstehend beschriebene Problem zu lösen, indem
ein Universalrechner bereitgestellt wird, der in der Lage ist, die
gleichzeitige Nutzung einer Vielzahl von Datendiensten in einem
Netzwerk durch mehr als ein Anwendungsprogramm über eine Datenkartenschnittstelle
zu unterstützen.
-
Kurz gesagt, diese Aufgabe wird durch
eine Datenübertragungsvorrichtung
gelöst,
die einen Universalrechner und einen Adapter umfasst, der dazu dient,
den Rechner an ein Datenübertragungsnetzwerk
anzuschließen,
wobei der Rechner und der Adapter über eine Datenkartenschnittstelle
verbunden sind, wobei der Universalrechner einen ersten Treiber
umfasst, der so ausgelegt ist, dass er einem ersten Anwendungsprogramm über die
Datenkartenschnittstelle unter Verwendung eines seriellen COM-Anschlusses
eine Datenübertragungsverbindung
zu dem Datenübertragungsnetzwerk
bereitstellt, und durch einen zweiten Treiber gekennzeichnet ist,
der so ausgelegt ist, dass er einem zweiten Anwendungsprogramm ermöglicht,
gleichzeitig mit dem ersten Anwendungsprogramm mit dem Adapter zu
kommunizieren, und dadurch gekennzeichnet ist, dass der Adapter
so ausgelegt ist, dass er dem zweiten Anwendungsprogramm die Nutzung
zusätzlicher Datendienste
ermöglicht,
die von dem Netzwerk über das
zweite Treiberprogramm bereitgestellt werden.
-
Auf diese Weise wird zusätzlich zu
seinem seriellen Übertragungskanal
ein alternativer Übertragungskanal
zwischen der Datenkarte und dem Rechner bereitgestellt, der anderen
Anwendungen die Nutzung der von dem Netzwerk bereitgestellten zusätzlichen
Datendienste ermöglicht.
-
In mindestens einer bevorzugten Ausführungsform
umfasst der Adapter einen Speicher, der mindestens einen Bereich
hat, welcher von dem Rechner und dem Adapter gemeinsam benutzt wird. Der
zweite Treiber kann dann über
den gemeinsam benutzten Speicher mit dem Adapter kommunizieren.
-
KURZE BESCHREIBUNG
DER ZEICHNUNGEN
-
Die vorstehenden und andere Aufgaben,
Aspekte und Vorteile lassen sich anhand der folgenden ausführlichen
Beschreibung einer bevorzugten Ausführungsform der Erfindung unter
Bezugnahme auf die Zeichnungen besser verstehen, in denen:
-
1 eine
Prinzipdarstellung ist, die eine Datenübertragungsvorrichtung zeigt;
-
2 Datenelemente
zeigt, die im RAM in der Vorrichtung von 1 gespeichert werden;
-
die 3, 4, 5 und 6 Flussdiagramme
sind, die den Betrieb des in 1 gezeigten Übertragungskanals 205 veranschaulichen.
-
AUSFÜHRLICHE
BESCHREIBUNG VON BEVORZUGTEN AUSFÜHRUNGSFORMEN DER ERFINDUNG
-
Bezug nehmend auf 1, ist schematisch eine Datenübertragungsvorrichtung 100 gezeigt,
die einen Universalrechner 110 umfasst, der ein tragbarer
Laptop-Rechner wie zum Beispiel ein Rechner der tragbaren Rechnerfamilie
IBM ThinkPad sein kann, die von der International Business Machines Corporation
(IBM und ThinkPad sind Warenzeichen der IBM Corp) angeboten wird.
-
Die hier beschriebene Ausführungsform
wurde zur Verwendung mit mobilen GSM-Telekommunikationsnetzwerken
entwickelt. GSM ist eine Reihe von Standards für mobile Telekommunikationsnetzwerke,
die vom European Telecommunications Standards Institute (ETSI) verabschiedet
wurde. Technische Einzelheiten der Standards finden sich in einer Reihe
von GSM Technical Specifications, die vom ETSI bezogen werden können.
-
Es dürfte klar sein, dass man bei
der Entwicklung dieser Ausführungsform
zwar die speziellen Merkmale und Funktionen der vorhandenen GSM-Netzwerke
vor Augen hatte, doch wurde natürlich
die Möglichkeit
nicht ausgeschlossen, denselben Lösungsansatz auch auf drahtgebundene
und drahtlose Netzwerke anderer Arten anzuwenden, die ähnliche
zusätzliche
Datendienste bereitstellen.
-
An den Rechner 110 ist ein
Adapter 120 angeschlossen, der es ermöglicht, den Rechner über eine
GSM-Einheit 130 und eine Antenne 140 mit einem
GSM-Datenübertragungsnetzwerk
zu verbinden. In der bevorzugten Ausführungsform liegt der Adapter 120 in
Form von einer Datenkarte vor, die über eine geeignete Schnittstelle
an ein Mobiltelefon (nicht gezeigt) angeschlossen ist. In diesem
Fall wird die Funktion der GSM-Einheit 130 von
dem Mobiltelefon bereitgestellt. Alternativ dazu kann der Adapter 120 in
Form von einer Datenkarte vorliegen, die selbst die notwendige GSM-Funktionalität 130 enthält.
-
Die GSM-Einheit 130 wird
in herkömmlicher Weise
betrieben, und ihr Betrieb wird hier nicht ausführlich beschrieben.
-
Der Rechner 110 und der
Datenkartenteil des Adapters 120 sind über die PCMCIA-Schnittstelle 150 miteinander
verbunden. Der Aufbau und die Steuerung der PCMCIA-Schnittstelle
entsprechen der im "PC
Card Standard",
Ausgabe 2.0, beschriebenen Weise, die von der Personal Computer
Memory Card International Association veröffentlicht wurde.
-
Natürlich wird die Möglichkeit
nicht ausgeschlossen, denselben Lösungsansatz auch auf andere
Datenkartenschnittstellen als die vorstehend beschriebene PCMCIA-Schnittstelle
anzuwenden.
-
Wie es normalerweise üblich ist,
umfasst der Rechner 110 ein erstes Treiberprogramm 160,
das einem ersten Anwendungsprogramm 170 über die PCMCIA-Schnittstelle
unter Verwendung eines seriellen COM-Anschlusses eine Datenübertragungsverbindung
zu dem GSM-Netzwerk bereitstellt. Das erste Anwendungsprogramm kann
beispielsweise eine Fax-Anwendung
oder eine Anwendung für
elektronische Post, ein Browser-Programm für das World Wide Web, ein Datenbank-Zugriffsprogramm
oder irgendeine andere Art von Programm sein, das eine Datenübertragungsverbindung
zu einem Datenübertragungsnetzwerk
erfordert.
-
Die Anwendung 170 kommuniziert über den Treiber 160 interaktiv
mit der PCMCIA-Schnittstelle 150, und zwar so, als wäre sie über einen
seriellen COM-Anschluss mit einem herkömmlichem Modem verbunden.
-
Der Adapter 120 enthält einen
Direktzugriffspeicher (RAM) 180. Der RAM 180 enthält einen
Bereich, der vom Rechner 110 und dem Adapter 120 gemeinsam
benutzt wird, wodurch beide Teile miteinander Nachrichten austauschen
können,
die Befehle und Antworten enthalten. In dieser Ausführungsform sind
diese Befehle und Antworten zusätzliche
AT-Befehle, mit denen insbesondere die zusätzlichen Dienste gesteuert
werden sollen, die das GSM-Netzwerk bereitstellt, wie zum Beispiel
die ergänzenden Dienste
oder die Nachrichtenübermittlungsdienste. Natürlich werden
herkömmliche
AT-Befehle und AT-Antworten ebenfalls über den Treiber 160 übertragen,
wie sie bei einem herkömmlichen
Modem über einen
beliebigen COM-Anschluss übertragen
würden.
-
Im Rechner 100 gibt es ein
zweites Treiberprogramm 190, das einem zweiten Anwendungsprogramm 200 die
Kommunikation mit der Datenkarte ermöglicht, indem es Nachrichten,
die AT-Befehle und AT-Antworten enthalten, in diesen gemeinsam benutzten
RAM-Bereich schreibt
und aus ihm liest. Dies kann stattfinden, während die erste Anwendung läuft und
stellt einen alternativen Übertragungskanal 205 zwischen
dem Rechner 110 und dem Adapter 120 bereit.
-
Wie nachstehend beschrieben wird,
ist der Adapter 120 so ausgelegt, dass er dem Anwendungsprogramm 200 die
Nutzung von ergänzenden Diensten
und Nachrichtenübermittlungsdiensten,
die vom GSM-Netzwerk bereitgestellt werden, über den alternativen Kanal 205 ermöglicht,
beispielsweise, indem er die Signalstärke laufend auf dem Rechnerbildschirm
anzeigt oder eine Einrichtung bereitstellt, die es ermöglicht,
Nachrichten auf dem Rechnerbildschirm zu lesen. Es dürfte klar
sein, dass es viele verschiedene Nutzungsmöglichkeiten für die Informationen
gibt, die über
solche zusätzlichen
Dienste zur Verfügung
stehen, und dass die Anwendung 200 daher über ein
breit gefächertes
Funktionsspektrum verfügen
kann.
-
Einzelheiten über das Übertragungsprotokoll, das in
der bevorzugten Ausführungsform
zwischen dem Rechner 110 und dem Adapter 120 verwendet
wird, werden nachstehend ausführlich
beschrieben. Die gemeinsame Nutzung eines Speicherbereichs durch
einen Rechner und eine Datenkarte über eine PCMCIA-Datenkartenschnittstelle und
das Mittel, mit dem sich dies unter Verwendung von handelsüblichen
Chipsätzen
ohne weiteres realisieren lässt,
sind dem Fachmann bekannt und brauchen hier nicht ausführlich beschrieben
zu werden. Ein solcher Mechanismus hat den Vorteil, dass er verhältnismäßig einfach
auszuführen
ist, jedoch kann er nur bei einem geringen Durchsatz verwendet werden,
da er nicht auf Unterbrechungen basiert und sowohl der Rechner 110 als
auch der Adapter 120 das gemeinsam genutzte RAM 180 nach
Nachrichten abfragen müssen,
wie nachstehend beschrieben wird. Bei dieser ganz bestimmten Anwendung
ist das Verkehrsaufkommen, das über
den alternativen Kanal 205 abgewickelt wird, gering, da
sie nur AT-Befehle und AT-Antworten unterstützt, die höchstens ein paar Nachrichten
pro Sekunde ausmachen.
-
Der gemeinsam benutzte Speicherbereich im
RAM 180 besteht aus den folgenden Elementen, die in 2 schematisch gezeigt sind:
einem Statusbyte 210, das vom Adapter 120 verwaltet
wird; einem Fehlercode-Byte 220, das vom Adapter 120 verwaltet wird;
einem Befehlsbyte 230, das vom Rechner 110 verwendet
wird; einem RSSI-(Funksignalstärkeanzeige-)Byte,
das vom Adapter 120 verwaltet wird; einem Ausgangspufferspeicher 240 und
zugehörigem Ausgangsmerker 250,
das vom Rechner 110 verwendet wird, um AT-Befehle an den
Adapter 120 zu senden; und einem Eingangspufferspeicher 260 und
seinem zugehörigen
Eingangsmerker 270, der vom Adapter 120 verwendet
wird, um AT- Antworten
und AT-Anzeigen an den Rechner 110 zu senden. Diese Elemente
werden nachstehend ausführlicher
beschrieben.
-
Das Statusbyte 210 kann
vom Adapter 120 beschrieben, vom Rechner 110 aber
nur gelesen werden. Das Statusbyte 210 enthält die folgenden Elemente:
- (i) Ein Statusbit zeigt an, ob der Adapter
zum Empfang und zur Verarbeitung von Befehlen, entweder vom Befehlsbyte 230 oder
vom Ausgangspufferspeicher 240, bereit ist. Dieses Bit
sollte gewöhnlich
eingeschaltet sein, ist aber ausgeschaltet, wenn der Adapter eine
Wiederherstellung einleitet oder durchführt.
- (ii) Ein Aktivitätsbit
zeigt an, ob die Verbindung mit dem GSM-Netzwerk aktiv ist, d. h.,
dass ein Ruf ausgeführt
wird.
- (iii) Ein Richtungsbit zeigt an, ob nichtangeforderte AT-Antworten und AT-Anzeigen
vom Adapter 120 an den seriellen COM-Anschluss oder an
den alternativen Kanal 205 geleitet werden. Nach der Initialisierung
des Adapters werden sie standardmäßig zum seriellen COM-Anschluss
geleitet. Diese Richtung kann vom Rechner 110 mit Hilfe des
Befehlsbytes 230 geändert
werden.
-
Das Fehlercode-Byte 220 kann
vom Adapter 120 beschrieben, vom Rechner 110 aber
nur gelesen werden. Es enthält
das Ergebnis des Selbsttests beim Einschalten (POST), der vom Adapter 120 bei der
Initialisierung oder auf Anforderung des Rechners 110 durchgeführt wird.
Werte ungleich Null zeigen an, dass der Adapter 120 einen
Fehler festgestellt hat.
-
Das Befehlsbyte 230 ist
sowohl vom Rechner 110 als auch vom Adapter 120 les-
und beschreibbar. Es enthält
die folgenden Elemente:
- (i) Ein Richtungsbit
gibt an, ob nichtangeforderte GSM-AT-(+C– )Anzeigen vom Adapter 120 an
den Rechner zum seriellen COM-Anschluss
oder an den alternativen Kanal weitergeleitet werden sollen.
- (ii) Ein Testanforderungsbit gestattet dem Rechner 110, um einen
Selbsttest des Adapters 120 zu ersuchen. Der Adapter 120 setzt
dieses Bit zurück,
wenn der Selbsttest abgeschlossen ist, und stellt das Ergebnis ins
Fehlercode-Byte 220.
- (iii) Mit dem Anforderungsbit "alternativen Kanal freigeben" kann der Rechner 110 die
Anforderung stellen, dass der Adapter 120 den alternativen
Kanal 205 freigibt. Der Einheitentreiber 190 fordert diese
Operation an, wenn er eine Nachricht senden muss und der Ausgangskanal
nicht empfangsbereit ist. Dieser Zustand sollte normalerweise nicht
eintreten, da der Übertragungsmechanismus
zwischen der Anwendung 200 und dem Adapter 120 ein
Eins-zu-eins-Übertragungsmechanismus
ist. Wenn er diese Anforderung empfängt, verwirft der Adapter jeden
AT-Befehl, den er gerade
verarbeitet, und sendet keine abschließende Antwort für den Befehl
an den Rechner 110, anschließend setzt er den Anzeiger "Nachricht vorhanden" (Message Available)
des Ausgangskanals (nachstehend beschrieben) zurück, was bedeutet, dass jeder
anstehende AT-Befehl vom
Rechner 110 verworfen wird, und zum Schluss setzt er den
Anzeiger "Empfangsbereit" (Ready to Receive)
des Ausgangskanals (nachstehend beschrieben), was den Einheitentreiber 190 wieder
zum Senden von AT-Befehlen berechtigt.
- (iv) Mit einem Warmstart-Anforderungsbit kann der Rechner 110 die
Anforderung stellen, dass der Adapter 120 einen Warmstart
durchführt.
Der Rechner 110 kann eine solche Operation anfordern, wenn
er feststellt, dass sich der Adapter in einem abnormalen Zustand
befindet, beispielsweise, weil er keine Befehle mehr annimmt und sich
weigert, den alternativen Kanal freizugeben.
-
Das RSSI-Byte 240, enthält die Anzeige
der Funksignalstärke
vom GSM-Netzwerk und wird vom Adapter in regelmäßigen Abständen aktualisiert, zum Beispiel
einmal pro Sekunde. Es kann vom Rechner 110 jederzeit gelesen
werden.
-
Der Ausgangskanal wird vom Rechner 110 verwendet,
um Nachrichten, die AT-Befehle enthalten, an den Adapter 120 zu
senden. Er setzt sich aus dem Pufferspeicher 250 und dem
Signalisierungsanzeiger 260 zusammen. Der Pufferspeicher 260 enthält 512 Bytes
und gestattet dem Rechner 110 die Übergabe von AT-Befehlen an
den Adapter 120. Vorzugsweise sind die AT-Befehle Einzelbefehle,
d. h., sie sind nicht verkettet. Der Pufferspeicher 260 muss groß genug
sein, um Kurznachrichten in die Protokolldateneinheiten (PDUs) aufnehmen
zu können. PDUs
für GSM-Kurznachrichtendienste
(SMS) haben eine Länge
von bis zu 140 Byte und sind hexadezimal codiert, wobei zwei Zeichen
pro PDU-Byte verwendet werden. Wenn die Länge des AT-Befehls hinzukommt,
ergibt sich eine Länge
von über
256 Byte, jedoch weniger als 512 Byte.
-
Der Ausgangsmerker 260 enthält die folgenden
Elemente:
- (i) einen Anzeiger "Empfangsbereit" (Ready to Receive
(RR)), der vom Adapter 120 gesetzt wird, um den Rechner 110 darüber zu informieren,
dass er zum Empfang einer neuen Nachricht bereit ist;
- (ii) einen Anzeiger "Nachricht
vorhanden" (MA), der
vom Rechner 110 verwendet wird, um dem Adapter 120 zu
signalisieren, dass im Datenpufferspeicher 250 eine neue
Nachricht für
ihn vorhanden ist.
-
Der Eingangskanal wird vom Adapter 120 verwendet,
um Nachrichten, die AT-Befehle enthalten, an den Rechner 110 zu
senden. Er ist im Allgemeinen symmetrisch zum Ausgangskanal und
besteht aus dem Pufferspeicher 270 und dem Signalisierungsanzeiger 280.
Der Pufferspeicher 270 enthält 512 Bytes und gestattet
dem Adapter 120 die Übergabe
von AT-Befehlen
an den Rechner 120.
-
Der Eingangsmerker 270 enthält die folgenden
Elemente:
- (i) einen Anzeiger "Empfangsbereit" (Ready to Receive
(RR)), der vom Rechner 110 gesetzt wird, um den Adapter 120 darüber zu informieren, dass
er zum Empfang einer neuen Nachricht bereit ist;
- (ii) einen Anzeiger "Nachricht
vorhanden" (MA), der
vom Adapter 120 verwendet wird, um dem Rechner 110 zu
signalisieren, dass im Datenpufferspeicher 270 eine neue
Nachricht für
ihn vorhanden ist.
-
Ein aus zwei Bit bestehender Nachrichtentyp-Anzeiger
wird verwendet, um den Rechner 110 über die Art des Inhalts in
der Nachricht zu informieren. Es gibt drei Arten von Inhalten:
- (i) eine Zwischenantwort auf einen AT-Befehl
wie zum Beispiel +CBR: Telefonbucheinträge, die vom Adapter als Antwort
auf einen AT-Befehl "+CPBR
= ?" vom Rechner 110 gesendet
werden;
- (ii) eine nichtangeforderte AT-Anzeige wie zum Beispiel eine
Aufanzeige oder einen Netzwerkregistrierungsstatus "+CREG:";
- (iii) eine abschließende
Antwort, z. B. OK, ERROR (FEHLER), +CME ERROR.
-
Diese drei Möglichkeiten werden mit Hilfe von
2 Bits des Eingangskanal-Merkerbytes 280 codiert.
-
Der Betrieb des alternativen Kanals 205 wird nun
beschrieben.
-
Die Prozedur, die befolgt wird, wenn
der Rechner 110 dem Adapter 120 eine Nachricht übergeben
möchte,
ist in Form eines Flussdiagramms in 3 gezeigt.
-
Im Schritt 300 wird zuerst
das Statusbit des Statusbytes 210 geprüft, um festzustellen, ob der
Adapter 120 zum Empfang von Befehlen bereit ist. Wenn der
Adapter 120 nicht bereit ist, informiert der Einheitentreiber 190 die
Anwendung 200, dass ihr AT-Befehl zurückgewiesen wurde. Die Anwendung 200 muss
dann entscheiden, ob sie wartet oder den Adapter 120 durch
einen Kaltstart zurücksetzt
(hard reset), was davon abhängig
ist, ob er sich in einer Initialisierungsphase oder in einem stabilen
Zustand befindet.
-
Als Nächstes wird im Schritt 310 der
Anzeiger "Empfangsbereit" (RR) des Ausgangskanals
geprüft.
Wenn der Ausgangs-RR-Anzeiger eingeschaltet ist, ist der Adapter 120 zum
Empfang der Nachricht bereit. Wenn der Ausgangs-RR-Anzeiger ausgeschaltet
ist, ist etwas nicht in Ordnung, da der Eins-zu-Eins-Übertragungsmechanismus zwischen dem
Rechner 110 und dem Adapter 120 bedeutet, dass,
wenn die Anwendung 200 einen neuen Befehl zum Versenden
an den Adapter hat, dies daran liegen muss, dass der Adapter 120 die
endgültige
Antwort auf den vorherigen AT-Befehl an den Rechner 110 gesendet
und deshalb den Ausgangskanal freigegeben hat. In diesem Fall bittet
der Einheitentreiber 190 um die Freigabe eines alternativen
Kanals, wie vorstehend in Bezug auf das Befehlsbyte 230 beschrieben
wurde, und informiert die Anwendung 200, dass ihr AT-Befehl
zurückgewiesen
wurde. Wenn die Freigabeaktion nicht erfolgreich ist, muss der Rechner 110 das
nächste
Mal eine Nachricht an den Adapter 120 senden, die besagt,
dass die Anwendung 200 den Adapter 120 mit einem
Warmstart oder einem Kaltstart zurücksetzen könnte.
-
Im Schritt 320 wird die
Nachricht dann in den Ausgangskanal-Pufferspeicher 240 kopiert.
-
Zum Schluss wird der MA-Anzeiger
im Ausgangsmerker 250 so gesetzt, dass er den Adapter 120 darüber informiert,
dass eine Nachricht auf ihn wartet.
-
Die Prozedur, die beim Adapter 120
zum Empfang von Nachrichten vom Rechner 110 befolgt wird,
ist in Form eines Flussdiagramms in 4 gezeigt.
-
Im Schritt 400 fragt der
Adapter 120 den MA-Anzeiger im Ausgangsmerker ab, um festzustellen,
ob eine Nachricht vorhanden ist. Wenn keine Nachricht wartet, wird
diese Abfrage in regelmäßigen Abständen wiederholt,
wie durch den Steuerpfad 405 angegeben ist. Wenn der MA-Anzeiger
das Vorhandensein einer Nachricht anzeigt, wird der RR-Anzeiger
des Ausgangspufferspeichers im Schritt 410 zurückgesetzt,
um den Rechner 110 darüber
zu informieren, dass der Adapter 120 eine neue Nachricht erst
wieder annimmt, wenn die vorhandene verarbeitet und beantwortet
worden ist. Im Schritt 420 wird die Nachricht dann dem
Ausgangspufferspeicher 240 entnommen. Anschließend wird.
der in der Nachricht enthaltene AT-Befehl im Schritt 430 verarbeitet.
Im Schritt 440 werden dem Rechner 110 alle erforderlichen
Zwischenantworten über
den Eingangskanal gesendet. Die abschließende Antwort auf den AT-Befehl,
d. h. "OK", "ERROR" oder "+CME ERROR", wird im Schritt 450 an
den Rechner 110 gesendet.
-
Im Schritt 460 wird schließlich der
RR-Anzeiger des Ausgangsmerkers gesetzt, um den Rechner 110 darüber zu informieren,
dass der Adapter 120 zum Empfang der nächsten Nachricht bereit ist.
Der Adapter 120 beginnt dann wieder damit, den MA-Anzeiger
in regelmäßigen Abständen auf
neue Nachrichten abzufragen.
-
Die Schritte, die vom Adapter 120 durchgeführt werden,
wenn er dem Rechner 110 eine Nachricht übergeben muss, sind in Form
eines Flussdiagramms in 5 gezeigt.
Der Prozess ist wie folgt.
-
Zuerst wird der Anzeiger "Empfangsbereit" des Eingangskanals
im Schritt 500 geprüft.
Wenn er eingeschaltet ist, ist der Rechner 110 zum Empfang einer
Nachricht bereit. Wenn er ausgeschaltet ist, ist der Rechner 110 nicht
zum Empfang einer Nachricht bereit. Dieser letztere Zustand kann
eintreten, wenn der Adapter 120 versucht, mit einer höheren Frequenz
als der Abfragefrequenz des Einheitentreibers 190 Nachrichten
an den Rechner 110 zu senden. Deshalb stellt der Adapter 120 die
Nachricht in diesem Fall in die Warteschlange und wartet eine gewisse
Zeit, bis der Eingangskanal vom Rechner 110 freigegeben
wird. Wenn der Eingangskanal jedoch nicht freigegeben wird, wird
der Ausgangskanal vom Adapter 120 gesperrt, und es kommt
zu einer Blockierung. Sofern sie nicht selbst hängt, ist die Anwendung 200 so
ausgelegt, dass sie die Blockierung erkennt, wenn ihre Versuche,
Nachrichten an den Adapter zu senden, wiederholt fehlschlagen, und
in diesem Fall muss sie den Adapter zurücksetzen.
-
Es sei erwähnt, dass der alternative Kanal 205 in
dieser Hinsicht nicht symmetrisch ist. Der Rechner 110 kann
den Adapter ersuchen, den Kanal freizugeben oder zurückzusetzen,
wenn er ein Problem feststellt, wohingegen der Adapter 120 keine Maßnahme vom
Rechner 110 anfordern kann. Die Herrschaft über den
alternativen Kanal 205 hat der Rechner 110, und über die
Anwendung 200 ist er für die
Sicherstellung von dessen normalem Betrieb und die Entscheidung über Maßnahmen
zur Fehlerbehebung verantwortlich.
-
Im Schritt 510 wird die
Nachricht als Nächstes
in den Eingangspufferspeicher 260 kopiert. Im Schritt 520 wird
der MA-Anzeiger des Eingangsmerkers 270 gesetzt, um den
Rechner 110 darüber
zu informieren, dass eine Nachricht auf ihn wartet. Die Anzeiger
für die
Nachrichtenart des Eingangskanals werden im Schritt 530 entsprechend
gesetzt.
-
Nur wenn die an den Rechner 110 gesendete Nachricht
die abschließende
Antwort auf einen AT-Befehl enthält,
setzt der Adapter 120 schließlich den RR-Anzeiger des Ausgangsmerkers 250,
um den Rechner 110 darüber
zu informieren, dass der laufende AT-Befehlsprozess abgeschlossen
ist und er den nächsten
Befehl senden kann.
-
Die Prozedur, die befolgt wird, damit
der Rechner 110 Nachrichten vom Adapter 120 empfangen
kann, ist in Form eines Flussdiagramms in 6 gezeigt.
-
Im Schritt 600 fragt der
Einheitentreiber 190 den MA-Anzeiger im Eingangsmerker 270 ab,
um festzustellen, ob eine Nachricht vorhanden ist. Wenn keine Nachricht
wartet, wird diese Abfrage in regelmäßigen Abständen wiederholt. Wenn der Eingangs-MA-Anzeiger anzeigt,
dass eine Nachricht vorhanden ist, wird der RR-Anzeiger des Eingangsmerkers 270 im
Schritt 610 zurückgesetzt,
um den Adapter 120 darüber
zu informieren, dass er eine neue Nachricht erst wieder annimmt,
wenn die vorhandene verarbeitet und an die Anwendung 200 weitergeleitet
worden ist. Im Schritt 620 wird die Nachricht dann dem
Eingangspufferspeicher 260 entnommen. Anschließend wird
der in der Nachricht enthaltene AT-Befehl im Schritt 630 der
Anwendung 200 übergeben.
-
Die Anwendung 200 ist für die Verarbeitung des
Inhalts der Nachricht verantwortlich. Im Schritt 640 wird
schließlich
der RR-Anzeiger des Eingangsmerkers gesetzt, um den Adapter 120 darüber zu informieren,
dass er zum Empfang der nächsten
Nachricht bereit ist. Der Einheitentreiber 190 beginnt
dann wieder damit, den MA-Anzeiger in regelmäßigen Abständen auf neue Nachrichten abzufragen.