DE69427712T2 - Strichcodedrucker - Google Patents

Strichcodedrucker

Info

Publication number
DE69427712T2
DE69427712T2 DE69427712T DE69427712T DE69427712T2 DE 69427712 T2 DE69427712 T2 DE 69427712T2 DE 69427712 T DE69427712 T DE 69427712T DE 69427712 T DE69427712 T DE 69427712T DE 69427712 T2 DE69427712 T2 DE 69427712T2
Authority
DE
Germany
Prior art keywords
microprocessor
data
printhead
controller
output
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 - Fee Related
Application number
DE69427712T
Other languages
English (en)
Other versions
DE69427712D1 (de
Inventor
James E. Helmbold
David N. Long
David W. Riley
Mitchell G. Stern
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.)
Avery Dennison Retail Information Services LLC
Original Assignee
Monarch Marking Systems Inc
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 Monarch Marking Systems Inc filed Critical Monarch Marking Systems Inc
Application granted granted Critical
Publication of DE69427712D1 publication Critical patent/DE69427712D1/de
Publication of DE69427712T2 publication Critical patent/DE69427712T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K1/00Methods or arrangements for marking the record carrier in digital fashion
    • G06K1/12Methods or arrangements for marking the record carrier in digital fashion otherwise than by punching
    • G06K1/121Methods or arrangements for marking the record carrier in digital fashion otherwise than by punching by printing code marks

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)
  • Ink Jet (AREA)
  • Printers Characterized By Their Purpose (AREA)
  • Record Information Processing For Printing (AREA)

Description

  • Die vorliegende Erfindung betrifft einen Strichcode-Drucker, der einen Prozessor mit einem zugehörigen Speicher aufweist, in den bzw. aus dem mittels einer Speicherschutzeinrichtung geschrieben bzw. ausgelesen werden kann.
  • HINTERGRUND DER ERFINDUNG
  • Bei Strichcode-Druckern ist bekannt, daß sie zwischen einem Mikroprozessor des Druckers und den Eingabe- und Ausgabegeräten des Druckers, die typischerweise eine Tastatur zur Dateneingabe, einen Druckkopf zum Drucken und einen Motor für den Vorschub des Vorrats an zu bedruckendem Material wie z. B. Etiketten, Anhänger etc. am Druckkopf vorbei enthalten, Schnittstellenschaltungen haben.
  • Gemäß der vorliegenden Erfindung enthält eine Steuerung des Druckers eine Speicherschutzfunktion für den RAM des Druckers. Wenn, genauer dargestellt, ein Bereich des RAM des Druckers mindestens ein Programm speichert, dementsprechend der Prozessor des Druckers arbeitet, oder andere zu schützende Informationen, hindert die vorliegende Erfindung einen Anwender daran, in diesen Bereich des RAM zu schreiben. Die Steuerung enthält des weiteren Einrichtungen zur Deaktivierung dieser Speicherschutzfunktion, um zu ermöglichen, daß ein neues Programm oder neue Informationen in den zuvor geschützten Bereich des RAM des Druckers geschrieben werden.
  • Einzelheiten der dargestellten Ausführungsform der Erfindung werden in der nachfolgenden Beschreibung und anhand der Zeichnung näher erläutert.
  • KURZE BESCHREIBUNG DER ZEICHNUNG
  • Fig. 1 ist ein Blockschaltbild eines Strichcode-Druckers, der eine Steuerung gemäß der vorliegenden Erfindung verwendet;
  • Fig. 2 ist ein Blockschaltbild, das die Mikroprozessor- Schnittstellenschaltung von Fig. 1 darstellt;
  • Fig. 3 ist ein Blockschaltbild, das einen Teil der Druckkopfdaten und der Steuerschaltung von Fig. 1 darstellt;
  • Fig. 4 ist ein Blockschaltbild, das einen weiteren Teil der Druckkopfdaten und der Steuerschaltung von Fig. 1 darstellt;
  • Fig. 5 ist ein Impulsdiagramm, das die Steuersignale darstellt, die zur Wärmeregelung in einem intelligenten Druckkopf generiert werden;
  • Fig. 6 ist ein Impulsdiagramm, das die Steuersignale darstellt, die zur Wärmeregelung in einem nicht intelligenten Druckkopf generiert werden;
  • Fig. 7 ist ein Blockschaltbild, das den seriellen Eingangs- /Ausgangsport von Fig. 1 darstellt;
  • Fig. 8 ist ein Blockschaltbild, das den Baudratengenerator von Fig. 1 darstellt;
  • Fig. 9 ist ein Blockschaltbild, das die Speicherschutzschaltung von Fig. 1 darstellt; und
  • Fig. 10 ist ein Impulsdiagramm, das die Funktionsweise des Baudratengenerators von Fig. 1 darstellt.
  • BESCHREIBUNG DER BEVORZUGTEN AUSFÜHRUNGSFORM
  • Fig. 1 zeigt einen Strichcode-Drucker 10 mit einer Steuerung 12 gemäß der vorliegenden Erfindung. Die Steuerung 12 stellt eine Schnittstelle zwischen dem Mikroprozessor 14 des Druckers mit einem zugehörigen RAM 16 und ROM 18 und eine Anzahl Ein- und Ausgabegeräte des Druckers wie z. B. einen thermischen Druckkopf 20 bereit. Der Mikroprozessor 14 steuert den thermischen Druckkopf 20 über die Steuerung 12, um eine Bahn Aufzeichnungselemente wie Etiketten, Anhänger oder dgl. zu bedrucken. Die Bahn der Aufzeichnungselemente bildet einen Vorrat, der von einem Schrittmotor 22 oder einem Gleichstrommotor, der ebenfalls vom Mikroprozessor 14 gesteuert wird, durch den Drucker 10 vorgeschoben wird. Obwohl ein Druckkopf und ein Motor für den Vorschub des Vorrats für verschiedene Typen Strichcode-Drucker erforderlich sind, sind andere der in Fig. 1 dargestellten Eingabe- und Ausgabegeräte wie die Anzeige 24, die Tastatur 26, der Piepser 28 etc. nicht notwendig und ändern sich gemäß dem Typ des Druckers, in dem die Steuerung 12 verwendet wird. Die Steuerung 12 ist also auf Flexibilität ausgelegt, so daß sie in sehr komplexen teuren Druckern mit sämtlichen oder den meisten der dargestellten Eingabe- und Ausgabegeräte ebenso wie in preiswerteren Druckern, die nur wenige der dargestellten Eingabe- und Ausgabegeräte haben, verwendet werden kann. Aufgrund dieser Konzeption kann ein preiswerte Drucker mit der Steuerung 12 hochgerüstet werden, um zusätzliche Funktionen bereitzustellen, ohne die Basisarchitektur der Maschine zu ändern. Die Steuerung 12 kann beispielsweise in einem Strichcode-Drucker verwendet werden, der über eine Tastatur 26 eingegebene Daten als Reaktion auf die Betätigung einer Auslösetaste 30 durch einen Benutzer druckt. Die gleiche Steuerung 12 kann auch in einem Drucker verwendet werden, der keine Tastatur 26 oder keinen Auslöser 30 enthält, sondern Druckdaten von einem Host-Rechner oder dgl. über beispielsweise eine mit der Steuerung 12 gekoppelten RS 232 Kommunikationsschnittstelle 32 erhält, wobei die Daten einen Druckbefehl zum automatischen Ansteuern eines Druckvorgangs des Strichcode-Druckers 10 beinhalten.
  • Wie in Fig. 1 dargestellt enthält die Steuerung 12 eine Mikroprozessorschnittstelle 34, die es der Steuerung 12 gestattet, mit mindestens zwei Typen Mikroprozessoren zu kommunizieren, so daß die Steuerung 12 in einem Strichcode-Drucker 10 mit einem beliebigen der unterstützten Mikroprozessoren verwendet werden kann. Eine Speicherschutzschaltung 36 ist vorgesehen, um einen Benutzer daran zu hindern, Daten in einen geschützten Bereich des RAM 16 einzuschreiben. Dieses Merkmal ist in Druckern wünschenswert, bei denen es möglich ist, Software zur Steuerung des Betriebs des Mikroprozessors 14 in den RAM 16 des Druckers über die Kommunikationsschnittstelle 32 von einem Host-Rechner herunterzuladen. Zur jeweiligen Verbindung zwischen dem Mikroprozessor 14 und der Anzeige 24, der Tastatur 26 und dem Auslöser 30 sind eine Anzeigenschnittstelle 38, eine Tastaturschnittstelle 40 und eine Auslöserschnittstelle 30 vorgesehen. Ein serieller Eingangs-/Ausgangsport 44 ist so programmierbar, daß eine veränderliche Anzahl serieller Bits verschoben werden kann sowie Änderungen der Datenrichtung und Änderungen der Verschieberichtung möglich sind. Der serielle Eingangs-/Ausgangsport 44 ist also extrem flexibel und kann mit einer großen Vielfalt externer serieller Datengeräte verwendet werden. Eine Druckkopf-Schutzschaltung 44 ist in der Steuerung 12 enthalten, um ein Ausbrennen des Druckkopfes zu verhindern, indem sichergestellt wird, daß die Druckkopfelemente nicht zu lang mit Spannung versorgt und dadurch beschädigt werden. Ein universeller Eingangs-/Ausgangsport 46 ist vorgesehen, wobei jeder Kontaktstift dieses Port unabhängig als Eingang oder als Ausgang programmierbar ist. Eine Druckkopf-Daten- und Steuerschaltung 48 steuert die Übertragung der Druckdaten an den thermischen Druckkopf 20 sowie die Heizleitungen, die mit dem thermischen Druckkopf 20 gekoppelt sind, um die Menge der erzeugten Wärme zu regeln, wenn ein Druckkopfelement mit Spannung versorgt wird. Der Heizsteuerungsabschnitt innerhalb der Schaltung 48 ermöglicht es, die Steuerung 12 mit einem intelligenten oder mit einem nicht intelligenten thermischen Druckkopf zu verwenden. Wie im Stand der Technik hinreichend bekannt ist, regelt ein intelligenter thermischer Druckkopf die Zeitdauer selbst, während der jedes Druckkopfelement mit Spannung versorgt wird, gemäß der historischen Spannungsbeaufschlagung des betreffenden Druckkopfelements sowie der historischen Spannungsbeaufschlagung der umgebenden Druckkopfelemente, indem ein bestimmter Impuls aus einer Anzahl an diese gelieferten Taktimpulse gewählt wird. Demgegenüber gibt es den nicht intelligenten Druckkopf, der sich bezüglich der Regelung der Dauer der Spannungsbeaufschlagung auf den Mikroprozessor 14 stützt. Eine Schrittmotorsteuerung 50 spricht auf den Ausgang eines Impulsbreiten-Modulationsgenerators 52 an, um die Steuersignale für den Schrittmotor 22 des Strichcode-Druckers 10 zu erzeugen. Der Impulsbreiten-Modulationsgenerator 52 erzeugt außerdem Signale für eine Piepser-Schnittstelle 54, die einen Piepser 28 treibt. Ein dualer Universal-Asynchron-Empfänger/Sender (dual universal asynchronous receiver/transmitter - DUART) 56 wird vom Ausgang eines Baudratengenerators 58 so getaktet, daß er mit der Kommunikationschnittstelle 32 kommunizieren kann. Der Baudratengenerator ist programmierbar, um Eingangs-Taktimpulse verschiedener Frequenzen von einem Referenzfrequenzgenerator 60 anzunehmen, wobei jede Eingangsfrequenz ein zugehöriges Taktimpulsmuster zur Erzeugung von Ausgangstaktimpulsen mit einer gewünschten Frequenz hat. Der Baudratengenerator 58 bedient sich einer asymmetrischen Teilung, um die gewünschte Frequenz aus der verfügbaren Referenzfrequenz zu erzeugen. Interne Status- und Steuerregister 62 dienen zur Bereitstellung von Statusinformationen und zur Erzeugung verschiedener Interrupts für den Mikroprozessor 14.
  • Die Mikroprozessorschnittstelle 34 gemäß Fig. 2 gestattet es der Steuerung 12 mit einem Mikroprozessor 14 eines ersten Typs oder einer ersten Konfiguration in der Weise zu kommunizieren, daß der Mikroprozessor über einen Adreßbus und einen getrennten Datenbus kommuniziert. Ein Beispiel für einen solchen Mikroprozessor ist der Motorola Mikroprozessor MC68331, der im folgenden als der '331-Prozessor bezeichnet wird. Die Schnittstelle 34 gestattet es der Steuerung 12 außerdem, mit einem Mikroprozessor eines anderen Typs oder einer anderen Konfiguration zu kommunizieren, wie z. B. mit einem Intel 80C86XL, der im folgenden als der '186-Mikroprozessor bezeichnet wird, der einen Zeitmultiplex-Adreßdatenbus verwendet. Um die Anzahl der Kontaktstifte, die zum Datenaustausch mit diesen beiden unterschiedlichen Mikroprozessoren erforderlich sind, auf einem Minimum zu halten, enthält die Mikroprozessorschnittstelle 34 Gruppen von Kontaktstiften für die Kommunikation von einem Satz oder Typ Signale zwischen der Steuerung 12 und dem einen Typ Mikroprozessor; wobei die gleiche Gruppe von Kontaktstiften für die Kommunikation eines anderen Satzes oder Typs Signale zwischen der Steuerung 12 und einem Mikroprozessor des anderen Typs dient.
  • Im einzelnen enthält die Mikroprozessorschnittstelle 34 einen Modusmultiplexer 70 mit einem zur Leitung 76 gehörigen Modusstift für den Empfang von Informationen, die den Typ des mit der Steuerung 12 gekoppelten Mikroprozessors 14 angeben. Der Multiplexer 70 enthält außerdem eine Anzahl zu einem Bus 72 gehöriger Kontaktstifte, der in einem Modus '186-Mikroprozessor einen gemultiplexten Adreß-/Datenbus für die Signale AD0 bis AD15 bildet. Im Modus '331-Mikroprozessor bildet der zu den gleichen Kontaktstiften gehörige Bus 72 einen Datenbus zur Eingabe und Ausgabe nur der Daten, die von den Signalen D0 bis D15 repräsentiert werden. Eine Anzahl zum Multiplexer 70 gehöriger Stifte sind mit einem Bus 74 gekoppelt, der A16 bis A19 repräsentierende Adreßsignale sowohl im '186-Mikroprozessormodus als auch im '331-Mikroprozessormodus führt.
  • Die Mikroprozessorschnittstelle 34 enthält außerdem einen Signalspeicher 72. Im '186-Mikroprozessormodus bildet ein Bus 78 einen Ausgabebus, der mit einer Gruppe Kontaktstifte des Signalspeichers 72 verbunden ist, um die zwischengespeicherten Adressen AIL bis A6L und A12L bis A15L bereitzustellen. Im '331-Mikroprozessormodus jedoch bildet der Bus 78 einen Eingabebus, der mit den gleichen Stiften des Signalspeichers 72 gekoppelt ist, um die Adressen Al bis A6 und A12 bis A15 bereitzustellen, die in die Steuerung 12 eingegeben werden. Ein Bus 80 dient zur Bereitstellung der zwischengespeicherten Adressen AOL, A7L bis AllL und A16L bis A19L, die nur im '186- Mikroprozessormodus von der Steuerung 12 ausgegeben werden. Des weiteren stellt der '186 Mikroprozessor im '186-Mikroprozessormodus ein Freigabesignal ALE für den Signalspeicher bereit, das mit dem Signalspeicher 72 gekoppelt ist, um die darin zwischenzuspeichernden Adressen freizugeben. Der Signalspeicher 72 spricht auch auf ein Modussignal an, das vom Multiplexer 70 auf eine Leitung 82 gelegt wird, um zu bestimmen, ob der Signalspeicher Eingabeinformationen auf dem Bus 78 annehmen oder Ausgabeinformationen auf den Bus 78 oder den Bus 80 legen soll. Im Eingabemodus legt der Signalspeicher 72 die oben beschriebenen Adreßinformationen vom '311 Mikroprozessor von Bus 78 auf einen Bus 84 zur internen Verwendung durch die Steuerung 12. Im Ausgabemodus liest der Signalspeicher 72 die Adreßinformationen von Bus 84 und einem Bus 86 und liefert sie zur Zwischenspeicherung an die Ausgabebusse 78 und 80. Es sei darauf hingewiesen, daß andere Stifte der Mikroprozessorschnittstelle 34 benutzt werden können, um je nach Modus unterschiedliche Informationen zwischen der Steuerung 12 und dem Mikroprozessor 14 auszutauschen. Des weiteren enthält die Mikroprozessorschnittstelle 34 eine Anzahl Kontaktstifte, die ausschließlich zur Verwendung nur eines Typs Mikroprozessor reserviert sind.
  • Der Abschnitt zum Laden der Druckkopfdaten der Druckkopf- Steuerschaltung 48 ist in Fig. 3 dargestellt. Wie daraus ersichtlich ist, enthält ein doppelt gepuffertes Parallel-/ Seriell-Schieberegister 90 einen ersten Puffer, in den die parallelen Daten auf Bus 88 zuerst verschoben werden, und einen zweiten Puffer, in den die Daten vom ersten Puffer parallel übertragen werden, wobei die Daten aus dem zweiten Puffer seriell verschoben und über eine Leitung 96 mit dem thermischen Druckkopf 20 gekoppelt werden. Ein Zähler 92 ist mit dem Ausgang des Schieberegisters 90 gekoppelt, um die Anzahl der die Elemente des thermischen Druckkopfes repräsentierenden Datenbits zu zählen, die zum Druck einer Informationszeile mit Spannung zu beaufschlagen sind. Die Daten im Zähler 92 werden über den Datenbus 88 zum Mikroprozessor'14 zurück gekoppelt, so daß der Mikroprozessor 14 die Zählerinformationen für Funktionen des Energiemanagements und der Druckkopfüberwachung verwenden kann. Ein Ausgang auf der Leitung 98 vom doppelt gepufferten Schieberegister 90 repräsentiert den leeren oder vollen Status des ersten Puffers, so daß dann, wenn der Status des ersten Puffers rleer' ist, eine Anforderung für einen direkten Speicherzugriff bestätigt wird, um dem Mikroprozessor 14 einen Interrupt zu liefern, der meldet, daß das Schieberegister 90 Daten für die nächste zu druckende Zeile aufnehmen kann. Die Statusleitung leervoll 98 ist außerdem mit einem internen Statusregister 94 zum Speichern gekoppelt, so daß der Mikroprozessor 14 das Statusregister 94 abfragen kann, um den Zustand des ersten Puffers des doppelt gepufferten Schieberegisters 90 zu bestimmen.
  • Der Steuerungsabschnitt für die Druckkopfheizeinrichtung der Schaltung 48 der Steuerung 12 ist in Fig. 4 dargestellt. Wie zu ersehen ist, ist ein Rechteckwellen-Register 100 vorgesehen, um zu bestimmen, ob die Druckkopflogik ein Ausgangssteuersignal für einen intelligenten oder einen nicht intelligenten thermischen Druckkopf bereitstellt. Ist das Rechteckwellen-Register 100 mit dem Wert null programmiert, stellt die Schaltung die Ausgänge H0, H1, H2, H3 und H4 zur Heizungssteuerung für einen intelligenten Druckkopf aus den entsprechenden Druckkopfheizregistern 102 bis 106 bereit. Die Steuersignale H0 bis H4 für die Heizung sind jeweils aktive Signale auf L- Pegel, deren Länge einen wählbaren Spannungspegel in Form einer wählbaren Dauer der Spannungsbeaufschlagung für die Elemente des thermischen Druckkopfes 20 repräsentiert, um die Wärmemenge zu regeln, die von einem Druckelement zum Drucken eines Punktes erzeugt wird. So kann beispielsweise das Steuersignal H0 aus einem 800 ms langen aktiven Signal auf L-Pegel gebildet sein; das Steuersignal H&sub1; kann aus einem 600 ms langen aktiven Signal auf L-Pegel gebildet sein; das Steuersignal H2 kann aus einem 500 ms langen aktiven Signal auf L-Pegel gebildet sein; das Steuersignal H&sub3; kann aus einem 400 ms langen aktiven Signal auf L-Pegel gebildet sein, während das Steuersignal H4 aus einem 200 ms langen aktiven Signal auf L-Pegel gebildet sein kann.
  • Da jedes der Druckkopfheizregister 102 bis 106 die gleiche Konfiguration hat, wird nur das Register 102 detailliert beschrieben. Wie für das Register 102 dargestellt, wird bei Betrieb im Modus intelligenter Druckkopf eine Zahl, die die Länge des aktiven Signals auf L-Pegel für das Steuersignal H0 repräsentiert, d. h. 800 ms im obigen Beispiel, vom Datenbus 88 in das Register 108 geschrieben. Ein Taktsignal auf einer Leitung 110 taktet einen Zähler 112, um zu zählen, während welcher Zeitspanne der Ausgang des Registers 102 auf LOW liegt. Der Registerausgang geht nach HIGH, wenn der Wert im Zähler 112 gleich ist dem im Register 108 gespeicherten Wert, was von einem Komparator 114 bestimmt wird. Die Register 103 bis 106 erzeugen die Steuersignale H1 bis H4 in ähnlicher Weise.
  • Zur Steuerung eines nicht intelligenten thermischen Druckkopfes wird das Rechteckwellenregister 100 mit einem Wert ungleich null programmiert, um die Dauer einer Rechteckwellenausgabe vom Register 102 auf der dem Steuersignal H0 zugehörigen Leitung und die Dauer der zur Rechteckwelle komplementären Ausgabe vom Register 103 auf der dem Steuersignal H1 zugehörigen Leitung zu steuern. Dieses Steuersignal H0 steuert die Wärmemenge, die für eine Hälfte des nicht intelligenten Druckkopfes erzeugt wird, während das Steuersignal H1 die Wärmemenge steuert, die für die andere Hälfte des nicht intelligenten Druckkopfes erzeugt wird. Obwohl der von null verschiedene Wert im Register 100 die Dauer der Rechteckwellensignale H0 und H1 repräsentiert, wird die Gesamtlänge der Signale H0 und H1 von dem im Register 100 gespeicherten Wert, z. B. 800 ms, bestimmt.
  • Ein Zeilenintervallzähler 116 wird mit einem Wert geladen, der die Anzahl von Taktsignalen fepräsentiert, die zum Synchronisieren des Ladens und Erwärmens des Druckkopfes 20 verwendet werden. Der Zähler 116 erzeugt ein Signal PH LATCH auf einer Leitung 122 und ein komplementäres Signal LINE INTERVAL OUT auf einer Leitung 123, wenn der Zählwert des Zeilenintervallzählers eins beträgt. Das Signal PH LATCH dient zur Übergabe der Druckdaten an den thermischen Druckkopf 20, während das Signal LINE INTERVAL OUT zur Meldung dient, daß die Steuerung 12 zur Verarbeitung der Daten für die nächste zu druckende Zeile bereit ist. Es sei darauf hingewiesen, daß das Signal LINE INTERVAL OUT auf der Leitung 123 direkt verwendet oder an einen Interrupt-Generator 120 gelegt werden kann, um einen Interrupt zu erzeugen. Des weiteren ist ein internes Steuerregister 118 vorgesehen, um ein Start-Signal für den Druckkopf zu erzeugen, das den synchronisierten Heizzyklus des Druckkopfes beginnt. Fig. 5 und 6 sind Impulsdiagramme, die wie oben beschrieben die für einen intelligenten Druckkopf erzeugten Steuersignale H&sub0; bis H&sub4; und die für einen nicht intelligenten Druckkopf erzeugten Signale H&sub0; und H&sub1; sowie andere Steuersignale für den Druckkopf darstellen.
  • Der serielle Eingangs-/Ausgangsport 44 der Steuerung 12 ist in Fig. 7 dargestellt. Der serielle Eingangs-/Ausgangsport 44 enthält einen Ausgang parallel zum seriellen Umsetzer 130, der Daten auf dem parallelen Datenbus 88 empfängt, die seriell auf eine Leitung 136 heraus zu verschieben sind. Der serielle Eingangs-/Ausgangsport 44 enthält außerdem einen seriellen/- parallelen Eingangsumsetzer 132, der serielle Daten auf einer Leitung 138 empfängt, die in den Port 44 zu verschieben sind, um mit dem parallelen Datenbus 88 gekoppelt zu werden. Ein Datenzählregister 134 steuert den Ausgangsumsetzer 130 und den Eingangsumsetzer 132 als Reaktion auf vom Bus 88 erhaltene Daten, wobei die Daten die Anzahl der seriell zu verschiebenden Bytes, die Datenrichtung, d. h. ob die Daten aus dem Port 44 oder in den Port 44 zu verschieben sind, und die Richtung der Verschiebung, d. h. ob die Umsetzer 130 bzw. 132 vom höchstwertigen zum niedrigstwertigen oder vom niedrigstwerten zum höchstwertigen Bit verschieben, repräsentieren.
  • Als Antwort auf die vom Bus 88 erhaltenen Daten erzeugt das Datenzählregister 134 Taktsignale auf einer Leitung 140, wenn die Daten aus dem Port 44 zu verschieben sind, oder es erzeugt Taktsignale auf einer Leitung 142 zum Umsetzer 132, wenn Daten in den Port 44 zu verschieben sind. Ein Modussignal auf den entsprechenden Leitungen 144 und 146 weist den entsprechenden Umsetzer 130 oder 132 an, entweder das höchstwertige oder das niedrigstwertige Bit zuerst zu verschieben. Das Datenzählregister erzeugt auch ein Chipauswahlsignal 148 als Reaktion auf Daten, die vom Bus 88 in das Datenzählregister geschrieben werden, sowie ein serielles Synchronisierungstaktsignal auf einer Leitung 150. Es ist zu beachten, daß das Datenzählregister 134 gelesen werden kann, um den Status der Datenübertragung von dem das Register abfragenden Mikroprozessor zu bestimmen, um festzustellen, ob der darin enthaltene Zählwert abgelaufen ist, was auf den Abschluß der Datenübertragung hinweist.
  • Der programmierbare Baudratengenerator 58 gemäß Fig. 8 erzeugt aus einem Eingangstaktsignal auf Leitung 152 vom Referenzfrequenzgenerator 60 verschiedene Betriebsfrequenzen für den DUART 56. Die dem DUART 56 bereitzustellende Frequenz ist das 16-Fache der gewünschten Baudrate. Um eine Baudrate von 19,2 K zu unterstützen, muß deshalb die Mindestfrequenz, die in den DUART 56 eingegeben werden kann, 16 · 19,2 kHz = 307,2 kHz betragen. Sämtliche Standard-Baudraten von 75 Baud bis 19,2 KBaud können mittels des Baudratengenerator 58 aus den 307,2 kHz erzeugt werden. Da die erforderliche Baudrate von 19,2 K unterstützt werden sollte, wenn der Mikroprozessor 14 bei einer niedrigen Betriebsfrequenz arbeitet, die für einen Typ Mikroprozessor ca. 524 kHz und für einen anderen Typ Mikroprozessor 500 kHz oder 625 kHz beträgt, kann keiner der Mikroprozessoren Taktsignale liefern, die in ihren unteren Betriebsfrequenzen ganzzahlige Vielfache von 307,2 kHz sind. Durch eine asymmetrische Teilung kann jedoch eine in etwa korrekte Frequenz vom programmierbaren Baudratengenerator 58 erzeugt werden.
  • Eine asymmetrische Dividierschaltung 154 des Baudratengenerators 58 nimmt die asymmetrische Teilung vor, indem jeder Ausgangstaktimpuls aus einer Anzahl Eingangstaktimpulse in einer vorgegebenen Struktur gebildet wird. Jede Eingangsfrequenz erfordert eine andere Divisionsstruktur 156, um etwa die gleiche Grundausgangsfrequenz zu erhalten. Die asymmetrische Dividierschaltung 154 spricht auf die Eingangsfrequenz an, die in einem Frequenzregister 158 vom Mikroprozessor 14 eingestellt ist, um die entsprechenden Taktteiler zur Erzeugung der bestimmten Divisionsstruktur zu wählen, die erforderlich ist, um die Ausgangstaktimpulse einer gewünschten Frequenz aus den Eingangstaktimpulsen zu erzeugen. Beträgt beispielsweise die Frequenz der Eingangstaktimpulse auf Leitung 152 500 kHz, so erzeugt eine 13 : 8-Teilerschaltung der Dividierschaltung 154 ein Ausgangstaktsignal von 307,69 kHz (500 kHz: 13/8 - 307,69 kHz). Die 13 : 8-Teilerschaltung zieht entweder einen oder zwei Eingangstaktzyklen der folgenden Strukturabfolge heran, die kontinuierlich über jeden der 13 Eingangstaktzyklen wiederholt werden, um einen Ausgangstaktzyklus zu erzeugen: 2 - 2 - 1-2 - 2 - 1-2 - 1. Für ein Eingangstaktsignal von 524 kHz wird eine 17 : 10-Teilerschaltung verwendet, um einen 308,46 kHz Takt zu erzeugen, der innerhalb von 0,34% der gewünschten Rate von 307,2 kHz liegt. Die 17 : 10-Teilerschaltung zieht entweder einen oder zwei Eingangstaktzyklen der folgenden Strukturabfolge heran, die kontinuierlich über jeden der 17 Eingangstaktzyklen wiederholt werden, um einen Ausgangstaktzyklus zu erzeugen: 2 - 2 - 1-2 - 2 - 1-2 - 2- 2- 1. Für ein Eingangstaktsignal von 625 kHz wird eine 64 : 63-Teilerschaltung verwendet, um einen 615,23 kHz Takt zu erzeugen, der innerhalb von 0,13% einer optimalen Rate von 614,4 kHz liegt. Die 64 : 63-Teilerschaltung verwendet mit jedem Eingangstaktimpuls mit Ausnahme des 64. Taktimpulses eine sich wiederholende Struktur von 64 Eingangstaktimpulsen, wodurch ein Ausgangstaktimpuls erzeugt wird. Deshalb erzeugt jede Gruppe aus 64 Eingangstaktimpulsen 63 Ausgangstaktimpulse. Fig. 10 zeigt die verschiedenen Taktstrukturen, die für die oben erörterten Referenzfrequenzen 500 kHz, 524 kHz und 625 kHz erzeugt werden.
  • Die in Fig. 9 dargestellte Speicherschutzschaltung ermöglicht, daß ein Speicherbereich, insbesondere der RAM 16, geschützt wird, so daß die im geschützten Bereich gespeicherten Informationen nicht versehentlich mit anderen Informationen überschrieben werden können. Die Speicherschutzschaltung 36 enthält Register 160 für Schutzgrenzwerte, in das der obere und der untere Grenzwert des zu schützenden Adreßbereichs eingeschrieben werden. Die Adresse des RAM 16, in den geschrieben wird, wird mit dem oberen Grenzwert und dem unteren Grenzwert durch entsprechende Komparatoren 162 und 164 verglichen, um zu bestimmen, ob die Schreibadresse innerhalb des geschützten Adreßbereichs liegt. Ist dies nicht der Fall, kann die betreffende Adresse des RAM 16 eingeschrieben werden. Liegt jedoch die Schreibadresse innerhalb des geschützten Adreßbereichs, sperrt die Speicherschutzschaltung 36 das Schreibsignal, um so verhindern, daß in den geschützten Bereich des RAM geschrieben wird.
  • Die Speicherschutzschaltung 36 kann deaktiviert werden, damit ein neues Programm z. B. von der Kommunikationsschnittstelle 32 in den RAM 16 heruntergeladen werden kann. Die Speicherschutzschaltung 36 wird durch ein Paßwort gefolgt von der gleichzeitigen Betätigung bestimmter Tasten auf der Tastatur 26 deaktiviert, während die Tastaturschnittstellensteuerung 40 sich im Modus 'Schreibschutz deaktivieren' befindet. Diese Ereignisfolge informiert den Mikroprozessor 14 über ein internes Statusregister 62, daß der Schreibschutz deaktiviert worden ist. Nachdem der Schreibschutz deaktiviert worden ist, kann in den bisher geschützten Bereich des RAM 16 geschrieben werden. Um wieder einen neuen Bereich des RAM 16 zu schützen, werden nach dem nächsten System-Reset neue obere und untere Grenzwert in das Register 160 geschrieben.
  • Die Steuerung ist sehr flexibel, so daß sie verschiedene Typen Mikroprozessoren 14 für den Drucker, verschiedene Typen Druckköpfe 20, verschiedene Typen im Drucker 10 zu verwendende serielle Eingangs- und Ausgangsgeräte und verschiedene Software- Speicherprozesse mit der im Speicher des Druckers geschützten Software aufnehmen kann. Somit kann die Steuerung 12 der vorliegenden Erfindung in verschiedenen Druckertypen verwendet werden, ohne daß diese dazu geändert werden müssen, um so die Entwicklungsdauer und die Kosten in Zusammenhang mit neuen Strichcode-Druckern zu senken.

Claims (1)

1. Strichcode-Drucker, der einen Prozessor mit einem zugehörigen Speicher (16) aufweist, in den bzw. aus dem mittels einer Speicherschutzeinrichtung (36) geschrieben bzw. ausgelesen werden kann, gekennzeichnet durch:
ein programmierbares Register (160) zum Speichern von Informationen, die einen Adressenbereich in diesem Speicher repräsentieren, die den zu schützenden Bereich dieses Speichers definieren, und Einrichtungen (162, 164) zum Vergleichen einer Schreibadresse, die einen Platz dieses Speichers definiert, in den geschrieben werden soll, mit diesem gespeicherten Adressenbereich, wobei diese Vergleichseinrichtungen (162, 164) verhindern, daß Informationen in diesen Speicherplatz geschrieben werden, wenn die Schreibadresse innerhalb des Adressenbereichs liegt, der von in diesem programmierbaren Register (160) gespeicherten Informationen repräsentiert wird.
DE69427712T 1994-01-07 1994-12-16 Strichcodedrucker Expired - Fee Related DE69427712T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US08/178,891 US5497450A (en) 1994-01-07 1994-01-07 Universal controller interface for barcode printers

Publications (2)

Publication Number Publication Date
DE69427712D1 DE69427712D1 (de) 2001-08-16
DE69427712T2 true DE69427712T2 (de) 2001-11-15

Family

ID=22654329

Family Applications (2)

Application Number Title Priority Date Filing Date
DE69427712T Expired - Fee Related DE69427712T2 (de) 1994-01-07 1994-12-16 Strichcodedrucker
DE69427709T Expired - Fee Related DE69427709T2 (de) 1994-01-07 1994-12-16 Universelle steuerungsschnittstelle für strichcodedrucker

Family Applications After (1)

Application Number Title Priority Date Filing Date
DE69427709T Expired - Fee Related DE69427709T2 (de) 1994-01-07 1994-12-16 Universelle steuerungsschnittstelle für strichcodedrucker

Country Status (5)

Country Link
US (1) US5497450A (de)
EP (2) EP0739522B1 (de)
CA (1) CA2182414C (de)
DE (2) DE69427712T2 (de)
WO (1) WO1995019014A1 (de)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2871956B2 (ja) * 1992-07-01 1999-03-17 キヤノン株式会社 印刷制御装置及びそのインタフェースの設定方法
KR100228793B1 (ko) 1996-06-30 1999-11-01 윤종용 프린트 데이타 처리방법
US5862310A (en) * 1996-08-21 1999-01-19 Becton Dickinson And Company Data formatting system
US6261009B1 (en) 1996-11-27 2001-07-17 Zih Corporation Thermal printer
US6618162B1 (en) * 1999-01-26 2003-09-09 Intermec Ip Corp. Apparatus and method to configure a device, such as a printer, over a network
US20050274801A1 (en) * 1999-01-29 2005-12-15 Intermec Ip Corp. Method, apparatus and article for validating ADC devices, such as barcode, RFID and magnetic stripe readers
US6857013B2 (en) * 1999-01-29 2005-02-15 Intermec Ip.Corp. Remote anomaly diagnosis and reconfiguration of an automatic data collection device platform over a telecommunications network
US6976062B1 (en) * 1999-09-22 2005-12-13 Intermec Ip Corp. Automated software upgrade utility
US6525835B1 (en) * 1999-12-15 2003-02-25 Pitney Bowes Inc. Method and system for parcel label generation
US6705527B1 (en) 2000-06-01 2004-03-16 Psc Scanning, Inc. Universal interface driver system for data reader
US6804727B1 (en) 2001-02-23 2004-10-12 Lexmark International, Inc. Method for communication from a host computer to a peripheral device
US7137893B2 (en) * 2001-05-09 2006-11-21 Wms Gaming Inc. Method and apparatus for write protecting a gaming storage medium
GB2396208A (en) * 2002-12-14 2004-06-16 Rolls Royce Plc Environmental control system
US6817697B2 (en) * 2003-04-14 2004-11-16 Lexmark International, Inc. Systems and methods for printhead architecture hardware formatting
US20050137937A1 (en) * 2003-12-17 2005-06-23 Angela Njo Method and apparatus for web-based label printing
US8156387B2 (en) 2003-12-19 2012-04-10 Pitney Bowes Inc. Method and system for error manipulation
DE102004060156A1 (de) * 2004-11-30 2006-06-01 Francotyp-Postalia Ag & Co. Kg Verfahren zum Ansteuern eines Thermotransferdruckknopfes
US7761864B2 (en) 2005-08-09 2010-07-20 Intermec Ip Corp. Method, apparatus and article to load new instructions on processor based devices, for example, automatic data collection devices
US8944332B2 (en) 2006-08-04 2015-02-03 Intermec Ip Corp. Testing automatic data collection devices, such as barcode, RFID and/or magnetic stripe readers
JP2008299425A (ja) * 2007-05-29 2008-12-11 Toshiba Corp データ転送装置及びデータ転送方法
CN103153630B (zh) 2010-06-24 2016-08-10 艾利丹尼森公司 手持便携式打印机
US10002651B2 (en) * 2016-10-06 2018-06-19 SK Hynix Inc. Semiconductor devices
US11060778B2 (en) 2017-10-29 2021-07-13 Sumitomo (Shi) Cryogenic Of America, Inc. Universal controller for integration of cryogenic equipment, requiring different control mechanisms, onto a single operating platform

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4686506A (en) * 1983-04-13 1987-08-11 Anico Research, Ltd. Inc. Multiple connector interface
US4839793A (en) * 1987-07-01 1989-06-13 Baytec, Inc. Multiple computer interface
US4954968A (en) * 1988-03-16 1990-09-04 Minolta Camera Kabushiki Kaisha Interface system for print system
GB8810387D0 (en) * 1988-05-03 1988-06-08 Altham D R S Printer control device
US5233167A (en) * 1991-06-24 1993-08-03 Positek Incorporated Multi-function terminal
US5347113A (en) * 1991-11-04 1994-09-13 Spectra-Physics Scanning Systems, Inc. Multiple-interface selection system for computer peripherals
US5330370A (en) * 1991-11-04 1994-07-19 Spectra-Physics Scanning Systems, Inc. Multiple-interface selection system for computer peripherals

Also Published As

Publication number Publication date
EP0739522A1 (de) 1996-10-30
EP0739522A4 (de) 1997-09-10
EP0902388A1 (de) 1999-03-17
CA2182414A1 (en) 1995-07-13
US5497450A (en) 1996-03-05
DE69427709D1 (de) 2001-08-16
EP0739522B1 (de) 2001-07-11
CA2182414C (en) 2003-06-17
WO1995019014A1 (en) 1995-07-13
DE69427709T2 (de) 2002-05-08
EP0902388B1 (de) 2001-07-11
DE69427712D1 (de) 2001-08-16

Similar Documents

Publication Publication Date Title
DE69427712T2 (de) Strichcodedrucker
DE68903649T2 (de) Verfahren und vorrichtung fuer die stromversorgung des thermischen druckkopfes eines thermo-druckers.
DE68922439T2 (de) Verfahren zum Betreiben eines IC-Kartenlesers/-schreibers.
DE68924061T2 (de) Versionskontrolle in einem Datenverarbeitungssystem.
DE3844033C2 (de) Speicherschaltung für ein Mikroprozessorsystem
DE2951160C2 (de)
DE3881104T2 (de) Druckverfahren für thermische Drucker.
DE2825185A1 (de) Drucker-steuereinrichtung
DE3533163A1 (de) Adresszuweisungssystem fuer einen bildspeicher
DE2501793C2 (de) Druckmaschine
DE3873214T2 (de) Steuerschaltung fuer thermisches drucken.
EP0645249B1 (de) Steuerschaltung für eine Thermodruckmaschine
DE2720480A1 (de) Mikrocomputer fuer eine materialhandhabungsanlage
DE3130145C2 (de) Eingabe/Ausgabe-Schnittstellensteuereinrichtung
DE69409721T2 (de) Einrichtung und Verfahren zum Steuern von Thermodruckheizelementen in einer Aufzeichnungsvorrichtung
DE3501569A1 (de) Elektronische ausruestung
EP0580274A2 (de) Verfahren und Anordnung für einen internen Kostenstellendruck
DE3512059C3 (de) Aufzeichnungsgerät
DE69430292T2 (de) Steuereinrichtung für eine elektronische Frankiermaschine mit programmierbarer anwendungsspezifischer integrierter Schaltung
DE69126590T2 (de) Zeilenwärmedrucker
DE3874241T2 (de) Etikettendrucker.
DE2331874C3 (de) Vorrichtung zum rechnerischen Verarbeiten von Kostenrechnungsaufzeichnungen
DE69019312T2 (de) Serien-Drucker in Punktmatrixverfahren.
DE3531106C2 (de)
DE3878511T2 (de) System und verfahren zur kontrolle einer thermischen aufzeichnung.

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee