DE60119268T2 - Terminalgerät und Verfahren zur Datenübertragungssteuerung im Terminalgerät - Google Patents

Terminalgerät und Verfahren zur Datenübertragungssteuerung im Terminalgerät Download PDF

Info

Publication number
DE60119268T2
DE60119268T2 DE60119268T DE60119268T DE60119268T2 DE 60119268 T2 DE60119268 T2 DE 60119268T2 DE 60119268 T DE60119268 T DE 60119268T DE 60119268 T DE60119268 T DE 60119268T DE 60119268 T2 DE60119268 T2 DE 60119268T2
Authority
DE
Germany
Prior art keywords
data
buffer
status
status data
host computer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
DE60119268T
Other languages
English (en)
Other versions
DE60119268D1 (de
Inventor
Toshiaki Suwa-shi Koike
Hidetake Suwa-shi MOCHIZUKI
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Seiko Epson Corp
Original Assignee
Seiko Epson Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Seiko Epson Corp filed Critical Seiko Epson Corp
Publication of DE60119268D1 publication Critical patent/DE60119268D1/de
Application granted granted Critical
Publication of DE60119268T2 publication Critical patent/DE60119268T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • G06F13/12Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
    • G06F13/124Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware is a sequential transfer control unit, e.g. microprocessor, peripheral processor or state-machine
    • G06F13/126Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware is a sequential transfer control unit, e.g. microprocessor, peripheral processor or state-machine and has means for transferring I/O instructions and statuses between control unit and main processor

Description

  • Die Erfindung betrifft allgemein Terminalgeräte, beispielsweise Drucker, Anzeigeeinrichtungen und Bargeldeinzahlungsvorrichtungen, wie diese bei Multifunktionsgeldautomaten (ATM), Geldautomaten, POS-Systemen und in Ladengeschäften befindlichen Bankzellen verwendet werden, und betrifft insbesondere eine Übertragungssteuervorrichtung und ein Übertragungssteuerverfahren für ein Senden von Daten von einem derartigen Terminalgerät an ein Host-System.
  • ATMs, Geldautomaten, POS-Terminals, Bankzellen und andere derartige Systeme weisen typischerweise eine Hauptsteuervorrichtung, wie beispielsweise einen Personal-Computer (nachfolgend als PC oder Host-Computer bezeichnet), und mehrere Terminalgeräte auf, wie beispielsweise Drucker, Anzeigevorrichtungen, Speichereinrichtungen und Strichcodeleser, die mit dem Host-Computer verbunden sind und durch diesen gesteuert werden. Der Host-Computer steuert den Gesamtbetrieb der verschiedenen Terminalgeräte, um die gewünschte Funktionalität des jeweiligen Systems zu erzielen. Insbesondere sind der Host-Computer und die Terminalgeräte untereinander durch eine Datenkommunikationsleitung verbunden, die dem Host-Computer ermöglicht, Steuerbefehle und andere Daten an die Terminalgeräte zu senden, um die Terminalgeräte zu steuern. Die Terminalgeräte senden Daten an den Host-Computer gemäß der Funktion des jeweiligen Terminalgerätes, und senden, wenn dies vom Host-Computer angefordert wird, einen Statusreport an den Host, der den Betriebsstatus des jeweiligen Terminalgerätes angibt. Die meisten der in einem derartigen System installierten Terminalgeräte sind mit dem Host-Computer für einen Datenaustausch über die Datenkommunikationsleitung durch einen seriellen Anschluss (wie beispielsweise RS-232C) verbunden.
  • Eine Schnittstellenvorrichtung ist an jedem Ende einer jeden Kommunikationsleitung vorgesehen und eine Steuerleitung ist zum Steuern der Kommunikationsvorgänge vorgesehen. Ein Terminalgerät kann beispielsweise ein Gerätesendebereitschaftssignal (DTR-Signal) verwenden, um den Host-Computer zu benachrichtigen ob es zum Empfangen von Daten bereit ist oder nicht. Wenn das DTR-Signal in den aktiven Zustand geht, setzt der Host-Computer das Empfangsbereitschaftssignal (DSR-Signal) auf aktiv und sendet Daten, nachdem auf diese Weise bestätigt wurde, dass sich beide Seiten im Arbeitszustand befinden. Dies macht es möglich, zu verhindern, dass Daten während der Datenkommunikation verloren gehen.
  • Die Erfindung kann auf alle Arten von Terminalgeräten angewandt werden, jedoch erfolgt zur Vereinfachung die folgende Beschreibung lediglich mit Bezug auf einen Drucker, wobei dies ein häufig in ATMs, POS-Systemen, und dergleichen verwendetes Terminalgerät ist.
  • Ein Drucker kann nicht drucken, wenn irgendwelche benötigten Druckbedarfsmaterialien wie beispielsweise Druckpapier oder Tinte fehlen. Es ist daher für den Host-Computer möglich, zu überprüfen, wie viel Druckpapier und Tinte verbleibt. Insbesondere ist der Drucker konfiguriert, um Statusdaten, die ein baldiges Aufbrauchen der Tinte oder des Papiers anzeigen, an den Host- Computer zu senden, falls nur noch ein geringer Vorrat an Druckpapier oder Tinte verbleibt, und einen Tintenaufbrauchs- oder Papieraufbrauchs-Statusreport zu senden, falls der Vorrat vollständig erschöpft ist. Zusätzlich zu dem gerade Erwähnten können verschiedene weitere Statusdaten an den Host-Computer gesendet werden, einschließlich Statusdaten für 'Druckabdeckung offen', 'Tintentank entfernt', 'Papierstau' und 'Stromversorgungsfehler'.
  • Der Drucker kann nicht mehr in der Lage sein, als Terminal-Gerät zu arbeiten (ein nachfolgend als Offline-Zustand bezeichnet), falls beispielsweise ein Empfangspuffer des Druckers voll ist (Status 'voller Empfangspuffer') ein Papierstau oder ein anderer Fehler auftritt, oder die Druckerabdeckung offen ist. Falls der Drucker, d. h. das Terminalgerät offline geht, ist es erforderlich, den Host-Computer über den Offline-Status zu informieren und das Senden von Daten vom Host-Computer zu unterbrechen.
  • Daten werden an den Host-Computer reagierend auf einen Statusanfragebefehl des Host-Computers gesendet. Es gibt unterschiedliche Typen von Statusanfragebefehlen. Beispielsweise kann der Host-Computer einen Befehl an ein einzelnes Terminalgerät senden, dass dieses Terminalgerät Statusinformationen senden soll, oder er kann einen Befehl senden, der eine sogenannte ASB-(Automatic Status Back)-Funktion des Terminalgerätes zum automatischen Senden von Statusdaten aktiviert, immer wenn eine Änderung in einen speziellen Status vorliegt.
  • Eine Datenübertragungssteuervorrichtung gemäß dem Stand der Technik wird nachfolgend detaillierter mit Bezug auf 8 beschrieben. 8 ist ein Blockschaltbild eines Druckers 70, der mit einem Host-Computer eines POS-Systems verbunden ist. 8 zeigt lediglich die Hauptteile des Druckers 70. Ein Personal-Computer mit einem Allzweck-Betriebssystem kann als Host-Computer 90 verwendet werden. Der Host-Computer 90 steuert das gesamte POS-System. Auch wenn dies nicht in 8 dargestellt ist, sind zahlreiche Terminalgeräte, wie beispielsweise eine Anzeigevorrichtung und eine Bargeldschublade, die zum Bewerkstelligen der Funktionen eines POS-Systems benötigt werden, zusätzlich zum Drucker 70 mit dem Host-Computer 90 verbunden, und der Host-Computer steuert diese Terminalgeräte, indem er Daten mit diesen austauscht.
  • Der Drucker 70 wird gesteuert, indem Steuerbefehle und Daten vom Host-Computer 90 an den Drucker 70 gesendet werden. Um den Drucker 70 zu steuern, kann der Host-Computer 90 einen Befehl senden, der den Drucker 70 anweist, seinen Zustand (Status) zu melden. Reagierend auf den Befehl vom Host-Computer 90 sendet dann der Drucker 70 die angeforderten Statusdaten.
  • Der Host-Computer 90 und der Drucker 70 sind beispielsweise über Ansteuereinrichtungen für serielle Kommunikationsanschlüsse (RS-232C) verbunden. Druckersteuerbefehle und weitere vom Host-Computer 90 gesendete Daten werden über den Empfangstreiber 71 durch die Empfangseinheit 72 empfangen. Empfangene Daten werden in einem (nicht in der Figur dargestellten) Empfangspuffer in der Empfangseinheit 72 gespeichert. Im Empfangspuffer gespeicherte Daten werden durch den Befehlsinterpreter 73 in der Reihenfolge interpretiert, in der sie im Empfangspuffer gespeichert sind.
  • Der Befehlsinterpreter 73 interpretiert die Befehle und führt diese aus. Falls beispielsweise ein Druckbefehl empfangen wird, bereitet der Befehlsinterpreter 73 die Druckdaten in einem (nicht in der Figur dargestellten) Druckpuffer vor, und die Daten werden dann durch die Kopfansteuereinrichtung 76 und den durch die Drucksteuereinrichtung 74 gesteuerten Druckmechanismus 77 gesteuert. Eine Motoransteuereinrichtung 75 wickelt den Transport des Druckpapiers und das Bewegen des Kopfschlittens ab (beide nicht in der Figur dargestellt).
  • Ein Statusmonitor 80 ist mit einer Stromversorgungsspannungs-Erfassungseinrichtung 81, einem Papierdetektor 82, einem Tintendetektor 83, einem Abdeckungsdetektor 84, einem Schalterdetektor 85 zum Erfassen von Papierstaus und weiteren Detektoren 86 verbunden und überwacht den internen Zustand des Druckers 70. Eine anormale Versorgungsspannung, Vorhandensein und Menge des verbleibenden Druckpapiers, Vorhandensein und Menge der verbleibenden Tinte, ob die Abdeckungen geöffnet oder geschlossen sind, Auftreten von Papierstaus, Schlittenantriebsfehler, voller Empfangspuffer, und weitere Druckerbedingungen werden durch die Detektoren 81 bis 86 erfasst und an den Statusmonitor 80 weitergeleitet.
  • Wenn ein Statusanfragebefehl vom Host-Computer 90 gesendet wird, durchläuft er die Empfangseinheit 72 und wird durch den Befehlsinterpreter 73 interpretiert, und Statusinformationen werden dann vom Statusmonitor 80 über den Datenübertragungstreiber 78 an den Host-Computer 90 gesendet.
  • Wenn die ASB-Funktion verwendet wird, wird der Status des Druckers 70 bei jeder Statusänderung an den Host-Computer 90 gesendet. Somit kann, dadurch dass zuerst die ASB-Funktion aktiviert wird, der Host-Computer 90 automatisch über gewisse Druckerzustände (Status) informiert werden, einschließlich Fehlern, dem Abdeckungsöffnungsstatus, der Papierposition, und der verbleibenden Tintenmenge. Die durch die ASB-Funktion gesendeten Statusdaten werden nachfolgend als ASB-Daten bezeichnet.
  • Die Statusdaten können lediglich ein einziges Byte lang sein, oder sie können mehrere Bytes umfassen. Fall es sich um ein einziges Byte handelt, d. h. 8 Bit, können 8 Typen von Statusdaten übermittelt werden, und mit zunehmender Bytezahl nimmt die Menge der Statusdaten, die übertragen werden können, entsprechend zu. Ein Fall, bei dem ASB-Daten von 4 Byte Länge an den Host-Computer 90 gesendet werden, wird bei diesem Text angenommen, jedoch ist die Länge der Statusdaten für die Erfindung nicht von Bedeutung.
  • Wenn die ASB-Funktion aktiviert ist und es eine Änderung eines speziellen Status gibt, stellt der Statusmonitor 80 einen speziellen Statusreport (von 4 Byte Länge beim angenommenen Beispiel) zusammen und sendet diesen über den Datenübertragungstreiber 78 an den Host-Computer 90, nachdem bestätigt wurde, dass der Host-Computer 90 Daten empfangen kann, d. h. der Host-Computer nicht belegt ist.
  • Statusdaten wie die zuvor beschriebenen, werden als Kommunikationsdaten an den Host-Computer gesendet. Außerdem ist es, da ASB-Daten (durch die ASB-Funktion gesendete Statusdaten) automatisch an den Host-Computer gesendet werden, immer wenn es eine Statusänderung gibt, möglich, dass Statusdaten ziemlich häufig gesendet werden. Das Problem besteht darin, dass dies verursachen könnte, dass der Übertragungspuffer des Terminalgerätes voll wird (was zu einem vollständig belegten Zustand des Puffers führt), wodurch dieser nicht mehr in der Lage ist, weitere Informationen zu speichern, was möglicherweise zu einem Verlust von nach der vollständigen Belegung des Puffers erzeugten Statusdaten führt. Ein derartiges System ist in US-A-5802546 beschrieben.
  • Ein Ziel der Erfindung besteht darin, ein Terminalgerät und ein Übertragungssteuerverfahren für dieses bereitzustellen, die ermöglichen, dass eine Übertragung zum Host-Computer ohne einen Verlust von für den Host-Computer wichtigen Informationen erfolgt und der Transport durch vom Terminalgerät kontinuierlich erzeugte Statusdaten erfolgt. Ein weiteres Ziel der Erfindung besteht darin, ein Statusdatenübertragungssteuerverfahren bereitzustellen, bei dem ein kleinerer Übertragungspuffer verwendet werden kann und die Kommunikationslast beträchtlich verringert werden kann.
  • Dieses Ziel wird mit einem Gerät nach Anspruch 1 und mit einem Verfahren nach Anspruch 7 erreicht. Bevorzugte Ausführungsformen der Erfindung sind Gegenstand der abhängigen Ansprüche.
  • Dadurch dass ein dedizierter Puffer bereitgestellt wird, um kontinuierlich erzeugte Statusdaten zu speichern und zumindest die neuesten Statusdaten sowie Chronikdaten zu speichern, welche Änderungen der Statusdaten widerspiegeln, und dadurch, dass an den Host-Computer lediglich die neuesten Statusdaten und die Chronikdaten der dazu führenden Statusänderungen gesendet werden, stellt die Erfindung ein Verfahren bereit, das ermöglicht, den für eine Übertragung benötigten Puffer zu verringern und die Kommunikationslast stark zu verringern. Als Ergebnis kann eine Chronik (zeitlicher Verlauf) von Statusänderungen unter Verwendung einer geringen Datenmenge zuverlässig gespeichert und übertragen werden.
  • Statusänderungen können unter Verwendung einer minimalen Menge an Daten gespeichert werden, wenn der Übertragungspuffer voll wird, und die Übertragungslast kann daher verringert werden. Von einem Terminalgerät kontinuierlich erzeugte Statusdaten können ohne einen Verlust an wichtigen Informationen an den Host-Computer gesendet werden. Die Statusänderungschronik kann ebenfalls ohne Verluste in zuverlässiger Weise an den Host-Computer gesendet werden.
  • Weitere Ziele und Vorteile der Erfindung, sowie ein vollständigeres Verständnis von dieser gehen aus der folgenden Beschreibung bevorzugter Ausführungsformen in Verbindung mit den anliegenden Zeichnungen klar hervor, welche zeigen:
  • 1 ein Blockschaltbild eines Druckers, der ein Beispiel eines Terminalgerätes einer Ausführungsform der Erfindung bildet;
  • 2 ein Blockschaltbild, das ein Beispiel der Basiskonfiguration der Übertragungseinheit des Druckers von 1 darstellt;
  • 3 ein Ablaufdiagramm, das verwendet wird, um die Funktionsweise der Übertragungseinheit von 2 zu beschreiben;
  • 4 ein Ablaufdiagramm eines Prozesses in Zweig A, der von Schritt 100 in 3 abzweigt;
  • 5 ein Ablaufdiagramm des Mischprozesses;
  • 6 ein Blockschaltbild, das ein Beispiel der Basiskonfiguration des Mischprozessors und des ASB-Puffers der Übertragungseinheit von 2 zeigt;
  • 7 die Änderungen bei den zuletzt erzeugten Daten (Tran), Chronikdaten (Mid), und zuletzt gespeicherten Daten (New); und
  • 8 ein Blockschaltbild, das die Hauptteile eines Druckers des Standes der Technik zeigt.
  • Eine bevorzugte Ausführungsform der Erfindung wird nachfolgend mit Bezug auf die anliegenden Figuren beschrieben. Wie zuvor angemerkt, kann die Erfindung mit verschiedenen Typen von Terminalgeräten verwendet werden, wird jedoch bei der bevorzugten Ausführungsform nachfolgend mit Bezug auf einen Drucker beschrieben, bei dem es sich um einen Typ von Terminalgerät handelt, das häufig in ATM-, POS-, und Verkaufsladen-Terminalsystemen verwendet wird, der eine große Menge von Daten zum Host-Computer sendet und von diesem empfängt, und der auch zahlreiche Statustypen aufweist. Die Erfindung wird nachfolgend sogar noch spezieller mit Bezug auf einen Drucker verwendet, der bei einem POS-System verwendet wird.
  • 1 ist ein Blockschaltbild eines Druckers 2 gemäß einer bevorzugten Ausführungsform der Erfindung. Wie in 8 sind lediglich die Hauptteile des Drucker dargestellt. Die Konfiguration des Druckers 2 unterscheidet sich vom Drucker 70 in 8 dadurch, dass eine Übertragungseinheit 10 hinzugefügt wurde, welche das Senden von Daten vom Drucker 2 an den Host-Computer 90 steuert. Es sei angemerkt, dass ähnliche Teile in den 8 und 1 mit gleichen Bezugszeichen bezeichnet sind, und eine weitere Beschreibung von diesen nachfolgend entfällt.
  • Beim Senden von Daten vom Drucker 2 an den Host-Computer 90 sendet die Übertragungseinheit 10 Daten in Byteeinheiten, nachdem bestätigt wurde, dass der Host-Computer die Daten empfangen kann. Falls ein belegter Zustand des Host-Computers 90 auftritt, während die Übertragung gerade stattfindet, wird die Übertragung unterbrochen und fortgesetzt, wenn der Host-Computer 90 wieder zum Empfangen von Daten in der Lage ist.
  • Eine bevorzugte Ausführungsform der Übertragungseinheit 10 gemäß der Erfindung wird mit Bezug auf 2 beschrieben. Die Übertragungseinheit 10 weist eine Übertragungssteuereinheit 11, einen Übertragungspuffer 12 und einen Pointer-Speicher 13 auf. Wenn ein Steuersignal an die Übertragungssteuereinheit 11 gesendet wird und Statusdaten gleichzeitig vom Statusmonitor 80 an den Übertragungspuffer 12 gesendet werden, überprüft die Statussteuereinheit 11, ob der Host-Computer 90 belegt ist, und falls dies nicht der Fall ist, sendet sie die im Übertragungspuffer 12 gespeicherten Statusdaten.
  • Die Übertragungseinheit 10 bei diesem Beispiel weist auch einen ASB-dedizierten Puffer 14, einen PIR-dedizierten Puffer 15, einen Mischprozessor 16, einen XOFF-Übertragungsprozessor 17 und einen Signalleitungs-Statusprozessor 18 auf. Die ASB-Daten werden vorübergehend im ASB-dedizierten Puffer 14 gespeichert, falls irgendwelche Übertragungsdaten außer den ASB-Daten im Übertragungspuffer 12 gespeichert sind. Es wird bei dieser Ausführungsform davon ausgegangen, dass die ASB-Daten aus 4 Byte bestehen.
  • Die PIR-Daten werden vorübergehend im PIR-Puffer gespeichert, falls irgendwelche Übertragungsdaten im Übertragungspuffer 12 gespeichert sind. Es sei angemerkt, dass es sich bei den PIR-Daten um Daten handelt, welche gemäß der Prozess-ID gesendet werden, die optional durch den Host-Computer in Steuerbefehle oder Druckdaten eingefügt wird, und die an den Drucker gesendet werden und bezeichnen, dass der Steuerbefehl oder die Druckdaten vom Drucker verarbeitet wurden. Dies ermöglicht, dass der Host-Computer Daten synchronisiert mit dem internen Zustand des Druckers 2 sendet.
  • Bei dieser Ausführungsform steuert die Übertragungssteuereinheit 11 das Senden von speziellen Übertragungsdaten wie beispielsweise des XOFF-Signals und des Signalleitungsstatus mit höherer Priorität als andere Übertragungsdaten. Der XOFF-Übertragungsprozessor 17 sendet ein Abmelde-Signal (XOFF) vom Drucker 2 an den Host-Computer mit höchster Priorität. Der Signalleitungs-Statusprozessor 18 sendet Signalleitungsstatusdaten an den Host-Computer 90, um zu melden, wenn der Drucker 2 offline gegangen ist, und überträgt daher an den Host-Computer mit nächsthöherer Priorität gegenüber XOFF. Das XOFF-Signal und der Signalleitungsstatus werden direkt über den Datenübertragungstreiber 78 an den Host-Computer 90 gesendet, ohne den Übertragungspuffer 12 zu durchlaufen.
  • Wenn der ASB-Puffer 14 oder der PIR-Puffer 15 voll ist, erzeugt der Mischprozessor 16 Statusänderungschronikdaten (die nachfolgend einfach als Chronikdaten bezeichnet werden), welche jegliche folgenden neuesten Statusdaten und eine Chronik der Statusänderungen speichern.
  • Ein Empfangen von Statusdaten durch die Übertragungseinheit 10 wird nachfolgend beschrieben. Wenn Statusdaten und ein Steuersignal vom Statusmonitor 80 gesendet werden, wird das Steuersignal der Übertragungssteuereinheit 11 zugeführt, und die Statusdaten werden vorübergehend im Übertragungspuffer 12 gespeichert, es sei denn, der Übertragungspuffer enthält bereits Übertragungsdaten, abgesehen von ASB-Daten. Die Speicherkapazität des Übertragungspuffers 12 kann wie erforderlich festgelegt werden und ist in diesem Beispiel auf 128 Byte festgelegt.
  • Der Pointer-Speicher 13 beinhaltet einen Lese-Pointer 13a, der den Ort der nächsten an den Host-Computer zu sendenden Daten anzeigt, und einen Schreib-Pointer 13b, der den nächsten Speicherort im Übertragungspuffer 12 angibt, falls vorhanden. Der Schreib-Pointer 13b wird inkrementiert, wenn Übertragungsdaten einschließlich Statusdaten in den Übertragungspuffer 12 geschrieben werden. Es sei angemerkt, dass beide Pointer gesteuert werden, um sich innerhalb des Adressbereichs des Übertragungspuffers im RAM zu bewegen, in dem der Übertragungspuffer 12 vorgesehen ist. Das heißt, wenn eine Inkrementierung eines Pointers bis zu einer Adresse außerhalb der höchsten Adresse im Adressbereich erfolgt, wird dieser auf den niedrigsten Wert im Adressbereich zurückgesetzt. Dieser Typ von Pufferstruktur ist als "Ringpuffer" bekannt.
  • Beim Stand der Technik werden die nächsten Statusdaten im Übertragungspuffer 12 gespeichert, wenn erneut Speicherplatz verfügbar ist, nachdem der Übertragungspuffer voll war. Gemäß dieser Erfindung sind jedoch, da aufgrund der Beschaffenheit der ASB-Daten und der PIR-Daten die zu speichernde Datenmenge sehr groß werden könnte, falls diese Daten häufig erzeugt werden, dedizierte Puffer 14 bzw. 15 vorgesehen, um diese Daten vor ihrer Übertragung an den Übertragungspuffer 12 vorübergehend zu speichern.
  • Unter speziellen Bedingungen, wie beispielsweise, wenn ein dedizierter Puffer 14 oder 15 voll wird (gefüllter Pufferzustand) wird ein Mischprozess durch den Mischprozessor 16 gemäß den Eigenschaften der zu speichernden Daten angewandt, wie beispielsweise Erzeugen einer Chronik der Änderungen der ASB- oder weiteren Statusdaten, und einem vorübergehenden Speichern dieser Änderungschronik gemeinsam mit den zuletzt aufgetretenen Statusdaten in den Puffern 14 bzw. 15. Details des Mischprozesses werden später noch beschrieben.
  • Übertragungsprozess für normale Übertragungsdaten.
  • Der Übertragungsprozess für die Übertragungseinheit 10 wird nachfolgend zuerst unter Verwendung der 2 und 3 beschrieben. 3 ist ein Ablaufdiagramm zur Beschreibung des Übertragungssteuerprozesses der Übertragungseinheit 10.
  • Die Übertragungsdaten L-ID-S1-S2-S3-S4, die oben rechts in 3 gezeigt sind, sind ein Beispiel von im Übertragungspuffer 12 gespeicherten Daten, wobei S1-S2-S3-S4 Datenbytes, z. B. von Statusdaten sind, die an den Host-Computer 90 gesendet werden sollen.
  • Die Übertragungssteuereinheit 11 überprüft, ob Daten im Übertragungspuffer 12 gespeichert sind. Dies kann durch Vergleichen des zuvor angegebenen Schreib-Pointers 13b und des Lese-Pointers 13a bestimmt werden; falls die Werte gleich sind, ist der Übertragungspuffer 12 leer. Falls Übertragungsdaten vorhanden sind (S100; Ja) wird überprüft, ob der Host-Computer 90 belegt ist (S101). Falls der Host-Computer 90 belegt ist, wird der Übertragungsprozess angehalten, bis der Host-Computer 90 empfangen kann (S101; Ja). Falls der Host-Computer 90 nicht belegt ist (S101; Nein), überprüft die Übertragungssteuereinheit 11, ob der Drucker 2 bereits Daten sendet (S102). Da hier die Übertragungssteuereinheit 11 gerade beabsichtigt, mit der Datenübertragung zu beginnen und sich nicht mitten in einer Datenübertragung befindet (S102; Nein), geht die Prozedur weiter auf den nächsten Schritt, und das Vorliegen einer XOFF-Sendeanfrage wird überprüft (S103). Falls keine XOFF-Sendeanfrage vorliegt, wird das Vorliegen eines Signalleitungsstatus überprüft (S104), und falls dieser nicht vorhanden ist (S104; Nein), werden die ersten Daten, d. h. die Länge L der zu sen denden Daten, aus dem Übertragungspuffer 12 ausgelesen, und der Pointer 13a wird inkrementiert (S105). Es sei angemerkt, dass die hier erhaltene Datenlänge L im RAM gespeichert wird und als Startwert einer Schleifenzähleinrichtung für die aktuelle Sendeschleife verwendet. Die ID wird aus dem Sendepuffer 12 ausgelesen, um den Typ der Übertragungsdaten (beispielsweise Statustyp) zu bestimmen (S106). Bei Schritt S108 wird das nächste Datenbyte, S1, aus dem Übertragungspuffer 12 ausgelesen und an den Host-Computer 90 gesendet. Der Pointer 13a wird dann inkrementiert, so dass er auf das nächste Datenbyte S2 zeigt, und an dieser Stelle endet das Senden von 1 Byte (S109). Es sei angemerkt, dass die oben angegebene Schleifen-Zähleinrichtung bei diesem Prozess dekrementiert wird.
  • Das nächste 1 Byte wird dann durch den oben beschriebenen Prozess übertragen, d. h. durch Wiederholen der Hauptsendeschleife. Zuerst wird überprüft, ob es irgendwelche Übertragungsdaten gibt (S100). Da zu diesem Zeitpunkt Übertragungsdaten (S2 bis S4) übrig sind, fährt die Prozedur mit dem nächsten Schritt fort (S101), und es wird überprüft, ob der Host-Computer belegt ist (S101). Falls dieser belegt ist, wird der Übertragungsprozess angehalten, bis der Host-Computer bereit ist (S101; Ja). Falls der Host-Computer nicht belegt ist (S101; Nein), wird überprüft, ob Daten gerade gesendet werden (S102). Dies kann basierend darauf bestimmt werden, ob der Wert der zuvor erwähnten Schleifenzähleinrichtung Null ist oder nicht. Falls die Schleifenzähleinrichtung auf Null gesetzt ist, dann findet gerade keine Übertragung statt. Da bei dem aktuell erläuterten Beispiel gerade ein Senden von Daten erfolgt (S102; Ja), verzweigt die Prozedur auf S110, S111, und es wird überprüft, ob das XOFF-Signal und der Signalleitungsstatus vorhanden sind. Falls weder das XOFF-Signal noch der Signalleitungsstatus erfasst wird (S110, Nein; S111, Nein), wird das vom Pointer 13a bezeichnete Datenbyte S2 gelesen und an den Host-Computer 90 gesendet (S108). Wenn das Senden von 1 Byte endet, wird der Pointer 13a als Vorbereitung für das Senden des nächsten Datenbyte S3 inkrementiert (S109). Eine Bytezahl, die gleich groß ist wie die durch die Datenlänge L bezeichnete Anzahl der Datenbyte, kann durch Wiederholen des gleichen Prozesses unter Verwendung der Schleifenzähleinrichtung gesendet werden. Unter Verwendung des Beispiels der zuvor beschriebenen Übertragungsdaten, werden Datenbytes S3 und S4 gesendet, um den Übertragungsprozess für die Übertragungsdatensequenz abzuschließen.
  • XOFF-Signal- und Signalleitungsstatus-Übertragungsprozess
  • Als nächstes wird der Betriebsablauf beschrieben, wenn gerade Statusdaten gesendet werden und eine XOFF-Signal-Sendeanfrage oder eine Signalleitungsstatus-Sendeanfrage ausgegeben wird. Wie in 2 dargestellt, sind das XOFF-Signal und der Signalleitungsstatus nicht im Übertragungspuffer 12 gespeichert, sondern werden direkt über den Datenübertragungstreiber 78 an den Host-Computer gesendet, und zwar durch den XOFF-Übertragungsprozessor 17 bzw. den Signalleitungsstatusprozessor 18. Der Übertragungsprozess dafür erfolgt mit Priorität gegenüber den im Übertragungspuffer 12 befindlichen Übertragungsdaten. Dies wird unter Verwendung des in 3 dargestellten Übertragungssteuerungsablaufdiagramms beschrieben.
  • Wenn eine XOFF-Sendeanfrage erfasst wird, während gerade das Senden des ersten Datenbyte S1 vorbereitet wird (S103; Ja), verzweigt die Prozedur auf D, und das XOFF-Signal (1 Byte) wird mit Priorität gesendet. Falls eine XOFF-Signal-Sendeanfrage erfasst wird, während gerade die Übertragungsdatensequenz S2 bis S4 gesendet wird (S110; Ja), wird das XOFF-Signal gesendet, es sei denn, der Signalleitungsstatus wird gerade gesendet (S112; Nein). Das XOFF-Signal wird somit an den Host-Computer 90 mit höchster Priorität gesendet, außer wenn gerade der Signalleitungsstatus gesendet wird.
  • Falls ein Signalleitungsstatus erfasst wird (S104; Ja), wird die Signalleitungs-Statuslänge (mehrere Byte können definiert sein) und eine ID gesetzt (S114), und 1 Byte des Signalleitungsstatus wird gesendet (S115). Falls es mehrere Signalleitungs-Statusbyte gibt und der Signalleitungsstatus gerade gesendet wird (S111 ergibt Ja oder S112 ergibt Ja), nachdem bestätigt wurde, dass der Host-Computer nicht belegt ist (S111), wird der verbleibende Signalleitungsstatus sequentiell byteweise gesendet (S115). Wie aus diesem Steuerprozess zu entnehmen, wird der Signalleitungsstatus mit nächsthöherer Priorität gegenüber dem XOFF-Signal gesendet.
  • Als nächstes wird ein Fall beschrieben, bei dem sich keine Übertragungsdaten im Übertragungspuffer 12 befinden. Falls keine Daten im Übertragungspuffer 12 sind, verzweigt die Prozedur von Schritt S100 in 3 auf A. 4 ist ein Ablaufdiagramm des Prozesses für Verzweigung A.
  • Falls keine Übertragungsdaten im Drucker 2 sind, wird zuerst überprüft, ob ASB-Daten oder PIR-Daten sich im ASB-Puffer 14 oder im PIR-Puffer 15 befinden (S120). Falls ASB-Daten oder PIR-Daten gefunden werden, werden die Daten an den Übertragungspuffer 12 gesendet (S121), und die Prozedur verzweigt auf B in 3. Wie zuvor in 3 beschrieben, wird der Status gesendet, nachdem bestätigt wurde, dass der Host-Computer 90 nicht belegt ist (S101).
  • Falls keine ASB-Daten oder PIR-Daten im Puffer 14 oder 15 gespeichert sind (S120; Nein), wird überprüft, ob eine Signalleitungsstatus- oder XOFF-Signal-Sendeanfrage vorliegt. Falls keine Sendeanfrage vorliegt (S122; Nein), wird die Sendeanfrage auf "Leeranweisung" gesetzt, die Steuerung verzweigt auf C in 3, und der Übertragungsprozess endet. Falls es eine Sendeanfrage gibt (S122; Ja), verzweigt die Steuerung auf B in 3, und der XOFF-Signal- oder Signalleitungsstatus-Sendeprozess erfolgt.
  • Mischprozess
  • Als nächstes wird der Mischprozess detailliert beschrieben. Der Mischprozess wird ausgeführt, wenn, bei der in 2 dargestellten Konfiguration, Übertragungsdaten, abgesehen von im Übertragungspuffer 12 befindlichen ASB-Daten, bereits im ASB-Speicher 14 oder im PIR-Speicher 15 gespeichert sind und weitere ASB-Daten oder PIR-Daten erzeugt werden.
  • 5 ist ein Ablaufdiagramm des Mischprozesses. Zuerst bestimmt, falls ASB-Daten oder PIR-Daten vom Statusmonitor 80 ausgegeben werden, der Mischprozessor 16 (2), ob der Mischprozess erforderlich ist. Beispielsweise wird, falls es keinen Platz im entsprechenden dedizierten Puffer 14 oder 15 gibt, der Mischprozess als notwendig bestimmt (S130). Falls es Platz im Puffer gibt (S130; Nein), werden die neuesten (jüngsten) vom Statusmonitor 80 kommenden Daten im entspre chenden Puffer 14 oder 15 gespeichert (S133). In speziellen Fällen, wie beispielsweise, wenn kein Platz vorhanden ist (S130; Ja), werden die im Puffer 14 oder 15 gespeicherten Chronikdaten aktualisiert (S131), und dann werden die neuesten Daten im entsprechenden Puffer 14 oder 15 gespeichert (S132).
  • Das Aktualisieren der auf die ASB-Daten bezogenen Chronikdaten wird nachfolgend mit Bezug auf 6 beschrieben. 6 ist ein Blockschaltbild, welches die Basiskonfiguration des Mischprozessors 16 und des ASB-Puffers 14 beschreibt. Der ASB-Puffer 14 weist einen 4-Byte-(32-Bit)-Statusdatenspeicher 20 und einen 4-Byte-(32-Bit)-Chronikdatenspeicher 21 auf. Es sei angemerkt, dass die Kapazität von 4 Byte der Speicher 20 und 21 der für dieses Beispiel angenommenen Statusdatenlänge von 4 Byte entspricht. Also wäre diese Kapazität unterschiedlich, falls die Datenlänge unterschiedlich ist.
  • Die "zuletzt erzeugten ASB-Daten" Tran werden im Speicher 20 gespeichert, und werden zu den "zuletzt gespeicherten ASB-Daten" New. Wie später noch detailliert beschrieben wird, werden Informationen, die angeben, ob es eine Änderung bei den mehreren sequentiell an den Mischprozessor gesendeten ASB-Daten gab, d. h. die Chronikdaten, im Speicher 21 gespeichert.
  • Falls Platz im Übertragungspuffer 12 zur Verfügung steht, werden ASB-Daten, d. h. das exklusive ODER aus den Chronikdaten und den Daten New erzeugt und an den Sendepuffer übertragen, gefolgt von den Daten New. Durch Erhalten des exklusiven ODER aus den Chronikdaten und den Daten New, wird ein Status (Bit), der sich geändert hat, in den ASB-Daten als der inverse Wert des entsprechenden Bit in den Daten New codiert, und jeglicher Status (Bit), der sich nicht verändert hat, ist der gleiche wie das entsprechende Bit in den Daten New. Als Ergebnis kann, sogar wenn die zuletzt an den Host-Computer gesendeten ASB-Daten und die Statusdaten New gleich sind und dazwischenliegende Statusdaten aufgetreten sind, die nicht an den Host-Computer gesendet werden konnten, der Host-Computer über eine Statusänderung benachrichtigt werden, falls es in der Zwischenzeit eine Statusänderung gegeben hat.
  • Aufgrund der Beschaffenheit der ASB-Daten ist das Vorliegen einer Statusänderung wichtig, jedoch ist es nicht erforderlich, den Prozess zu kennen, d. h. die Abfolge der Änderungen. Außerdem ist es ebenfalls äußerst wichtig, den neuesten Status an den Host-Computer so bald als möglich zu senden, und es ist daher erwünscht, die Menge von ASB-Daten zu verringern, die sobald als möglich gesendet werden müssen. Die geringste Menge an benötigten Daten lässt sich daher dadurch erzielen, dass für jeden Status (Bit) der neueste Status sowie Informationen gespeichert werden, die angeben, ob es eine Änderung bei dem Status (Bit) gegeben hat.
  • Aus den nachfolgend beschriebenen Gründen werden Informationen, die angeben, ob es eine Änderung bei den ASB-Daten gegeben hat, in ASB-Daten umgewandelt, die durch das Erhalten des exklusiven ODER aus den Chronikdaten und den Statusdaten New erzeugt werden und dann bei der vorliegenden Ausführungsform an den Host-Computer gesendet werden. Der Host-Computer kann nicht bestimmen, ob es sich bei den gesendeten Daten um "ASB-Daten" oder um "Chronikdaten" handelt, und der Host-Computer kann daher den zeitlichen Verlauf (Chronik) der Änderungen der ASB-Daten nicht rekonstruieren.
  • "Tran" in 6 sind die zuletzt erzeugten ASB-Daten 22, die vom Statusmonitor 18 übertragen wurden, und bestehen (im angenommenen Beispiel) aus 4 Byte (d. h. 32 Bit Tran1 bis Tran32).
  • 6 dient zum Beschreiben eines Beispiels der Mischfunktion, und der zeitliche Ablauf und weitere Steuerdetails sind weggelassen. Falls es Platz im ASB-Puffer 14 gibt, werden, wenn Statusdaten vom Statusmonitor 80 gesendet werden, diese direkt im Speicher 20 gespeichert, wie zuvor beschrieben. Der Anfangswert im Speicher 21 beträgt Null, und Chronikdaten im Speicher 21 werden durch Nullsetzen gelöscht, nachdem die Daten an den Übertragungspuffer 12 gesendet wurden.
  • Für jedes Bit der ASB-Daten weist der Mischprozessor 16 einen jeweiligen Statusänderungsdetektor 23-x (23-1 bis 23-32, d. h. 1 × 32) auf. Jeder Detektor 23-x weist ein Exklusiv-ODER-Gatter 24 und ODER-Gatter 25 auf, die konfiguriert sind, um eine 1 auszugeben, falls das Bit Tranx von dem Bit Newx abweicht. Die Ausgangsgröße des Exklusiv-ODER-Gatters 24 wird dem ODER-Gatter 25 zugeführt, welcher dann das logische ODER mit dem entsprechenden Bit Midx in den Chronikdaten erhält.
  • Die Ausgangsgröße vom ODER-Gatter 25 ist daher 1, falls es eine auch nur einmalige Änderung bei den entsprechenden ASB-Daten gegeben hat, die erzeugt wurden, nachdem die ASB-Daten an den Übertragungspuffer 12 gesendet wurden. Informationen, die angeben, dass es eine Änderung gab, werden daher im Speicher 21 gespeichert. Die Ausgangsgröße des ODER-Gatters 24 wird dem entsprechenden Bit im Chronikdatenspeicher zugeführt, und die Daten im Speicher 21 werden zum ENB2-Zeitpunkt aktualisiert. Eine Änderung bei den ASB-Daten wird daher in den Bits der Chronikdaten im Speicher 21 reflektiert.
  • Nachdem die Chronikdaten im Speicher 21 durch Anwendung von ENB2 aktualisiert wurden, wird ENB1 aktiv, und die Statusdaten Tran1 bis Tran32 werden im Speicher 20 unter Überschreiben der bestehenden Statusdaten gespeichert. Die jüngsten ASB-Daten und Änderungschronik werden im ASB-Puffer 14 gespeichert, und wenn Platz im Übertragungspuffer 12 verfügbar wird, wird das exklusive ODER aus den ASB-Daten New und den Chronikdaten Mid, und dann die ASB-Daten New sequentiell übertragen, wie zuvor beschrieben.
  • Unter Verwendung eines Beispiels werden diese Datenänderungen nachfolgend detaillierter mit Bezug auf 7 beschrieben. 7 zeigt die Änderungen bei den zuletzt erzeugten Statusdaten (Tran), den Chronikdaten (Mid) und den zuletzt gespeicherten Statusdaten (New). Um die Beschreibung zu vereinfachen, zeigt 7 lediglich einen Teil (1 Byte = 8 Bit) der ASB-Daten.
  • Es wird angenommen, dass Statusdaten Tran (Daten 1) unter solchen Umständen übertragen werden, bei denen sie nicht im Übertragungspuffer 12 gespeichert werden können, da der Übertragungspuffer 12 bereits Übertragungsdaten enthält. Da der ASB-Puffer 14 zu diesem Zeitpunkt keinen Mischprozess erfordert, werden Daten 1 direkt im Speicher 20 gespeichert, und der Misch prozess endet (S130 und S133 in 5).
  • Falls dann die nächsten Statusdaten Tran (Daten 2) empfangen werden, wird der Mischprozess gestartet (S130 in 5 ergibt Ja), und die Chronikdaten im Speicher 21 werden aktualisiert. In diesem Fall wird Bit 1 (Mid1) der Chronikdaten zu 1, da New1, d. h. Bit 1 in den zuletzt gespeicherten Daten 1 ist, und Bit1 (Tran1) in den zuletzt erzeugten Daten 2 den Wert 0 hat; Mid2 in den Chronikdaten wird ebenfalls 1, da New2 (das 0 war) sich auf 1 (Tran2) geändert hat (S131, 5). Daten 2 (Tran) werden dann als zuletzt gespeicherte Daten New im Speicher 20 unter Überschreiben von Daten 1 gespeichert (S132, 5).
  • Wenn dann Daten 3 vom Statusmonitor 80 gesendet werden, ändert sich Bit 2 (Mid3) in den Chronikdaten in ähnlicher Weise auf 1, und die Bits 1 und 2 (Mid1, Mid2) bleiben auf 1 gesetzt. Die Daten 3 werden dann direkt als zuletzt gespeicherte Daten New unter Überschreiben der Daten 2 gespeichert.
  • Wenn die Daten 4 und die Daten 5 dann in der Reihenfolge empfangen werden, ändern sich die Bits 4 und 5 (Mid4, MidS) der Chronikdaten in der Abfolge auf 1, und die Statusdaten Tran (Daten 5) werden als zuletzt gespeicherte Daten New gespeichert.
  • Wenn die Daten 6 empfangen werden, wird Bit 1 von 0 (New1) auf 1 (Tran1) geändert, und Bit 5 wird von 1 (New5) auf 0 (Tran5) geändert, jedoch wurden die entsprechenden Bits (Mid1, Mid5) in den Chronikdaten bereits auf 1 gesetzt, und die Chronikdaten werden daher nicht verändert.
  • Falls eine Übertragung zum Übertragungspuffer 12 zum diesem Zeitpunkt möglich wird, wird das exklusive ODER ([00011110]) der zuletzt gespeicherten Statusdaten New [00000001] und die Chronikdaten Mid [00011111] erhalten, und dieses logische ODER wird als erstes an den Übertragungspuffer 12 übertragen. Die zuletzt gespeicherten Statusdaten New werden dann an den Übertragungspuffer 12 gesendet.
  • Weiter handelt es sich bei den PIR-Daten um Daten, die dem Host-Computer eine Bestimmung des Fortschreitens eines speziellen Prozesses ermöglichen, und eine Zwischenchronik von diesen ist daher nicht erforderlich. PIR-Daten im PIR-Puffer 15, die nicht gesendet wurden, können daher mit den neuesten (jüngsten) PIR-Daten überschrieben werden.
  • Es sei darauf hingewiesen, dass die zuvor beschriebene bevorzugte Ausführungsform lediglich mit Bezug auf ein Senden von Daten von einem Drucker, als Beispiel für ein Terminalgerät, an einen Host-Computer beschrieben wurde, falls jedoch eine unabhängig arbeitende Schnittstelleneinrichtung im Terminalgerät vorgesehen ist, kann eine Datenkommunikation mit der Schnittstelleneinrichtung in der gleichen Weise wie eine Kommunikation mit dem Host-Computer gehandhabt werden. Mit anderen Worten ist die Erfindung ebenfalls auf eine Übertragungssteuerung zum Senden von Daten in Einheiten von 1 Byte an eine Schnittstelleneinrichtung in einem Terminalgerät anwendbar.
  • Bei der zuvor erläuterten Ausführungsform werden ASB-Daten vorübergehend im jeweiligen dedizierten Puffer gespeichert, wenn, zu dem Zeitpunkt, bei dem diese Daten erzeugt werden, der Übertragungspuffer abgesehen von den ASB-Daten bereits Übertragungsdaten enthält. Alternativ könnten ASB-Daten im jeweiligen dedizierten Puffer nur dann gespeichert werden, wenn zum Zeitpunkt der Erzeugung dieser Daten der Übertragungspuffer voll ist, d. h. er diese neu erzeugten Daten nicht aufnehmen kann.
  • Wie zuvor beschrieben ist, dadurch dass ein dedizierter Puffer für kontinuierlich erzeugte Statusdaten bereitgestellt wird und eine Chronik von Statusänderungen mit einer Konfiguration gespeichert wird, bei der lediglich die neuesten Statusdaten und die Statusänderungschronikdaten an den Host-Computer gesendet werden, die Erfindung in der Lage, den für eine Übertragung benötigten Puffer zu verringern und die Übertragungslast stark zu verringern.

Claims (14)

  1. Terminalgerät, das ausgebildet ist, um mit einem Host-Computer verbunden zu werden, und das eine automatische Statusreportfunktion aufweist, um automatisch Statusdaten reagierend auf eine Statusänderung zu erzeugen und Statusdaten an den Host-Computer zu senden, gekennzeichnet durch eine Einrichtung zur Erzeugung von Änderungsdaten, die Änderungen zwischen aktuell erzeugten Statusdaten und den Statusdaten definieren, welche zuletzt an den Host-Computer gesendet wurden; wobei die Änderungsdaten an den Host-Computer übertragen werden, wenn die aktuell erzeugten Statusdaten übertragen werden.
  2. Gerät nach Anspruch 1, welches weiter aufweist: einen ersten Speicher zum Speichern von ersten Statusdaten, die zuvor an den Host-Computer übertragen wurden; einen zweiten Speicher zum Speichern von aktuell erzeugten Statusdaten als zweite Statusdaten; eine Berechnungseinheit zum Erzeugen der Änderungsdaten, die den Unterschied zwischen den ersten und den zweiten Statusdaten angeben; und eine Übertragungssteuervorrichtung zum Übertragen der zweiten Statusdaten und der Änderungsdaten an den Host-Computer.
  3. Gerät nach Anspruch 1 oder 2, aufweisend: einen ersten Puffer (12) zum vorübergehenden Speichern aufeinander folgend erzeugter Sätze von Statusdaten, wobei sich der erste Puffer (12) entweder in einem ersten oder einem zweiten Zustand befindet und nur im ersten Zustand zum Empfang von Statusdaten zur Speicherung in der Lage ist, wobei dieser erste Zustand den Zustand beinhaltet, dass der erste Puffer (12) voll ist; eine Einrichtung zum Übertragen von Daten vom ersten Puffer (12) an den Host-Computer (90); einen dedizierten zweiten Puffer (14) zum vorübergehenden Speichern eines einzigen Satzes von Statusdaten und Chronikdaten; eine Chronikdaten-Erzeugungseinheit (16) zum Erzeugen der Chronikdaten, so dass das Vorliegen einer Änderung des Status bei den mehreren Sätzen von Statusdaten, die aufeinander folgend vom zweiten Puffer (14, 15) empfangen werden, angegeben wird; und eine Steuereinrichtung (11) zum – Speichern im zweiten Puffer (14), wenn sich der erste Puffer (12) im zweiten Zustand befindet, jedes der aufeinander folgenden Sätze von Statusdaten gemeinsam mit den entsprechenden Chronikdaten, wobei beim Speichern eines jeden Satzes der zuvor gespeicherte Satz überschrieben wird, und – Übertragen von im zweiten Puffer (14) gespeicherten Informationen an den ersten Puffer (12), wenn der erste Puffer (12) in den ersten Zustand eintritt, wobei die Informationen den Satz von Statusdaten und einen modifizierten Satz von Statusdaten enthalten, der aus einer Kombination aus dem Satz von Statusdaten und den Chronikdaten erhalten wurde.
  4. Gerät nach Anspruch 3, bei dem lediglich vorbestimmte Typen von Statusdaten aus den kontinuierlich erzeugten Statusdaten im zweiten Puffer (14) gespeichert werden und einer Chronikdatenerzeugung durch die Chronikdaten-Erzeugungseinheit (16) unterliegen.
  5. Gerät nach Anspruch 3 oder 4, bei dem: ein Satz von Statusdaten aus einer Mehrzahl von Bits besteht, die jeweils einen von einer entsprechenden Mehrzahl unterschiedlicher Stati des Terminalgerätes repräsentieren; und die Chronikdaten-Erzeugungseinheit (16) ausgebildet ist, um die Chronikdaten dadurch zu erzeugen, dass ein bitweises logisches ODER aus jedem Paar von unmittelbar aufeinander folgenden der kontinuierlich empfangenen Sätze von Statusdaten berechnet wird.
  6. Gerät nach Anspruch 5, bei dem die Kombination ein bitweises exklusives ODER des Satzes der Statusdaten und der Chronikdaten ist.
  7. Verfahren zum Steuern einer Datenübertragung in einem Terminalgerät, das ausgebildet ist, um mit einem Host-Computer (90) verbunden zu werden, und das eine automatische Statusreportfunktion aufweist, um automatisch Statusdaten reagierend auf eine Statusänderung zu erzeugen und Statusdaten an den Host-Computer (90) zu senden, gekennzeichnet durch folgende Schritte: Erzeugen von Änderungsdaten, die Statusänderungen zwischen früheren Statusdaten, die vorher an den Host-Computer (90) gesendet wurden, und aktuellen Statusdaten definieren, die durch die automatische Statusreportfunktion erzeugt wurden; und Übertragen der Statusdaten, wenn die aktuellen Statusdaten an den Host-Computer (90) übertragen werden.
  8. Verfahren nach Anspruch 7, angewandt auf ein Terminalgerät, das einen ersten Puffer (12) und einen zweiten Puffer (14) aufweist, wobei das Verfahren folgende Schritte umfasst: (a) Empfangen aufeinander folgend erzeugter Sätze von Statusdaten; (b) Überprüfen, reagierend auf jeden Satz, ob sich der erste Puffer (12) in einem ersten oder einem zweiten Zustand befindet, wobei der erste Zustand den Zustand beinhaltet, dass der erste Puffer (12) voll ist; (c) Speichern, reagierend darauf, das im Schritt (b) festgestellt wird, dass sich der erste Puffer (12) im ersten Zustand befindet, des jeweiligen Satzes von Statusdaten im ersten Puffer (12); (d) Übertragen von im ersten Puffer (12) gespeicherten Daten an den Host-Computer (90); (e) Speichern, falls im Schritt (b) festgestellt wird, dass der erste Puffer (12) sich im zweiten Zustand befindet, des jeweiligen Satzes von Statusdaten im zweiten Puffer (14), wobei jeder Satz im zweiten Puffer (14) unter Überschreiben des zuvor gespeicherten Satzes, sofern vorhanden, gespeichert wird. (f) Erzeugen, jedesmal wenn ein Satz von Statusdaten im zweiten Puffer (14) durch einen folgenden Satz überschrieben wird, von Chronikdaten, welche das Vorliegen einer Änderung in aufeinander folgenden Sätzen von Statusdaten angeben, und Speichern der Chronikdaten im zweiten Puffer (14); und (g) Übertragen von im zweiten Puffer (14) gespeicherten Informationen an den ersten Puffer (12), wenn festgestellt wird, dass der erste Puffer (12) wieder in den ersten Zustand eingetreten ist, wobei die Informationen den Satz von Statusdaten und einen modifizierten Satz von Statusdaten beinhalten, der aus einer Kombination des Satzes von Statusdaten und der Chronikdaten erhalten wird.
  9. Verfahren nach Anspruch 8, bei dem die Statusdaten, die in Schritt (e), Schritt (f), und Schritt (g) verarbeitet werden, aus speziellen vorbestimmten Statusdatentypen bestehen.
  10. Verfahren nach Anspruch 8 oder 9, bei dem die Sätze von Statusdaten, die in Schritt (e), Schritt (f) und Schritt (g) verarbeitet werden, jeweils aus einer Mehrzahl von Bits bestehen, die jeweils einen von einer entsprechenden Mehrzahl unterschiedlicher Stati des Terminalgerätes repräsentieren; und Schritt (f) das Erzeugen der Chronikdaten beinhaltet, und zwar durch sequentielles Berechnen des bitweisen logischen ODER aus jedem Paar von unmittelbar aufeinander folgenden Sätzen der kontinuierlich empfangenen Sätze von Statusdaten.
  11. Verfahren nach Anspruch 10, bei dem die Kombination ein bitweises exklusives ODER des Satzes der Statusdaten und der Chronikdaten ist.
  12. Maschinenlesbares Datenspeichermedium, wobei auf dem Medium ein Programm aus Anweisungen gespeichert ist, die von der Maschine ausführbar sind, um das in einem der Ansprüche 7 bis 11 definierte Übertragungssteuerverfahren durchzuführen.
  13. Datenspeichermedium nach Anspruch 12, bei dem das Datenspeichermedium das Computerprogramm auf eine CD, eine Diskette, eine Festplatte oder ein Magnetband enthält.
  14. Computerprogrammprodukt, das einen Datensatz und einen Satz aus Befehlen aufweist, die von einer Maschine ausführbar sind, um das in einem der Ansprüche 7 bis 11 definierte Übertragungssteuerverfahren durchzuführen.
DE60119268T 2000-12-20 2001-12-20 Terminalgerät und Verfahren zur Datenübertragungssteuerung im Terminalgerät Expired - Lifetime DE60119268T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2000387319 2000-12-20
JP2000387319A JP4524912B2 (ja) 2000-12-20 2000-12-20 端末装置及びその制御方法

Publications (2)

Publication Number Publication Date
DE60119268D1 DE60119268D1 (de) 2006-06-08
DE60119268T2 true DE60119268T2 (de) 2007-02-08

Family

ID=18854279

Family Applications (1)

Application Number Title Priority Date Filing Date
DE60119268T Expired - Lifetime DE60119268T2 (de) 2000-12-20 2001-12-20 Terminalgerät und Verfahren zur Datenübertragungssteuerung im Terminalgerät

Country Status (9)

Country Link
US (2) US6811334B2 (de)
EP (1) EP1217527B1 (de)
JP (1) JP4524912B2 (de)
KR (1) KR100575916B1 (de)
CN (2) CN1207665C (de)
AT (1) ATE325386T1 (de)
DE (1) DE60119268T2 (de)
ES (1) ES2258505T3 (de)
SG (1) SG131736A1 (de)

Families Citing this family (56)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4524912B2 (ja) * 2000-12-20 2010-08-18 セイコーエプソン株式会社 端末装置及びその制御方法
JP3787535B2 (ja) * 2002-06-18 2006-06-21 キヤノン株式会社 画像処理装置及びその制御方法
DE10232631A1 (de) * 2002-07-18 2004-02-05 OCé PRINTING SYSTEMS GMBH Verfahren und Vorrichtung zur Fehlerbehandlung in einem Drucker oder Kopierer
JP2005007762A (ja) * 2003-06-19 2005-01-13 Seiko Epson Corp 印刷装置、印刷システム、プログラムおよび端末装置の制御方法
US7410097B1 (en) * 2004-07-29 2008-08-12 Diebold Self-Service Systems Division Of Diebold, Incorporated Cash dispensing automated banking machine deposit printing system and method
JP2006062266A (ja) 2004-08-27 2006-03-09 Seiko Epson Corp プリンタ及びプリンタの制御方法
EP1630662B1 (de) 2004-08-27 2013-01-02 Seiko Epson Corporation Drucker und Druckersteuerungsverfahren
US8060921B2 (en) 2004-10-08 2011-11-15 Sharp Laboratories Of America, Inc. Methods and systems for imaging device credential authentication and communication
US8032608B2 (en) 2004-10-08 2011-10-04 Sharp Laboratories Of America, Inc. Methods and systems for imaging device notification access control
US7970813B2 (en) 2004-10-08 2011-06-28 Sharp Laboratories Of America, Inc. Methods and systems for imaging device event notification administration and subscription
US8120797B2 (en) 2004-10-08 2012-02-21 Sharp Laboratories Of America, Inc. Methods and systems for transmitting content to an imaging device
US8115946B2 (en) 2004-10-08 2012-02-14 Sharp Laboratories Of America, Inc. Methods and sytems for imaging device job definition
US8115945B2 (en) 2004-10-08 2012-02-14 Sharp Laboratories Of America, Inc. Methods and systems for imaging device job configuration management
US8120793B2 (en) * 2004-10-08 2012-02-21 Sharp Laboratories Of America, Inc. Methods and systems for displaying content on an imaging device
US8115944B2 (en) 2004-10-08 2012-02-14 Sharp Laboratories Of America, Inc. Methods and systems for local configuration-based imaging device accounting
US7978618B2 (en) 2004-10-08 2011-07-12 Sharp Laboratories Of America, Inc. Methods and systems for user interface customization
US8001183B2 (en) 2004-10-08 2011-08-16 Sharp Laboratories Of America, Inc. Methods and systems for imaging device related event notification
US8120799B2 (en) 2004-10-08 2012-02-21 Sharp Laboratories Of America, Inc. Methods and systems for accessing remote, descriptor-related data at an imaging device
US8213034B2 (en) 2004-10-08 2012-07-03 Sharp Laboratories Of America, Inc. Methods and systems for providing remote file structure access on an imaging device
US8018610B2 (en) 2004-10-08 2011-09-13 Sharp Laboratories Of America, Inc. Methods and systems for imaging device remote application interaction
US7969596B2 (en) 2004-10-08 2011-06-28 Sharp Laboratories Of America, Inc. Methods and systems for imaging device document translation
US7920101B2 (en) 2004-10-08 2011-04-05 Sharp Laboratories Of America, Inc. Methods and systems for imaging device display standardization
US8125666B2 (en) * 2004-10-08 2012-02-28 Sharp Laboratories Of America, Inc. Methods and systems for imaging device document management
US8001587B2 (en) 2004-10-08 2011-08-16 Sharp Laboratories Of America, Inc. Methods and systems for imaging device credential management
US8006293B2 (en) 2004-10-08 2011-08-23 Sharp Laboratories Of America, Inc. Methods and systems for imaging device credential acceptance
US8384925B2 (en) 2004-10-08 2013-02-26 Sharp Laboratories Of America, Inc. Methods and systems for imaging device accounting data management
US8171404B2 (en) 2004-10-08 2012-05-01 Sharp Laboratories Of America, Inc. Methods and systems for disassembly and reassembly of examination documents
US8001586B2 (en) 2004-10-08 2011-08-16 Sharp Laboratories Of America, Inc. Methods and systems for imaging device credential management and authentication
US8006292B2 (en) 2004-10-08 2011-08-23 Sharp Laboratories Of America, Inc. Methods and systems for imaging device credential submission and consolidation
US8023130B2 (en) 2004-10-08 2011-09-20 Sharp Laboratories Of America, Inc. Methods and systems for imaging device accounting data maintenance
US8065384B2 (en) * 2004-10-08 2011-11-22 Sharp Laboratories Of America, Inc. Methods and systems for imaging device event notification subscription
US8024792B2 (en) 2004-10-08 2011-09-20 Sharp Laboratories Of America, Inc. Methods and systems for imaging device credential submission
US8035831B2 (en) 2004-10-08 2011-10-11 Sharp Laboratories Of America, Inc. Methods and systems for imaging device remote form management
US8237946B2 (en) 2004-10-08 2012-08-07 Sharp Laboratories Of America, Inc. Methods and systems for imaging device accounting server redundancy
US8156424B2 (en) 2004-10-08 2012-04-10 Sharp Laboratories Of America, Inc. Methods and systems for imaging device dynamic document creation and organization
US8051125B2 (en) 2004-10-08 2011-11-01 Sharp Laboratories Of America, Inc. Methods and systems for obtaining imaging device event notification subscription
US7934217B2 (en) 2004-10-08 2011-04-26 Sharp Laboratories Of America, Inc. Methods and systems for providing remote file structure access to an imaging device
US8015234B2 (en) 2004-10-08 2011-09-06 Sharp Laboratories Of America, Inc. Methods and systems for administering imaging device notification access control
US8006176B2 (en) 2004-10-08 2011-08-23 Sharp Laboratories Of America, Inc. Methods and systems for imaging-device-based form field management
US8115947B2 (en) 2004-10-08 2012-02-14 Sharp Laboratories Of America, Inc. Methods and systems for providing remote, descriptor-related data to an imaging device
US8120798B2 (en) 2004-10-08 2012-02-21 Sharp Laboratories Of America, Inc. Methods and systems for providing access to remote, descriptor-related data at an imaging device
US8051140B2 (en) 2004-10-08 2011-11-01 Sharp Laboratories Of America, Inc. Methods and systems for imaging device control
US8032579B2 (en) 2004-10-08 2011-10-04 Sharp Laboratories Of America, Inc. Methods and systems for obtaining imaging device notification access control
US8060930B2 (en) 2004-10-08 2011-11-15 Sharp Laboratories Of America, Inc. Methods and systems for imaging device credential receipt and authentication
US8049677B2 (en) 2004-10-08 2011-11-01 Sharp Laboratories Of America, Inc. Methods and systems for imaging device display element localization
US7426510B1 (en) * 2004-12-13 2008-09-16 Ntt Docomo, Inc. Binary data categorization engine and database
US8428484B2 (en) 2005-03-04 2013-04-23 Sharp Laboratories Of America, Inc. Methods and systems for peripheral accounting
US20070023447A1 (en) * 2005-07-26 2007-02-01 Jeong Min Yoon Discharger for tablets
JP2007042098A (ja) * 2005-07-29 2007-02-15 Sharp Corp コンテンツ表示方法、コンテンツ伝送方法、画像処理装置、遠隔演算装置
JP2007074320A (ja) * 2005-09-07 2007-03-22 Matsushita Electric Ind Co Ltd ネットワーク機器装置
US7693984B2 (en) * 2005-12-29 2010-04-06 Panasonic Electric Works Co., Ltd. Systems and methods for providing current status data to a requesting device
US8345272B2 (en) 2006-09-28 2013-01-01 Sharp Laboratories Of America, Inc. Methods and systems for third-party control of remote imaging jobs
US8156295B2 (en) * 2009-04-03 2012-04-10 National Instruments Corporation Four-slot asynchronous communication mechanism with decreased latency
JP5746501B2 (ja) * 2010-12-20 2015-07-08 キヤノン株式会社 印刷装置及びその処理方法
KR101827936B1 (ko) * 2013-08-29 2018-02-09 세이코 엡슨 가부시키가이샤 송신 시스템, 송신 장치 및, 데이터 송신 방법
WO2019064812A1 (ja) * 2017-09-26 2019-04-04 日本電産株式会社 情報送信装置およびプログラム

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS59229658A (ja) * 1983-06-10 1984-12-24 Nec Corp 情報処理装置
JPS61125258A (ja) * 1984-11-20 1986-06-12 Fujitsu Ltd ステ−タス変化通知方式
JPH0646830B2 (ja) * 1987-08-21 1994-06-15 富士通株式会社 状態変化処理方法
KR920007949B1 (ko) * 1987-09-21 1992-09-19 유니시스 코포레이숀 컴퓨터 주변장치 제어기
JPH05191454A (ja) * 1992-01-16 1993-07-30 Nec Corp データ転送方式
JPH06202715A (ja) * 1992-12-28 1994-07-22 Fuji Facom Corp 状態変化検知記録回路
JP3483044B2 (ja) * 1993-11-16 2004-01-06 セイコーエプソン株式会社 印刷装置、印刷システム、及びステータス変化検出方法
US6021431A (en) * 1994-03-29 2000-02-01 The United States Of America As Represented By The Secretary Of The Navy Method of retrieving and storing computer peripheral data
JP2846238B2 (ja) * 1994-04-28 1999-01-13 三菱電機株式会社 エラートレースによるシステム制御管理方法
JP3127716B2 (ja) * 1994-06-02 2001-01-29 セイコーエプソン株式会社 プリンタ
US5802546A (en) * 1995-12-13 1998-09-01 International Business Machines Corp. Status handling for transfer of data blocks between a local side and a host side
JP3706694B2 (ja) * 1996-01-09 2005-10-12 キヤノン株式会社 情報処理装置、プリンタ制御方法及び記憶媒体
JPH09237206A (ja) * 1996-02-29 1997-09-09 Nec Eng Ltd 状態表示装置
JPH09323463A (ja) * 1996-06-05 1997-12-16 Seiko Epson Corp 通信端末およびその制御方法
JP3050154B2 (ja) * 1997-01-27 2000-06-12 セイコーエプソン株式会社 印刷装置
JPH10301724A (ja) * 1997-04-25 1998-11-13 Canon Inc 出力制御方法及び装置
JP3065053B2 (ja) * 1998-01-06 2000-07-12 セイコーエプソン株式会社 機器監視システム、ローカル監視装置、統合監視装置、機器監視方法、及び、プログラムを格納したコンピュータ可読媒体
JP3861958B2 (ja) * 1998-03-26 2006-12-27 セイコーエプソン株式会社 オフラインからの復帰時の処理の種類を選択できる印刷装置、印刷方法、および、情報記録媒体
JP3711432B2 (ja) * 1998-04-15 2005-11-02 セイコーエプソン株式会社 周辺処理装置およびその制御方法
DE69904875T2 (de) * 1998-06-01 2003-08-28 Seiko Epson Corp Verfahren zur Überwachung des Stromversorgungszustands in einem an einen Hauptrechner angeschlossenen Peripheriegerät
JP3752893B2 (ja) * 1998-06-01 2006-03-08 セイコーエプソン株式会社 周辺装置の電源監視方法、電源監視装置、電源監視システム及び情報記録媒体
US6734985B1 (en) * 1998-08-25 2004-05-11 Canon Kabushiki Kaisha Printing apparatus, printing system and method of controlling same
JP3492220B2 (ja) * 1998-11-18 2004-02-03 キヤノン株式会社 情報処理装置および印刷制御方法
JP3546935B2 (ja) * 1998-12-10 2004-07-28 セイコーエプソン株式会社 印刷システム及び同システムのホスト装置
US6886050B2 (en) * 1999-10-29 2005-04-26 Seiko Epson Corporation Method for controlling a communication terminal device and rewritable storage medium having initialization setting data
JP2001166904A (ja) * 1999-12-07 2001-06-22 Seiko Epson Corp 印刷装置、その制御方法、および、情報記録媒体
JP4524912B2 (ja) * 2000-12-20 2010-08-18 セイコーエプソン株式会社 端末装置及びその制御方法
JP3985135B2 (ja) * 2001-12-27 2007-10-03 セイコーエプソン株式会社 制御システムにおけるデバイス初期化方法、制御システム、コンピュータにデバイス初期化方法を実行させるためのプログラム、このプログラムを記録した記録媒体

Also Published As

Publication number Publication date
ES2258505T3 (es) 2006-09-01
CN1360259A (zh) 2002-07-24
US20040240921A1 (en) 2004-12-02
SG131736A1 (en) 2007-05-28
ATE325386T1 (de) 2006-06-15
DE60119268D1 (de) 2006-06-08
EP1217527A1 (de) 2002-06-26
JP2002189640A (ja) 2002-07-05
JP4524912B2 (ja) 2010-08-18
US6811334B2 (en) 2004-11-02
US7011461B2 (en) 2006-03-14
EP1217527B1 (de) 2006-05-03
KR20020050149A (ko) 2002-06-26
KR100575916B1 (ko) 2006-05-02
US20020098027A1 (en) 2002-07-25
CN1207665C (zh) 2005-06-22
CN1690994A (zh) 2005-11-02

Similar Documents

Publication Publication Date Title
DE60119268T2 (de) Terminalgerät und Verfahren zur Datenübertragungssteuerung im Terminalgerät
DE69727099T2 (de) Kommunikations-Endgerät und Steuerverfahren dafür
DE69725778T2 (de) Druckerkommunikationssystem und -verfahren
DE69434109T2 (de) Gerät und Verfahren zur Bestimmung der Seitenbeschriebungssprache, in welcher eine Druckaufgabe geschrieben ist
DE69936960T2 (de) Seitendrucker und Seitendrucksystem
DE69724846T2 (de) Mehrweg-Ein/Ausgabespeichersysteme mit Mehrweg-Ein/Ausgabeanforderungsmechanismus
DE69934468T2 (de) Druckersystem und Drucker die Druckdaten wiederverwenden
DE69834074T2 (de) Drucker, der einen Netzwerkrechner beinhaltet und Rechnernetzwerk-System, das diesen verwendet
DE69725451T2 (de) Drucken in offenen systemen
DE10034841B4 (de) Vorrichtung und Verfahren zur Überwachung und Aufzeichnung der Verwendung von Druckern in einem System
DE69727875T2 (de) Hybrid-Drucker mit einer Mehrzahl von Druckmechanismen, sowie Verfahren zum Betrieb eines solchen Druckers
DE10234689A1 (de) Druckertreiber-Zugriffsschnittstelle
DE3301628A1 (de) Schaltungsanordnung fuer den datenaustausch zwischen zwei rechnern
DE4226052A1 (de) Drucksteuerungsverfahren und -geraet, die eine vielzahl von prozessoren verwenden
DE2825185A1 (de) Drucker-steuereinrichtung
EP1249744A1 (de) Verfahren zum Herstellen konsistenter Speicherinhalte in redundanten Systemen
DE69133428T2 (de) Informationsverarbeitungsgerät mit umschaltbarem Programm
DE69908462T2 (de) Benutzer-Schnittstelle für Informationsverarbeitungssystem
DE10105946B4 (de) Verfahren und Vorrichtung zum Kommunizieren von Eigenschaften
DE102008019277A1 (de) Datenübertragungsvorrichtung
DE19739513B4 (de) Reserve-Redunanzsystem
EP1780520A2 (de) Waage und Verfahren zum Betreiben einer Waage
DE4422619A1 (de) Drucksystem
DE60025179T2 (de) Verfahren und system für synchrone serielle kommunikation
DE69634653T2 (de) Abbildungsausgabegerät und entspechendes Steuerverfahren

Legal Events

Date Code Title Description
8364 No opposition during term of opposition