DE4135278A1 - Verfahren und schaltkreis zum abtasten von tasten fuer ein mikrocomputersystem - Google Patents

Verfahren und schaltkreis zum abtasten von tasten fuer ein mikrocomputersystem

Info

Publication number
DE4135278A1
DE4135278A1 DE4135278A DE4135278A DE4135278A1 DE 4135278 A1 DE4135278 A1 DE 4135278A1 DE 4135278 A DE4135278 A DE 4135278A DE 4135278 A DE4135278 A DE 4135278A DE 4135278 A1 DE4135278 A1 DE 4135278A1
Authority
DE
Germany
Prior art keywords
channel
key
circuit
value
memory
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.)
Granted
Application number
DE4135278A
Other languages
English (en)
Other versions
DE4135278C2 (de
Inventor
Sun-Don Kwon
Hyeon-Su Kim
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.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
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 Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of DE4135278A1 publication Critical patent/DE4135278A1/de
Application granted granted Critical
Publication of DE4135278C2 publication Critical patent/DE4135278C2/de
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/02Digital computers in general; Data processing equipment in general manually operated with input through keyboard and computation using a built-in program, e.g. pocket calculators
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M11/00Coding in connection with keyboards or like devices, i.e. coding of the position of operated keys
    • H03M11/003Phantom keys detection and prevention

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Input From Keyboards Or The Like (AREA)

Description

Die vorliegende Erfindung bezieht sich auf ein Verfahren und einen Schaltkreis zum Abtasten von Tasten in einem Mikrocomputersystem unter Verwendung eines zweiseitigen Kanals und insbesondere auf ein Verfahren und einen Schaltkreis zum Abtasten von Tasten, um während einer Tastenabtastoperation einen Schaltungskurzschluß zu verhindern und eine Tastenüberprüfung und automatische Systemoperationen mit einer vereinfachten Schaltkreisstruktur ausführen.
In einem herkömmlichen Schaltkreis zum Abtasten von Tasten, der in der koreanischen Patentschrift No. 89-2 297 im Namen desselben Anmelders veröffentlicht ist, werden Signale, die in einem Schaltkreis 3 der Tastenmatrix festgestellt sind, an die Dateneingangskanäle D0-D2 eines Mikroprozessors 1 durch einen Multiplexer 4 geführt, wie in Fig. 5 gezeigt ist. In Fig. 5 sind die Ausgangskanäle P0, P1, P2 und P3 eines Mikroprozessors 1 entsprechend mit den Eingangsanschlüssen a, b, c und d des Demultiplexers 2 verbunden. Die Impulse der Ausgangsanschlüsse O-F des Demultiplexers 2 werden sequentiell an jede Zeilenabtastleitung Y0 bis Y15 des Matrixschaltkreises 3 geliefert. Danach werden die Daten der Spaltenabtastleitungen X0 bis X7 des Matrixschaltkreises 3 an die Eingangsanschlüsse 0-7 des Multiplexers 4 eingegeben, dessen Ausgänge Q0-Q2 die Dateneingangskanäle D0-D2 des Mikroprozessors 1 speisen. Folglich erfordert der herkömmliche Schaltkreis zum Abtasten von Tasten zusätzlich Schaltkreise, wie z. B. ein Demultiplexer und ein Datenpuffer und erfordern einen weiteren Schaltkreis, welcher Dioden enthält, um einen Kurzschluß an den Kanälen zu überwachen, wenn zwei oder mehr Tasten simultan gedrückt werden.
Daher ist es ein Ziel der vorliegenden Erfindung, ein Verfahren und einen Schaltkreis zum Abtasten von Tasten bereitzustellen, welche eine vereinfachte Verarbeitung der Eingabeoperation in einem Mikrocomputer erlaubt durch die Verwendung eines zweiseitigen Kanals, wobei keine Dioden zur Verhinderung eines Schaltungskurzschlusses erforderlich sind und eine Tastenüberwachung und automatische Anschaltung des Systems mit einem vereinfachten Schaltkreis erfolgt.
Um dieses Ziel zu erreichen, wird ein Schaltkreis zum Abtasten von Tasten in einem Mikrocomputersystem bereitgestellt, welcher aus einer Tastatur besteht, die eine mXn Tastenmatrix aufweist und einem Mikrocomputer, um die Eingabeoperation auf der Tastatur zu erkennen, wobei der Schaltkreis zum Abtasten von Tasten umfaßt:
einen ersten Kanal, welcher m Zeilensignale direkt empfängt, die von der Tastatur über Zeilenabtastleitungen in den Mikrocomputer geführt sind;
einen ersten Speicher, um den logischen Wert zu speichern, der aus der logischen Multiplikation der M Zeilensignale, welche an den ersten Kanal gespeist werden, mit dem vorangegangenen gespeicherten logischen Wert entsteht;
einen zweiten Kanal, welcher n Spaltensignale direkt empfängt, die von der Tastatur über Spaltenabtastleitungen in den Mikrocomputer geführt sind;
ein Datenrichtungsregister, um jedes Bit von n Einheiten des zweiten Kanals zu setzen, um diesen als einen Eingangs- oder Ausgangskanal zu verwenden;
einen zweiten Speicher, um den logischen Wert zu speichern, der aus der logischen Summation der n Spaltensignale, welche an den zweiten Kanal eingegeben werden, mit den logischen Werten des Datenrichtungsregisters entsteht; und
einen Abschnitt mit pull-up-Widerständen, um einen logischen Referenzwert dem mXn Tastenmatrixschaltkreis zur Verfügung zu stellen.
Die Aufgabe wird auch durch ein Verfahren gelöst zum Abtasten von Tasten in einem Mikrocomputersystem mit einer Tastatur, welche einen mXn Tastenmatrixschaltkreis besitzt, einem ersten und zweiten Kanal, um mXn Zeilen und Spaltensignale zu verarbeiten, einen ersten m-Bit-Speicher und einem zweiten n-Bit-Speicher, um die logischen Werte an dem entsprechenden ersten und zweiten Kanal zu speichern und einem Datenrichtungsregister, welches jedes Bit des zweiten Kanals setzt, um diesen als einen Eingangskanal oder Ausgangskanal zu verwenden, wobei das Verfahren zum Abtasten der Tasten folgende Schritte beinhaltet:
Initialisieren des Mikrocomputersystems durch die Bereitstellung des ersten Kanals als ein Eingangskanal und die Zuordnung von vorbestimmten logischen Werten dem zweiten Kanal, den ersten und zweiten Speichern und dem Datenrichtungsregister;
Abtasten eines jeden Bits des Datenrichtungsregisters, wenn irgendeine Taste auf der Tastatur, welche einen mXn-Tastenmatrixschaltkreis besitzt, gedrückt wird;
Einspeichern des fortlaufenden logischen Wertes des ersten m-Bit-Speichers logisch multipliziert mit dem fortlaufenden logischen Wert des ersten Kanals, in den ersten Speicher; und
Einspeichern des fortlaufenden logischen Wertes des zweiten n-Bit-Speichers logisch summiert mit dem fortlaufenden logischen Wert des Datenrichtungsregisters, in den zweiten Speicher;
und Wiederholen des Abtastverfahrens, bis das Übertragungsbit des Datenrichtungsregisters eine logische 1 wird;
Feststellen, ob die Anzahl der logischen Nullen der fortlaufenden logischen Werte, welche in den entsprechenden Bits des ersten Speichers gespeichert sind, größer als 1 ist und ob die Anzahl der logischen Einsen der fortlaufenden logischen Werte, welche in den entsprechenden Bits des zweiten Speichers gespeichert sind, größer als 1 sind;
Fortfahren mit einem "Operation Ende"-Schritt, wenn ein Fehler festgestellt wird bei der Überprüfung, ob eine Vielzahl von Tasten gedrückt ist, für den Fall, daß in dem Verfahren zur Feststellung der Anzahl festgestellt worden ist, daß die Anzahl der logischen Einsen oder Nullen größer als 1 ist; und
Verarbeitung der Eingabeoperation durch die Berechnung des bestimmten Wertes der gedrückten Taste nach einer vorgegebenen Formel für den Fall, daß in dem Verfahren zur Feststellung der Anzahl festgestellt worden ist, daß weder die Anzahl der logischen Nullen noch der der Einsen größer als 1 ist.
Die oben angegebene Aufgabe und andere Vorteile der vorliegenden Erfindung werden noch offensichtlicher durch die detaillierte Beschreibung eines bevorzugten Ausführungsbeispiels der vorliegenden Erfindung unter Bezugnahme auf die Zeichnungen.
Fig. 1 zeigt ein schematisches Schaltkreisdiagramm, welches ein bevorzugtes Ausführungsbeispiel des Schaltkreises zum Abtasten von Tasten nach der vorliegenden Erfindung darstellt;
Fig. 2 zeigt ein Flußdiagramm, welches das Verfahren zum Abtasten von Tasten des Schaltkreises, welcher in Fig. 1 gezeigt ist, erläutert;
Fig. 3 illustriert die Operation Linksverschiebung mit Rotation des Datenrichtungsregisters, welches in Fig. 1 gezeigt ist;
Fig. 4A und 4B zeigen in schematischen Schaltkreisdiagrammen zwei weitere Ausführungsbeispiele des zweiseitigen Kanals, welcher in dem Schaltkreis zum Abtasten von Tasten des Mikrocomputersystems nach der vorliegenden Erfindung verwendet wird.
Fig. 5 zeigt ein schematisches Schaltkreisdiagramm eines herkömmlichen Schaltkreises zum Abtasten von Tasten.
Im folgenden wird ein bevorzugtes Ausführungsbeispiel der vorliegenden Erfindung unter Bezugnahme auf die Zeichnungen beschrieben.
In Fig. 1, in der ein Schaltkreis zum Abtasten von Tasten eines Mikrocomputersystems nach der vorliegenden Erfindung gezeigt ist, ist eine Tastatur 20 mit einem mXn-Tastenmatrixschaltkreis direkt über Zeilenabtastleitungen 50 und Spaltenabtastleitungen 40 mit dem Mikrocomputer 10 verbunden, ohne zusätzliche Schaltkreise, wie z. B. den Demultiplexer des herkömmlichen Schaltkreises vorzusehen.
Ein bevorzugtes Ausführungsbeispiel der vorliegenden Erfindung wird im folgenden in Zusammenhang mit einer Tastatur 20 mit einem Tastenmatrixschaltkreis, welcher aus einer 4X4 Tastenmatrix, nämlich 16 Tasten von O-F, aufgebaut ist, erläutert.
Ein Mikrocomputer 10 beinhaltet einen ersten Kanal PA mit 4 Bits b0, b1, b2 und b3, der ein 4-Bit-Zeilensignal über die Zeilenabtastleitungen erhält, wenn eine Taste auf der Tastatur 20 gedrückt wird; ein erster Speicher MA, welcher die logischen Werte des 4-Bit-Zeilensignals speichert, welches an den ersten Kanal PA eingespeist und, logisch mit dem vorangegangenen, darin gespeicherten logischen Wert multipliziert wird; einen zweiten Kanal PB, welcher 4 Bits b0, b1, b2 und b3 besitzt, um ein 4-Bit-Spaltensignal zu empfangen, welches von dem Keyboard 20 über die Spaltenabtastleitungen ausgegeben wird; ein Datenrichtungsregister DDR, um jedes Bit des zweiten Kanals PB in einen Eingangs- oder Ausgangsmodus zu setzen; einen zweiten Speicher MB, um den logischen Wert des 4-Bit-Spaltensignals zu speichern, welches an den zweiten Kanal PB eingespeist wird, und logisch mit dem logischen Wert eines jeden Bits des Datenrichtungsregisters DDR summiert wird; einen Abschnitt 30 mit Full-up-Widerständen zur Bereitstellung eines logischen Referenzwertes für die Tastatur 20, der an die Tastatur 20 und ein UND-Gatter 60 gekoppelt ist. Das UND-Gatter 60 erstellt das logische Produkt der Signale, welche von der Tastatur ausgegeben werden, zur Verwendung als ein Kontrollsignal, um eine automatische Ein-Ausschaltefunktion des Mikrocomputersystems auszuführen, oder um ein Tastenüberprüfungssignal bereitzustellen.
Die Betriebsweise des oben beschriebenen Schaltkreises zum Abtasten von Tasten nach der vorliegenden Erfindung wird im folgenden detailliert unter Bezugnahme auf Fig. 2 beschrieben, die ein Flußdiagramm des Verfahrens zum Abtasten von Tasten eines Mikrocomputersystems nach der vorliegenden Erfindung darstellt.
Wie in Fig. 2 dargestellt, initialisiert das Verfahren zum Abtasten von Tasten in einem Mikrocomputersystem bestimmte Parameter, um zu überprüfen, ob eine Taste auf der Tastatur 20 gedrückt ist. Dies wird erreicht im Schritt S601 durch das Versetzen des ersten Kanals PA in einen ausschließlichen Eingangsmodus und durch das Bereitstellen der Werte der entsprechenden Bits in dem zweiten Kanal PB, den ersten und zweiten Speichern MA und MB und dem Datenrichtungsregister DDR mit den Werten "0000", "1111", "0000" und "1111", respektive. Hier ist jedes Bit des zweiseitigen Kanals PB in einen Ausgangsmodus versetzt, wenn der Wert des entsprechenden Bits des Datenrichtungsregisters DDR 1 ist, und jedes Bit des zweiseitigen Kanals PB ist in einen Eingangsmodus versetzt, wenn der Wert des entsprechenden Bits des Datenrichtungsregisters DDR Null ist.
Der Schritt S602 repräsentiert eine Benutzerfunktion. Wenn der Benutzer einen oder mehrere Tasten im Schritt S602 drückt, fährt das Programm mit Schritt S603 weiter, um zu überprüfen, welche Taste gedrückt ist. Im Schritt S603 wird das Datenrichtungsregister DDR auf "0001" gesetzt und beginnt, die Tasten der ersten Spalte zu überprüfen. Diese besondere Operation bedeutet, daß b3, b2 und b1 des zweiten Kanals PB sich in dem Eingangsmodus befinden und b0 sich in dem Ausgangsmodus befindet. Wenn irgendwelche Tasten in dieser Spalte gedrückt worden sind, werden sie im Schritt S604 gefunden, wenn der erste Kanal PA mit dem Wert "1111", der von den Pull-up-Widerständen 30 bereitgestellt wird, verglichen wird. Wenn der erste Port PA mit dem Wert "1111" übereinstimmt, wird festgestellt, daß keine der Eingangskanalbits auf ein niedriges Niveau heruntergezogen sind, also keine gedrückten Tasten in dieser Spalte existieren. Dann fährt das Programm mit Schritt S606 fort, worin das Datenrichtungsregister DDR den Wert C des Übertragungsbits löscht und eine Linksverschiebung mit Rotation (RSL) ausführt, wie in Fig. 3 gezeigt ist, um die nächste Spalte zu überprüfen.
Wenn dagegen der Schritt S604 zeigt, daß PA unterschiedlich von "1111" ist, dann stellt der Entscheidungsprozeß fest, daß wenigstens eine Taste im Schritt S602 gedrückt worden ist und fährt mit Schritt S605 fort, worin der Mikroprozessor 10 zwei logische Operationen ausführt: Als erstes wird der laufende Wert des ersten Speichers MA mit dem logischen Wert des ersten Kanals PA multipliziert, und danach in den Speicher MA zurückgeschrieben und zweitens wird der laufende Wert des zweiten Speichers MB mit dem logischen Wert des Datenrichtungsregisters DDR summiert, und danach in den Speicher MB zurückgeschrieben. Nach dem Schritt S605 wird das Übertragungsbit gelöscht und eine RSL-Funktion in dem Datenrichtungsregister DDR in Schritt S606 ausgeführt.
Schritt S607 überprüft, ob der Wert C des Übertragungsbits gleich 1 ist. Dies passiert, wenn das Datenrichtungsregister DDR, welches in Schritt S603 auf "0001" gesetzt ist, vier RSL-Funktionen komplettiert hat und alle Spalten abgetastet worden sind. Schritte S604, S605 und S606 werden solange wiederholt, bis C = 1 ist.
Nach dem Abtasten der Tasten wird in den Schritten S608 und S609 festgestellt, wieviele, falls überhaupt, Tasten gedrückt sind. Wenn C = 1 im Schritt S607, wird festgestellt, ob der zweite Speicher MB noch auf "0000" im Schritt S608 gesetzt ist. Wenn MB = 0000 im Schritt S608, ist die Operation beendet mit dem Ergebnis, daß keine gedrückten Tasten festgestellt sind. Wenn jedoch MB ungleich 0000 im Schritt S608 ist, fährt die Operation mit Schritt S609 fort, um festzustellen, ob sich ein Doppeltastenfehler ereignet hat. Wenn mehr als eine logische Null im ersten Speicher MA erscheint, oder wenn mehr als eine logische 1 im zweiten Speicher MB präsent ist, entscheidet der Schritt S609, daß mehrere Tasten gedrückt worden sind und die Operation fährt dann mit Schritt S610 fort, führt eine Fehlerverarbeitung aus und schließt dann die Operation ab.
Wenn in der Zwischenzeit nur eine Null in MA und eine 1 in MB im Schritt S609 ist, definiert der Schritt S611 den Wert der Taste mit der Formel: 4m+n = MV, was in Schritt S612 die Eingabe und das Beenden der Prozedur ermöglicht. Hier bezeichnet MV den Wert der Taste, m entspricht einem Wert von m, wenn das m-te Bit des ersten Speichers MA eine logische Null ist und n entspricht einem Wert von n, wenn das n-te Bit des zweiten Speichers MB eine logische 1 ist.
Zum Beispiel wenn die neunte Taste der Tastatur im Schritt S602 gedrückt ist, wird "1011" an den ersten Kanal PA gespeist. Dadurch wird der Wert "1111" (im Schritt S601 im Speicher MA initialisiert) logisch mit dem Wert "1011" (dem gegenwärtig gehaltenen Eingangswert von PA) logisch multipliziert und das Produkt "1011" wird im ersten Speicher MA gespeichert. Die Operation im zweiten Speicher MB wird ausgeführt durch die logische Summation der Werte "0000" (im Schritt S601 in MB gesetzt) mit dem Wert "0010" (dem gegenwärtigen Status des DDR) und das Ergebnis "0010" wird in dem zweiten Speicher MB gespeichert. Dadurch, daß m den Wert 2 (b2) annimmt und n den Wert 1 (b1) annimmt, wird festgestellt, daß MV den Wert 9 annimmt oder die neunte Taste der Matrix gedrückt ist.
Darüber hinaus werden die logischen Werte der Zeilen- und Spaltensignale, welche Werte des Zeilen-Spalten-Signals der Taste sind, in jedem Bit des ersten und zweiten Speichers MA und MB gespeichert durch das Abtasten der Tasten während der Schritte S603 bis S607. Der Grund dafür, den Wert "0001" in das Datenrichtungsregister DDR im Schritt S603 zu schreiben, liegt darin, die Tastatur 20 von der ersten Spalte an abzutasten und dabei einen Kurzschluß zu verhindern durch das Versetzen der Bits b3, b2 und b1 des zweiseitigen zweiten Kanals PB in den Eingangsmodus, wenn mehrere Tasten zur gleichen Zeit gedrückt werden. Im Schritt S604 wird festgestellt, ob eine Taste einer Spalte gedrückt ist, und im Schritt S605 wird das Signal, das die Position der gedrückten Taste kennzeichnet, in jedem der Speicher MA und MB gespeichert. Im Schritt S606 wird der Wert des Datenrichtungsregisters DDR verschoben, um die nächste Spalte zu überprüfen und im Schritt S607 wird überprüft, ob ein oder kein Übertragungsbit generiert worden ist, um festzustellen, ob ein Abtastvorgang abgeschlossen ist. Schritt S608 stellt fest, daß keine Taste gedrückt ist, wenn der Wert des zweiten Speichers MB unverändert ist und Schritt S609 stellt fest, ob mehr als eine Taste gedrückt ist, wenn sich die Bitwerte des ersten und zweiten Speichers MA und MB verändert haben. Zu dieser Zeit, wenn mehr als eine Taste gedrückt ist, wird diese Operation als ein Fehler oder eine Doppeleingabe im Schritt S610 verarbeitet und wenn nur eine Taste gedrückt ist, stellt der Schritt S611 fest, welche Taste gedrückt ist. Das Verfahren zum Feststellen, welche Taste gedrückt ist, benutzt den Bitwert, welcher in dem ersten und zweiten Speicher MA und MB gespeichert ist. In dem Beispiel von Fig. 1 ändert sich der Bitwert in der Sequenz 0 4 8 C. Diese vereinfach­ te Struktur zeigt,daß sich der Bitwert mit Vielfachen von 4 verändert. Wenn das Bit b0 des ersten Speichers MA sich an der Bitspalte b0 des zweiten Kanals PB verändert, wird der Taste der Wert 0 zugeordnet nach der Formel MV = 4 m + n. Wenn das Bit b1 des ersten Speichers MA sich an der gleichen Bitspalte wie oben verändert, wird der Wert der Taste mit der Zahl "4" festgelegt. Nach dem gleichen Verfahren wird für den Fall, daß das Bit b2 des MA und das Bit b1 des MB sich verändern, festgelegt, daß 4 x 2 + 1 = 9, da m = 2 und n = 1 in der Formel ersetzt werden, was bedeutet, daß die neunte Taste gedrückt ist.
Zwei weitere Ausführungsformen des Schaltkreises zum Abtasten von Tasten des Mikrocomputersystems nach der vorliegenden Erfindung werden in den Fig. 4A und 4B gezeigt. Diese Ausführungsbeispiele verwenden Open-Kollektor und Open-Drain Transistoren, die entsprechend entlang der Spaltenabtastleitungen positioniert sind, anstelle eines zweiseitigen Kanals PB in dem Mikrocomputer, wodurch der gleiche Effekt wie bei dem zweiseitigen Kanal erzielt wird.
Die Funktionsweise der Ausführungsbeispiele ist derart, daß wenn ein Signal von hohem Pegel an den Eingangskanal eines Inverters angelegt wird, der Kollektor des Transistors offen ist und wenn ein Signal von niedrigem Pegel als Eingangssignal verwendet wird, der Kollektor des Transistors einen niedrigen Pegel annimmt, um den Wert richtig in das Datenrichtungsregister zu schreiben, ebenso wie in dem zweiseitigen Kanal, wodurch Schaltungskurzschlüsse verhindert werden.
Weiterhin, wie in Fig. 1 gezeigt, wird durch das Hinzufügen eines UND-Gatters 60 an den Ausgang des Schaltkreises zum Abtasten von Tasten in jedem Ausführungsbeispiel der vorliegenden Erfindung ein logisches Produkt der logischen Signale, welche an jeden Kanal angelegt werden, als ein Kontrollsignal verwendet, um das System automatisch anzuschalten, wann immer eine Taste gedrückt wird oder zur Verwendung einer Verarbeitungsfunktion für die Eingabe.

Claims (11)

1. Schaltkreis zum Abtasten von Tasten für ein Mikrocomputersystem bestehend aus einer Tastatur (20) mit einem Schaltkreis für eine mXn-Tastenmatrix und einem Mikrocomputer (10) zur Erkennung von Tastenoperationen auf der Tastatur, wobei der Schaltkreis zum Abtasten der Tasten enthält:
einen ersten Kanal (PA), der direkt m Zeilensignale von der genannten Tastatur (20) über Zeilenabtastleitungen in dem genannten Mikrocomputer (10) empfängt;
einen ersten Speicher (MA), um den logischen Wert der m Zeilensignale zu speichern, der aus der logischen Multiplikation der Eingangssignale des ersten Kanals (PA) und dem fortlaufend gespeicherten logischen Wert entsteht;
einen zweiten Kanal (PB), der n Spaltensignale direkt von der genannten Tastatur über Spaltenabtastleitungen in dem genannten Mikrocomputer (10) empfängt;
ein Datenrichtungsregister (DDR), um jedes Bit von n Einheiten des genannten Kanals (PB) zu setzen, um diesen als einen Eingang oder einen Ausgang zu verwenden;
einen zweiten Speicher (MB), um den logischen Wert von n Spaltensignalen zu speichern, der aus der logischen Summierung der Eingangssignale des genannten zweiten Kanals (PB) mit dem logischen Wert in dem genannten Datenrichtungsregister (DDR) entsteht; und
einen Abschnitt (30) mit Pull-up-Widerständen, um einen logischen Referenzsignalwert für den genannten Schaltkreis der mXn-Tastenmatrix zur Verfügung zu stellen.
2. Schaltkreis zum Abtasten von Tasten in einem Mikrocomputersystem nach Anspruch 1, worin der Wert der Tasten der ersten Spalte mit jeder Zeile des Schaltkreises der Tastenmatrix der genannten Tastatur (20) um Vielfache von 4 erhöht wird.
3. Schaltkreis zum Abtasten von Tasten für ein Mikrocomputersystem nach Anspruch 1, worin der genannte Schaltkreis der mXn-Tastenmatrix aus einem Schaltkreis für eine 4X4-Tastenmatrix besteht.
4. Schaltkreis zum Abtasten von Tasten für ein Mikrocomputersystem nach Anspruch 1, worin an den genannten Schaltkreis für die Tastenmatrix ein UND-Gatter (60) hinzugefügt ist.
5. Schaltkreis zum Abtasten von Tasten für ein Mikrocomputersystem nach Anspruch 1, worin der genannte zweite Kanal (PB) mit biloren Transistoren vom Open-Collector-Typ ausgebildet ist.
6. Schaltkreis zum Abtasten von Tasten für ein Mikrocomputersystem nach Anspruch 1, worin der genannte zweite Kanal (PB) mit MOS-Transistoren vom Open-Drain-Typ ausgebildet ist.
7. Verfahren zum Abtasten von Tasten eines Mikrocomputers mit einer Tastatur (20), welche einen Schaltkreis für eine mXn-Tastenmatrix besitzt; einem ersten und zweiten Kanal (PA, PB) zur Verarbeitung von mXn Zeilen- und Spaltensignalen; einem ersten m-Bit-Speicher (MA) und einem zweiten n-Bit-Speicher (MB), um die logischen Werte, welche an den ersten und zweiten Kanälen (PA und PB) anliegen, zu speichern, und einem Datenrichtungsregister (DDR), um jedes Bit des genannten zweiten Kanals (PB) zu setzen, der als ein Eingang oder als ein Ausgang verwendet wird, wobei das genannte Verfahren zum Abtasten der Tasten folgende Schritte aufweist:
  • a) Initialisieren des genannten Mikrocomputersystems durch die Festlegung, daß der genannte erste Kanal (PA) nur als ein Eingang verwendet wird und Schreiben von vorbestimmten logischen Werten in den genannten zweiten Kanal (PB), den genannten ersten und zweiten Speicher (MA und MB) und das genannte Datenrichtungsregister (DDR);
  • b) Abtasten eines jeden Bits des genannten Datenrichtungsregisters (DDR), wenn eine Taste der genannten mXn-Matrixtastatur gedrückt ist;
  • c) Speichern des logischen Produkts, bestehend aus dem fortlaufenden logischen Wert des genannten ersten m-Bit-Speichers (MA) und dem fortlaufenden logischen Wert des genannten ersten Kanals (PA), in dem ersten Speicher (MA);
    Speichern der logischen Summe, bestehend aus dem fortlaufenden logischen Wert des genannten zweiten n-Bit-Speichers (MB) und dem fortlaufenden logischen Wert des genannten Datenrichtungsregisters (DDR), in dem zweiten Speicher (MB), und
    Wiederholen des Abtastprozesses bis das Übertragungsbit des Datenrichtungsregisters (DDR) den Wert 1 annimmt;
  • d) Feststellen, ob die fortlaufende Anzahl der logischen Nullen in dem genannten ersten Speicher (MA) größer ist als 1 und ob die fortlaufende Anzahl der logischen Einsen in dem genannten zweiten Speicher (MB) größer als 1 ist;
    und, wenn festgestellt worden ist, daß die Anzahl der Nullen und Einsen in den Speichern größer als 1 ist, Verarbeitung von Fehlern und Beenden der Operation, oder
    wenn festgestellt worden ist, daß die Anzahl der Nullen und Einsen in den Speichern nicht größer als 1 ist, Verarbeiten der Eingabeoperation und Berechnen des Wertes der Taste nach einer vorbestimmten Formel.
8. Verfahren zum Abtasten von Tasten in einem Mikrocomputer nach Anspruch 7, worin der genannte Initialisierungsprozeß die Schritte enthält: Festlegen des genannten ersten Kanals (PA) als einen ausschließlichen Eingangskanal und Festlegen des genannten zweiten Kanals (PB) als einen ausschließlichen Ausgangskanal.
9. Verfahren zum Abtasten von Tasten eines Mikrocomputers nach Anspruch 7, worin in dem genannten Berechnungsschritt der Wert für die Taste nach der Formel 4m+n = MV erhalten wird. (m entspricht dem Stellenwert der Null im Speicher MA und n entspricht dem Stellenwert der EINS im Speicher MB; MV ist der Wert der Taste).
10. Verfahren zum Abtasten von Tasten eines Mikrocomputers nach einem der Ansprüche 7 bis 9, den folgenden weiteren Schritt enthaltend:
Feststellen, ob der fortlaufende Eingangswert des ersten Kanals (PA) mit einem vorbestimmten logischen Wert, der in der Initialisierungsphase festgelegt worden ist, übereinstimmt und, falls er übereinstimmt, Ausführen der folgenden Operationen:
Löschen des Übertragungsbits des Datenrichtungsregisters (DDR) und Ausführen einer Linksverschiebung mit Rotation auf den Bit-Wert des zweiten Kanals (PB), oder
wenn die beiden Werte nicht übereinstimmen, Fortfahren mit Schritt c).
11. Verfahren zum Abtasten von Tasten eines Mikrocomputers nach einem der Ansprüche 7 bis 10, den folgenden weiteren Schritt enthaltend: Feststellen- ob der fortlaufende logische Wert des zweiten Speichers (MB) mit dem genannten vorbestimmten logischen Wert, welcher in der Initialisierungsphase festgelegt worden ist, übereinstimmt und Beenden der Operation, falls er übereinstimmt, oder, falls er nicht übereinstimmt, Fortfahren mit Schritt d).
DE4135278A 1990-10-27 1991-10-25 Verfahren und schaltkreis zum abtasten von tasten fuer ein mikrocomputersystem Granted DE4135278A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019900017286A KR930005841B1 (ko) 1990-10-27 1990-10-27 마이크로_콤퓨터시스템의 키스캔회로 및 그 방법

Publications (2)

Publication Number Publication Date
DE4135278A1 true DE4135278A1 (de) 1992-04-30
DE4135278C2 DE4135278C2 (de) 1992-11-05

Family

ID=19305267

Family Applications (1)

Application Number Title Priority Date Filing Date
DE4135278A Granted DE4135278A1 (de) 1990-10-27 1991-10-25 Verfahren und schaltkreis zum abtasten von tasten fuer ein mikrocomputersystem

Country Status (5)

Country Link
US (1) US5264845A (de)
JP (1) JP2567167B2 (de)
KR (1) KR930005841B1 (de)
DE (1) DE4135278A1 (de)
GB (1) GB2249205B (de)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5621402A (en) * 1993-07-21 1997-04-15 Advanced Micro Devices, Inc. Keypad scanner
US5486824A (en) * 1994-10-05 1996-01-23 Motorola, Inc. Data processor with a hardware keyscan circuit, hardware keyscan circuit, and method therefor
US5552781A (en) * 1994-10-31 1996-09-03 Ford Motor Company Fault tolerant method of decoding an electronic key system
US5554985A (en) * 1995-06-14 1996-09-10 United Microelectronics Corporation Method for scanning keypad architecutre employing power source and ground of digital electronic devices
US6744386B2 (en) 2000-06-02 2004-06-01 Thomson Licensing, S.A. Prevention of incompatible keyboard selections from being entered during power initialization
HUP0303866A3 (en) * 2000-12-04 2008-03-28 Nova Chem Inc Foamed cellular particles of an expandable polymer composition
US7386882B2 (en) * 2001-06-29 2008-06-10 Hewlett-Packard Development Company, L.P. Key pad decoder
US10037857B2 (en) * 2012-09-19 2018-07-31 Duckychannel International Co, Ltd. Light emitting keyboard
TWI602085B (zh) * 2015-12-14 2017-10-11 聯陽半導體股份有限公司 鍵盤裝置及其按鍵狀態的偵測方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3519360A1 (de) * 1984-07-24 1985-10-24 Alps Electric Co., Ltd., Tokio/Tokyo Verfahren zur ausgabe von daten aus einer eingabetastatur
EP0242953A1 (de) * 1986-03-10 1987-10-28 Amp Incorporated Multiplexsystem
DE3910863A1 (de) * 1988-04-04 1989-10-12 Fluke Mfg Co John Verfahren und tastatur-eingabegeraet zur eingabe digitaler daten

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5477534A (en) * 1977-12-02 1979-06-21 Matsushita Electric Ind Co Ltd Digital input circuit
FR2641656B1 (fr) * 1988-12-20 1991-08-02 Bull Sa Procede de brouillage de l'identification d'une touche d'un clavier non code, et circuit pour la mise en oeuvre du procede
US5059974A (en) * 1989-02-02 1991-10-22 Acer Incorporated Method for determining phantom switch condition

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3519360A1 (de) * 1984-07-24 1985-10-24 Alps Electric Co., Ltd., Tokio/Tokyo Verfahren zur ausgabe von daten aus einer eingabetastatur
EP0242953A1 (de) * 1986-03-10 1987-10-28 Amp Incorporated Multiplexsystem
DE3910863A1 (de) * 1988-04-04 1989-10-12 Fluke Mfg Co John Verfahren und tastatur-eingabegeraet zur eingabe digitaler daten

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
US-Z.: IBM Technical Disclosure Bulletin, Vol. 24, No. 9 Februar 1982, S. 4688, 4689 *
US-Z.: IBM Technical Disclosure Bulletin, Vol. 27, No. 5, Oktober 1984, S. 2779, 2780 *

Also Published As

Publication number Publication date
GB9122714D0 (en) 1991-12-11
JPH04299722A (ja) 1992-10-22
KR930005841B1 (ko) 1993-06-25
GB2249205B (en) 1994-07-27
DE4135278C2 (de) 1992-11-05
JP2567167B2 (ja) 1996-12-25
GB2249205A (en) 1992-04-29
KR920008613A (ko) 1992-05-28
US5264845A (en) 1993-11-23

Similar Documents

Publication Publication Date Title
DE2556822C2 (de) Monolithische hochintegrierte Halbleiterschaltung
DE3587137T2 (de) Inhaltsadressierbarer speicher.
DE69123952T2 (de) Rechneradressierungseinrichtung
DE4206286C2 (de) Speicherzugriffssystem und Verfahren zum Ausgeben eines digitalen Datenstromes
DE4007223A1 (de) Schaltkreis zum speichern und uebertragen eines logischen signales
DE2023354A1 (de) Programmierbare Einheit und Verfahren zum Betreiben einer programmierbaren Einheit
DE3832440A1 (de) Testschaltungseinrichtung
DE2440389A1 (de) Vorrichtung zum verschieben von digitalen informationen in datenverarbeitungsgeraeten
DE2946502A1 (de) Verfahren und schaltungsanordnung zur digitalen auswertung von analogsignalen grosser amplitudendynamik
DE2247534B2 (de) Additions- und Subtraktionsvorrichtung
DE1524111C3 (de) Elektronische Datenverarbeitungsanlage
DE4135278A1 (de) Verfahren und schaltkreis zum abtasten von tasten fuer ein mikrocomputersystem
DE3880300T2 (de) Tastatur mit geistertasten-feststellung.
DE1240686B (de) Anordnung zur Unterdrueckung der Darstellung von fuer den Wert einer Zahl bedeutungslosen Ziffern in einer elektronischen Ziffernrechenmaschine
DE3888218T2 (de) Dateneingabegerät mit Tastendruck.
DE2446646B2 (de) Schaltung zur eingabe eines eine eingetastete taste des tastenfeldes charakterisierenden eintastsignals in einen elektronischen rechner
DE69905238T2 (de) Einrichtung zur vollständigen Diagnose eines Treibers
DE3818097C2 (de)
DD145972A5 (de) Einrichtung zur feststellung der l enge beliebiger schieberegister
DE3786748T2 (de) Programmierbare logische Anordnung.
DE3422287C2 (de)
DE3828289C2 (de)
DE3333862C2 (de)
DE69626625T2 (de) Verfahren, um redundante fehlerhafte Adressen in einer Speicheranordnung mit Redundanz zu erkennen
DE2337084A1 (de) Tasteneingabeschaltung

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
D2 Grant after examination
8364 No opposition during term of opposition
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee

Effective date: 20110502