DE69029383T2 - Integriertes tastatur- und hinweisanordnungssystem - Google Patents
Integriertes tastatur- und hinweisanordnungssystemInfo
- Publication number
- DE69029383T2 DE69029383T2 DE69029383T DE69029383T DE69029383T2 DE 69029383 T2 DE69029383 T2 DE 69029383T2 DE 69029383 T DE69029383 T DE 69029383T DE 69029383 T DE69029383 T DE 69029383T DE 69029383 T2 DE69029383 T2 DE 69029383T2
- Authority
- DE
- Germany
- Prior art keywords
- pointing
- cursor
- keyboard
- mode
- key
- 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
Links
- 230000008859 change Effects 0.000 claims description 81
- 238000000034 method Methods 0.000 claims description 35
- 238000012360 testing method Methods 0.000 claims description 34
- 238000012545 processing Methods 0.000 claims description 18
- 238000006073 displacement reaction Methods 0.000 claims description 15
- 210000003813 thumb Anatomy 0.000 claims description 15
- 238000006243 chemical reaction Methods 0.000 claims description 10
- 238000013507 mapping Methods 0.000 claims description 8
- 230000004044 response Effects 0.000 claims description 8
- 230000000977 initiatory effect Effects 0.000 claims description 6
- 230000003247 decreasing effect Effects 0.000 claims description 4
- 230000001419 dependent effect Effects 0.000 claims 1
- 238000012886 linear function Methods 0.000 claims 1
- 238000012887 quadratic function Methods 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 22
- 210000004247 hand Anatomy 0.000 description 21
- 230000009471 action Effects 0.000 description 16
- 230000000694 effects Effects 0.000 description 13
- 230000004048 modification Effects 0.000 description 13
- 238000003825 pressing Methods 0.000 description 13
- 230000006870 function Effects 0.000 description 12
- 238000012986 modification Methods 0.000 description 11
- 238000004891 communication Methods 0.000 description 10
- 230000008569 process Effects 0.000 description 6
- 230000003340 mental effect Effects 0.000 description 5
- 210000003811 finger Anatomy 0.000 description 4
- 230000002452 interceptive effect Effects 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 230000037081 physical activity Effects 0.000 description 3
- 238000000926 separation method Methods 0.000 description 3
- 230000003213 activating effect Effects 0.000 description 2
- 230000000994 depressogenic effect Effects 0.000 description 2
- 241000366596 Osiris Species 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 230000003321 amplification Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 239000013065 commercial product Substances 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000003199 nucleic acid amplification method Methods 0.000 description 1
- 230000002853 ongoing effect Effects 0.000 description 1
- 230000005043 peripheral vision Effects 0.000 description 1
- 230000003014 reinforcing effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000005096 rolling process Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/02—Input arrangements using manually operated switches, e.g. using keyboards or dials
- G06F3/0202—Constructional details or processes of manufacture of the input device
- G06F3/021—Arrangements integrating additional peripherals in a keyboard, e.g. card or barcode reader, optical scanner
- G06F3/0213—Arrangements providing an integrated pointing device in a keyboard, e.g. trackball, mini-joystick
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05G—CONTROL DEVICES OR SYSTEMS INSOFAR AS CHARACTERISED BY MECHANICAL FEATURES ONLY
- G05G9/00—Manually-actuated control mechanisms provided with one single controlling member co-operating with two or more controlled members, e.g. selectively, simultaneously
- G05G9/02—Manually-actuated control mechanisms provided with one single controlling member co-operating with two or more controlled members, e.g. selectively, simultaneously the controlling member being movable in different independent ways, movement in each individual way actuating one controlled member only
- G05G9/04—Manually-actuated control mechanisms provided with one single controlling member co-operating with two or more controlled members, e.g. selectively, simultaneously the controlling member being movable in different independent ways, movement in each individual way actuating one controlled member only in which movement in two or more ways can occur simultaneously
- G05G9/047—Manually-actuated control mechanisms provided with one single controlling member co-operating with two or more controlled members, e.g. selectively, simultaneously the controlling member being movable in different independent ways, movement in each individual way actuating one controlled member only in which movement in two or more ways can occur simultaneously the controlling member being movable by hand about orthogonal axes, e.g. joysticks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/02—Input arrangements using manually operated switches, e.g. using keyboards or dials
- G06F3/023—Arrangements for converting discrete items of information into a coded form, e.g. arrangements for interpreting keyboard generated codes as alphanumeric codes, operand codes or instruction codes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0487—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
- G06F3/0489—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using dedicated keyboard keys or combinations thereof
-
- H—ELECTRICITY
- H01—ELECTRIC ELEMENTS
- H01H—ELECTRIC SWITCHES; RELAYS; SELECTORS; EMERGENCY PROTECTIVE DEVICES
- H01H2221/00—Actuators
- H01H2221/008—Actuators other then push button
- H01H2221/012—Joy stick type
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Automation & Control Theory (AREA)
- Input From Keyboards Or The Like (AREA)
Description
- Die vorliegende Erfindung betrifft ein integriertes Tastatur- und Zeigeeinrichtungssystem.
- Die QWERTY-Tastatur hat sich als bevorzugte Einrichtung zum Eintippen alpha-numerischer Daten in einen Computer festgesetzt. Verschiedene Vorrichtungen und Verfahren für Zeigeoperationen auf einer CRT-Anzeige, wie z. B. dem Selektieren eines Textes, sind bekannt. Einrichtungen für diesen Zweck umfassen die Maus, den Joystick, Schrittasten und Texttasten. Es sind Tastaturen bekannt, welche einen Joystick, eine Joydisk oder eine andere Zeigeeinrichtung an der Tastatur angebracht aufweisen. Es hat sich jedoch gezeigt, daß in bezug auf die Betätigungszeit, die Fehlerquote und dergleichen eine separate Maus die effektivste Zeigeeinrichtung darstellt. Dies erklärt ihre weitverbreitete Akzeptanz in der Computerindustrie.
- Die Verwendung einer konventionellen Tastatur und einer diskreten Maus zum Eingeben von Schreib- bzw. Zeigeinformation in einen Computer erfordert physische und mentale Unterbrechungen, welche die Produktivität des Benutzers signifikant reduzieren. Z. B. erfordern das Tippen auf einer Tastatur und das Zeigen mit einer Maus, daß der Benutzer die Hände oft zwischen der Tastatur und der Maus hin- und zurückbewegt. Ein Forschungsartikel berichtet, daß es etwa 0,36 Sekunden benötigt, um eine Hand von der Tastatur auf eine Maus hin zu bewegen, und zusätzliche Zeit, um den Griff zum Betätigen der Maustasten anzupassen. Genauso muß Zeit berücksichtigt werden, um zur Tastatur zurückzukehren. Die Daten legen nahe, daß die insgesamt beim Bewegen zur und von der Maus verbrauchte Zeit pro Auftreten größer ist als eine Sekunde. Siehe S.K. Card et al. "Evaluation of Mouse, Rate-Controlled Isometric Joystick, Step Keys, and Text Keys for Text Selection on a CRT" (Xerox Palo Alto Research Center), publiziert in Ergonomics, Vol. 2, No. 8, 601-613 (1978).
- Diese Bewegungen zwischen der Tastatur und der Maus sind wegen der Distanzen und der typischerweise erforderlichen seitlichen Armbewegungen physisch unterbrechend. Diese Bewegungen sind wegen der Zeit, die die Bewegungen benötigen, wegen der dramatischen Verschiebung zu körperlicher Tätigkeit hin (Tippen auf einer Tastatur ist sehr unähnlich zum Zeigen mit einer Maus) und wegen der vielen mentalen und physischen Schritte, die zum Ausführen der Bewegungen erforderlich sind, mental unterbrechend. Jeder zusätzliche Schritt erfordert physischen und mentalen Aufwand und ist eine Möglichkeit für Fehler.
- Das US-Patent 4,712,101 beschreibt eine Cursor-Positionierungseinrichtung, welche an einer Tastatur unterhalb der Leertaste angeordnet werden kann. Eine derartige Einrichtung ist unter dem Handelsnamen Isopoint bekannt gemacht geworden. Die Isopoint-Einrichtung weist eine mit einem Drehwellenkodierer gekoppelte finger- oder daumenbetätigte Walze zum Anzeigen einer Stellungsänderung in einer ersten Richtung auf, welche an einen Rotierwellen-Codierer gekoppelt ist. Die Walze ruht in einem Gleitschlitten, welcher einen zweiten Codierer antreibt. Eine derartige Einrichtung ist, insbesondere bei diagonaler Cursor-Bewegung wegen der erforderlichen Kombination von rollender und gleitender Aktionen, unhandlich zu betätigen.
- Zusätzlich weist der Gleitschlitten feste Endpunkte auf, welche seiner Betätigung Unterbrechungen auferlegen.
- Eine andere Zeigeeinrichtung, welche in eine konventionelle Tastatur zur Cursor-Steuerung eingebettet werden kann, ist die OmniPointtm Cursor-Steuereinrichtung, die durch Osiris Technologies, Inc., Nevada City, Ca. angekündigt wurde. OmniPoint weist im wesentlichen einen Miniatur-Joystick und damit verbundene Schnittstellenelektronik auf. Der Joystick kann in einer Tastatur benachbart zur Standardanordnung der Tasten angebracht werden. Natürlich erfordert seine Verwendung das Bewegen der Hand fort von der üblichen Schreibstellung.
- Sowohl die Isopoint- als auch die OmniPoint-Einrichtung umfassen einen eingebetteten Schalter, so daß der Benutzer die Einrichtung nach unten (in die Tastatur hinein) drücken kann, um einen Maustasten"klick" oder eine Ziehoperation zu emulieren. Solche Einrichtungen können deshalb höchstens eine Eintastenmaus emulieren. Das US-Patent 4,680,577 von Straayer, et al., welches mit dem Oberbegriff des Anspruchs 1 korrespondiert, zeigt einen Mehrzweck-Tastenschalter, der innerhalb einer Tastaturanordnung zum Steuern der Cursorbewegung auf einer CRT-Anzeige und zur Zeicheneingabe angeordnet ist. Eine der alphanumerischen Standardtasten ist durch einen Mehrzweck-Tastenschalter ersetzt. Es wird ein zusätzlicher Tastenschalter zum Aktivieren der Cursor-Positionierungsfähigkeiten des Mehrzweck-Tastenschalters vorgeschlagen. Das Patent '577 offenbart keinen praktischen Weg, ein derartiges System zu implementieren und zu verwenden. Zusätzlich richtet sich dieses Patent nicht darauf, wie irgendeine Zeigeereignis-Information, z.B. Betätigungen der Maustasten ("Klicken"), eingegeben wird, so daß dieses System eine Maus nicht ersetzen kann. Was benötigt wird, ist ein praktisches Verfahren, dem Benutzer zu ermöglichen, zu schreiben und zu zeigen, ohne die Hände von der üblichen Schreibstellung fortzubewegen und ohne die körperliche Tätigkeit dramatisch zu verändern.
- Verfahren zum Zeigen und Schreiben aus dem Stand der Technik nahmen diese Spaltung hin und fügten sie als Limitierungen in Computer, Tastaturen, Zeigeeinrichtungen und Software ein. Schreiben und Zeigen wurden als unterschiedliche und unvereinbare Tätigkeiten aufgefaßt.
- Als Ergebnis gibt es eine beachtliche Vervielfältigung von Hardware und Software. Zum Beispiel sind die Knöpfe an einer Maus notwendig, weil das Zeigen als geistig und körperlich sehr verschieden vom Schreiben aufgefaßt wurde. Weil Zeigen so unterschiedlich ist, wurden Hardware und Software vervielfältigt, wodurch die Trennung noch verstärkt wurde. Zum Beispiel sind die Knöpfe an einer Maus Vervielfältigungen, weil es auf der Tastatur eine Menge von Tasten gibt, die gewöhnlich nicht verwendet werden, während die Maus benutzt wird. Was notwendig ist, ist ein Zeigeeinrichtungssystem, das die Beschränkungen und Vervielfältigungen jetziger Systeme ausschließt, während dieselbe Software- Schnittstelle zu den Anwendungsprogrammen zur vollständigen Kompatibilität aufrechterhalten wird.
- Viele bekannte Zeigeeinrichtungen weisen in bezug auf die Anzahl von Tasten, die sie haben können, auch physische Beschränkungen auf. Diese Beschränkungen limitieren den Bereich von Tätigkeiten ernsthaft, die der Benutzer während des Zeigens ausführen kann. Ein kommerzielles Produkt, PowerMouse 100 genannt, das versucht, zusätzliche Knöpfe hinzuzufügen, integriert eine Zweitasten-Maus mit vierzig programmierbaren Tasten, was zu einem großen, schwerfälligen Gerät führt, das schwierig zu benutzen ist. Was benötigt wird, ist dem Benutzer zu erlauben, seine Hände während des Zeigens auf der Tastatur zu halten, und dem Benutzer gleichzeitig zu erlauben, andere, mit dem Zeigen im Zusammenhang stehende Daten oder "Zeigeereignisse", welche heutzutage über Maustasten eingegeben werden, einzugeben, aber wiederum, ohne die Hände von der üblichen Schreibstellung fort zubewegen.
- Ein anderes im Stand der Technik nicht beachtetes Problem ist das des visuellen Lokalisierens des Cursorbildes auf einem Bildschirm. Jedesmal wenn ein Benutzer das Tippen unterbricht und nach einer Maus greift, um zu zeigen, muß er den Cursor auf dem Bildschirm visuell suchen oder das Zeigegerät derart betätigen, daß der sich bewegende Cursor bemerkt wird. Diese Verfahren sind zeitverbrauchend und können unterbrechend sein. Falls sich das Cursorbild im wesentlichen außerhalb des Bildschirms befindet, kann es extrem schwierig sein, den Cursor zu lokalisieren. In einigen Fällen wird gerade ein Pixel angezeigt. Bei einiger Software zeigt das Bewegen des Cursors auf bestimmte Bereiche des Bildschirms den Wunsch nach einer bestimmten auszuführenden Aktion an. Falls der Benutzer diese Aktion nicht auszuführen wünscht, kann er zusätzliche Schritte durchführen, um die unmittelbare Anzeige auszuschalten. Was für den Benutzer benötigt wird, ist das Detektieren des Ortes des Cursors auf dem Bildschirm unmittelbar zu dem Zeitpunkt, an dem das Zeigen beginnt.
- Bekannte Verfahren des Repositionierens eines Cursors in Antwort auf Signale von einer Zeigeeinrichtung gleichen die vielen unterschiedlichen Modi und Auflösungen erhältlicher Anzeigesysteme nicht aus. Zwei Programme, welche das Anzeigesystem unterschiedlich konfigurieren, können in bezug auf dasselbe Signal der Zeigeeinrichtung unterschiedliche scheinbare Cursor-Repositionierungsantworten zeigen. Was benötigt wird, ist ein Verfahren des Cursor-Repositionierens, welches Änderungen im Anzeigesystem ausgleicht, so daß dieselbe Aktion, welche durch den Benutzer mit der Zeigeeinrichtung ausgeführt wird, unabhängig von den Änderungen im Anzeigesystem ein ähnliches Ergebnis produziert.
- Eine andere schwerfällige und zeitraubende Tätigkeit ist das Anpassen der Cursorgeschwindigkeit. Bekannte Verfahren zum Ändern der Cursorgeschwindigkeit führen Unterbrechungen ein, die den Arbeitsfluß des Benutzers ernsthaft unterbrechen. Im Ergebnis tolerieren viele Menschen einfach eine unzweckmäßige und deshalb uneffiziente Cursorgeschwindigkeit, weil es zu schwerfällig und zu lästig ist, sie zu ändern.
- Zum Beispiel erfordert eine typische Maus, daß der Benutzer zuerst das in Arbeit befindliche Anwendungsprogramm stoppt und dann ein spezielles Mausgeschwindigkeits-Änderungsprogramm ausführt, wo die Geschwindigkeit durch Eintippen einer Zahl spezifiziert wird. Die sich ergebende Cursorgeschwindigkeit kann so lange nicht beobachtet werden, bis das Anwendungsprogramm wieder gestartet wird. Der Benutzer kann eine andere Anpassung notwendig finden und hat dann den Vorgang zu wiederholen.
- Andere bekannte Verfahren schließen das gleichzeitige Drükken von Tastaturtasten und Maustasten ein, diese Anordnungen sind jedoch nicht ununterbrochen und greifen in den Ablauf bestimmter Anwendungsprogramme ein. Was benötigt wird, ist, dem Benutzer schnelle und interaktive Möglichkeiten zum Steuern der Cursorgeschwindigkeit ohne signifikante Unterbrechung der laufenden Tätigkeit zu liefern.
- Es ist eine Aufgabe der vorliegenden Erfindung, einem Computerbenutzer zu erlauben, zu tippen und zu zeigen, ohne die Hände von der Grundstellung der Tastatur (asdf-jkl;) fortzubewegen und ohne die körperliche Aktivität dramatisch zu verändern.
- Ein anderer Aspekt der Erfindung ist, die Einschränkungen bei der Betätigung und die Verdopplung der in jetzigen Computersystemen vorgefundenen Hardware und Software zu reduzieren, während für die Kompatibilität eine standardmäßige Software-Schnittstelle zu existierenden Programmen aufrechterhalten wird.
- Ein anderer Aspekt der Erfindung ist, daß dem Benutzer ermöglicht wird, die Hände während des Zeigens auf der Tastatur zu halten, wobei dem Benutzer gleichzeitig erlaubt wird, Daten in bezug auf das Zeigen oder "Zeigeereignisse" bequem einzugeben, wiederum ohne die Hände von der üblichen Schreibstellung zu bewegen.
- Gemäß eines Aspekts der vorliegenden Erfindung, wie sie in Anspruch 7 definiert ist, ist ein Verfahren zum Eingeben von Daten in einen Computer vorgesehen, wobei ein integriertes Tastatur- und Zeigeeinrichtungssystem mit einem Schreibbetriebsmodus verwendet wird, welches eine Tastatur mit einer Anordnung alpha-numerischer Tastenschalter aufweist, wobei einer der Tastenschalter daran angeschlossene Abtasteinrichtungen zum Erfassen lateraler Verschiebungen des einen Tastenschalters aufweist, mit den Schritten: Abtasten der Anordnung, um eine Betätigung der Tastenschalter festzustellen und, falls sich das System im Schreibmodus befindet, Initiieren von Tastencode-Signalen zum Eingeben alpha-numerischer Informationen in den Computer auf Betätigung jeweiliger Tastenschalter hin, dadurch gekennzeichnet, daß das System ferner einen Zeigebetriebsmodus aufweist, in welchem mindestens einer der Tastenschalter zum Ausführen einer von einer Zeigeereignisfunktion und einer Betriebsveränderungsfunktion bestimmt ist und daß das Verfahren, falls sich das System im Zeigemodus befindet, ferner die Schritte aufweist: Ausführen der einen von einer Zeigeereignisfunktion und einer Betriebsveränderungsfunktion auf Betätigung des mindestens einen bestimmten Tastenschalters hin und Eingeben der von der Abtasteinrichtung erhaltenen Zeigedaten in den Computer.
- Gemäß eines anderen Aspektes der vorliegenden Erfindung, wie sie in Anspruch 1 definiert ist, ist ein integriertes Tastatur- und Zeigeeinrichtungssystem zum Eingeben von Daten in einen Computer vorgesehen, wobei das System einen Schreibemodus besitzt und ausgestattet ist mit: einer Tastatur mit einer Anordnung von Tastenschaltern, wobei einer der Tastenschalter eine daran gekoppelte Abtasteinrichtung zum Erfassen lateraler Verschiebungen des Tastenschalters aufweist; einer Einrichtung zum Abtasten der Anordnung, um die Betätigung der Tastenschalter festzustellen und einer Einrichtung zum Initiieren von Tastencode- Signalen zum Eingeben alpha-numerischer Information in den Computer auf Betätigung jeweiliger Tastenschalter hin, wenn sich das System im Schreibmodus befindet, dadurch gekennzeichnet, daß das System ferner aufweist: eine Einrichtung, welche für das System zu einem Zeitpunkt zwischen dem Schreibbetriebsmodus und einem Zeigebetriebsmodus auswählt und bei welcher mindestens einer der Tastenschalter zum Ausführen einer von einer Zeigeereignisfunktion und einer Betriebsänderungsfunktion bestimmt ist; eine Einrichtung zum Ausführen der einen von einer Zeigeereignisfunktion und einer Betriebsänderungsfunktion auf Betätigung des mindestens einen bestimmten Tastenschalters hin, wenn sich das System im Zeigemodus befindet, und eine Einrichtung zum Eingeben von von der Abtasteinrichtung gewonnenen Zeigedaten in den Computer, wenn sich das System im Zeigemodus befindet.
- Gemäß der vorliegenden Erfindung ist ein einzelnes, integriertes Tastatursystem vorgesehen zum Eingeben aller Schreib- und Zeigeinformationen in einen Computer, ohne die Hände von der gewöhnlichen Schreibstellung zu bewegen. Eine der Tastatur-Tasten, welche Zeigetaste genannt wird, besitzt daran gekoppelte Sensoren, um Zeigerichtungsdaten von einer lateralen Verschiebung der Zeigetaste zu gewinnen.
- Das neue System besitzt einen Schreibbetriebsmodus und einen Zeigemodus. Im Schreibmodus werden die Tastencodes entsprechend den betätigten Tastenschaltern in der gewöhnlichen Art und Weise an das Betriebssystem weitergeleitet. Im Zeigemodus ist der Betrieb der gesamten Tastatur geändert. Alle Tasten werden für neue Funktionen zugänglich.
- Eine oder mehrere der Tasten können als eine Zeigeereignistaste bestimmt sein zum Eingeben von Informationen, welche in einem getrennten System von Maustasten kommen würden. Andere Tasten können verschiedenen Bedeutungen für eine Betriebsänderung des Systems zugewiesen sein, wie z.B. einer Cursorgeschwindigkeitssteuerung, Makros, usw.
- Die Cursorbewegung ist im Zeigemodus implementiert durch Lesen von Sensordaten von der Zeigetaste, Abbilden der Daten, um Cursor-Verschiebungsdaten zu bilden, und durch Skalieren der Verschiebungsdaten gemäß eines Geschwindigkeitsindex. Es können Tasten zum Ändern eines Geschwindigkeitsindex und damit der scheinbaren Cursorgeschwindigkeit zu irgend einem Zeitpunkt bestimmt sein. Dies erlaubt die interaktive Geschwindigkeitssteuerung und ohne ein Anwendungsprogramm zu verlassen.
- Die Cursorabbildung kann auch durch algebraische Manipulationen der Sensordaten gemäß eines vorbestimmten Spuralgorithmus oder durch Nachschlagtabellen ausgeführt werden. Das neue System erlaubt auch das Detektieren des Anzeigemodus, z.B. Zeichen- oder Grafikmodus, und zum Ändern der Cursorgeschwindigkeit, um entsprechend die Steuerung zu optimieren.
- Die vorgenannten und andere Aspekte und Vorteile der Erfindung werden verständlicher anhand der folgenden nicht beschränkenden detaillierten Beschreibung eines bevorzugten Ausführungsbeispiels anhand der Zeichnungen.
- Fig. 1 ist eine Darstellung eines Computersystems aus dem Stand der Technik, das eine Tastatur- und eine Mauszeigeeinrichtung aufweist.
- Fig. 2 ist ein übergeordnetes Blockdiagramm einer Computertastatur des Standes der Technik.
- Fig. 3 ist ein Verarbeitungs-Flußdiagramm einer Computertastatur des Standes der Technik.
- Fig. 4 ist ein übergeordnetes System-Blockdiagramm der beim Verarbeiten von Tastaturdaten beteiligten Software-Elemente.
- Fig. 5 ist ein Steuer-Flußdiagramm für ein Unterbrechungs-Steuerungssystem für eine Computertastatur aus dem Stand der Technik.
- Fig. 6 ist ein übergeordnetes System-Blockdiagramm von im Verarbeiten von Zeigeeinrichtungs-Daten beteiligten Software-Elementen aus dem Stand der Technik.
- Fig. 7 ist ein System-Blockdiagramm eines Computersystems aus dem Stand der Technik von der Art, wie es in Fig. 1 gezeigt ist.
- Fig. 8 ist ein Benutzer-Flußdiagramm, welches den Steuerungsfluß der Entscheidungen und Tätigkeiten eines Computerbenutzers während des Benutzens eines Computersystems aus dem Stande der Technik von der Art, wie es in Fig. 1 illustriert ist, zeigt.
- Fig. 9 ist ein übergeordnetes Blockdiagramm der Hardware-Elemente eines erfindungsgemäßen integrierten Tastatur- und Zeigeeinrichtungssystems.
- Fig. 10 ist ein Flußdiagramm, welches den übergeordneten Ablauf-Steuerungsfluß des in Fig. 9 gezeigten integrierten Computertastatur- und Zeigeeinrichtungssystems zeigt.
- Fig. 11 ist ein System-Blockdiagramm eines Computersystems, das eine integrierte Tastatur- und Zeigeeinrichtung von der Art aufweist, wie es in Fig. 9 gezeigt ist.
- Fig. 12 ist ein Flußdiagramm der integrierten Schnittstellen-Software zum Implementieren der integrierten Tastatur- und Zeigeeinrichtung der Fig. 9 bis 11.
- Fig. 13 ist ein Benutzer-Flußdiagramm, das den Steuerfluß der Entscheidungen und Tätigkeiten eines Computerbenutzers während der Verwendung eines Computersystems von der Art zeigt, wie es in den Fig. 9 bis 12 dargestellt ist.
- Fig. 14 ist ein Benutzer-Flußdiagramm, welches den Steuerfluß der Entscheidungen und Tätigkeiten eines Computerbenutzers während der Verwendung einer Geschwindigkeitssteuerung für eine erfindungsgemäße integrierte Zeigeeinrichtung darstellt.
- Fig. 15 ist eine vergrößerte, perspektivische Ansicht einer Leertaste auf einer herkömmlichen Tastatur, welche modifiziert wurde, um an der Vorderfläche der Leertaste einen Daumenschalter aufzunehmen.
- Fig. 16 ist eine vergrößerte, perspektivische Ansicht eines Paars von Daumenschaltern, welche vor der Leertaste auf einer Tastatur angeordnet sind.
- Die vorliegende Erfindung wird zunächst am besten verständlich in bezug auf den Stand der Technik. Fig. 1 zeigt ein Computersystem aus dem Stand der Technik. Das System des Standes der Technik weist einen Computer 28, eine Tastatur 24 zum Eingeben von Zeichendaten in den Computer, eine Zeigeeinrichtung 26 zum Eingeben grafischer Daten in den Computer und ein Anzeige-Terminal 29 zum Anzeigen von Daten auf, die durch den Computer ausgegeben werden. Der "Pfeil" 25 zeigt auf die Reihe von Tasten, welche die Grundstellungstasten der Tastatur 24 aufweist. Die Tastatur ist über eine Kommunikationsverbindung 36 mit dem Computer verbunden. Die Zeigeeinrichtung ist mittels einer Zeigeeinrichtungs-Kommunikationsverbindung 23 mit dem Computer verbunden. Die Zeigeeinrichtung 26 kann z.B. eine Maus sein, die eine oder mehrere Maustasten 27 aufweist. Die Zeigeeinrichtung wird gewöhnlich zum Positionieren und Bewegen des Cursors verwendet, wie unten ausführlicher beschrieben wird.
- Fig. 2 ist ein Blockdiagramm der im System von Fig. 1 verwendeten Tastatur 24. Die Tastatur 24 weist eine Anordnung 32 von Tastenschaltern auf, von denen Tastenschalter 30 ein Beispiel ist. Die Tastenschalter in der Anordnung 32 sind in Zeilen und Spalten angeordnet, um ein Abtasten der Tastatur zu erleichtern. Ein Mikroprozessorsystem 34 weist Hardware zum elektrischen Zusammenschalten des Tastenschalterfeldes 32 oder der Anordnung zum Mikroprozessor innerhalb des Systems 34 auf.
- Im Betrieb tastet das Mikroprozessorsystem 34 die Reihen und Spalten des Feldes 32 ab, um Kontakte und Unterbrechungen der Tastenschalter zu ermitteln. Auf die Ermittlung eines Kontaktes oder einer Unterbrechung eines Tastenschalters überträgt das Mikroprozessorsystem 34 einen zum geschlossenen oder offenen Tastenschalter eindeutigen Code über eine Tastatur-Kommunikationsverbindung 36 zum Computer (28 in Fig. 1).
- Unter Bezugnahme auf Fig. 3 ist ein übergeordnetes Ablaufsteuerungs-Flußdiagramm für die Tastatur der Fig. 2 dargestellt, um insbesondere die Erzeugung und die Übertragung von Tastaturdaten zum Computer zu illustrieren. In Fig. 3 prüft ein Initialisierungsschritt 42 das Mikroprozessorsystem (34 in Fig. 2) und initialisiert den Zustand der Tastatur-Software.
- Nach der Initialisierung beginnt eine Tastatur-Abtastschleife 56 durch Abtasten der Tastatur 44. Der Tastatur- Abtastschritt 44 tastet sequentiell die Reihen und Spalten des Tastenschalterfeldes ab, um Änderungen im Zustand der Tastenschalter zu erfassen. Nachdem der Tastatur-Abtastschritt 44 abgeschlossen ist, werden die Ergebnisse im Block 46 überprüft. Falls bei den Tastenschaltern keine Veränderungen vorlagen, geht die Steuerung an einen Block 52 der automatischen Wiederholung über. Falls eine Änderung vorlag, geht eine Steuerung an einen Tastenbestimmungsblock 54 über, um den beeinflußten Tastenschalter zu identifizieren.
- Der Tastenbestimmungsblock 54 analysiert die Änderungen, um zu bestimmen, welche binären Tastencodes gegebenenfalls zum Computer übermittelt werden sollen. Der Tastencode-Sendeblock 60 überträgt den Tastencode. In einem typischen Fall des Drückens und Loslassens eines einzelnen Tastenschalters wird ein eindeutiger Tastencode, welcher mit dem Tastenschalter korrespondiert, ausgesandt, wenn die Taste gedrückt ist und ein anderer Code, wenn der Tastenschalter losgelassen wird.
- Die durch den Block 52 der automatischen Wiederholung dargestellte Software bestimmt, ob es Zeit ist, automatisch das Aussenden eines Tastencodes zu wiederholen, falls der Tastenschalter gedrückt bleibt. Nachdem die Tastencodes gegebenenfalls ausgesandt sind, führt die Steuerung über die Schleife 56 zurück und beginnt mit dem nächsten Abtasten der Tastatur.
- Unter Bezugnahme auf Fig. 4 ist ein Blockdiagramm einer typischen Software-Schnittstelle für eine Tastatur aus dem Stand der Technik dargestellt. In diesem System erzeugt eine Computertastatur 74 binäre Tastencodes, wenn der Bediener Tastenschalter drückt, wie oben beschrieben wurde. Die binären Tastencodes werden über eine Tastatur-Kommunikationsverbindung 36 zum Computer übertragen. Ein Unterbrechungssteuerprogramm 72 für die Tastatur liest die Tastencodes, verarbeitet sie und setzt entsprechende Zeichencodes in eine Tastatur-Warteschlange 70. Gewöhnlich ist das Unterbrechungssteuerprogramm 72 für die Tastatur eine Software auf der Ebene der einfachen, schnellen interrupts.
- Ein Anwendungsprogramm 62 ist über eine Schnittstelle 64 mit den Tastaturdiensten 66 des Betriebssystems verbunden. In Antwort auf Anforderungen durch das Anwendungsprogramm entfernt das Betriebssystem über eine andere Schnittstelle, der Tastatur-Warteschlangen-Schnittstelle 68 des Betriebssystems, Zeichencodes aus der Tastatur-Warteschlange 70 und sendet die Zeichencodes an das Anwendungsprogramm 62. Die Tastaturdienste 66 des Betriebssystems können die Zeichencodes überprüfen, um Anforderungen an das Betriebssystem, wie z.B. eine Beendigung des Anwendungsprogramms, zu überprüfen. Die Schnittstellen 64 und 68 sind gewöhnlich bidirektional ausgebildet, um dem Anwendungsprogramm zu ermöglichen, falls nötig, die Zeichencodes zurückzusetzen.
- Der Betrieb des Unterbrechungssteuerungsprogramms 72 der Tastatur ist in Fig. 5 detaillierter dargestellt. Unter Bezugnahme auf Fig. 5 ist gezeigt, daß ein Hardware-Block 76 zum Einlesen die Tastencodes von der Tastatur-Schnittstellenhardware einliest. Jeder dieser Tastencodes wird geprüft, um zu sehen, ob er eine der Shift-, Caps Lock-, Control- und ALT-Tastenschalter repräsentiert. Diese speziellen Fälle werden in den Blöcken 78, 82, 86 bzw. 90 geprüft. Für jeden Test geht, falls der Test negativ ausfällt, die Steuerung zum nächsten Test in der gezeigten Folge über. Wenn alle Tests der speziellen Fälle negativ ausfallen, geht die Steuerung an den Block 94 der Abbildung auf ein Zeichen zum Abbilden des Tastencodes über. Fallen irgendwelche der Tests positiv aus, so geht die Steuerung über, um einen korrespondierenden der Statusblöcke 80, 84, 88 und 92 zu aktualisieren, um anzuzeigen, ob eine der speziellen Tasten gedrückt oder losgelassen wurde.
- Der Block 94 zum Abbilden auf ein Zeichen verwendet eine Nachschlagtabelle oder eine Tabelle zum Abbilden des Tastencodes auf einen Zeichencode. Das Abbilden umfaßt die aktuellen Zustände der Shift-, Caps Lock-, Control- und ALT- Tasten. Diese Operation ist eine einfache Durchlaß-Abbildung. Der erzeugte Zeichencode wird gegebenenfalls an den Einreihblock 96 durchgelassen. Falls der Tastencode ein Loslassen eines Tastenschalters repräsentiert, wird er gewöhnlich nicht an die Einreih-Software 96 durchgelassen. Der Einreihblock 96 fügt den resultierenden Zeichencode in eine Tastatur-Warteschlange (70 in Fig. 4) ein. Nach einem Aktualisieren des Status oder einer Einreih-Operation, wie es der Fall sein kann, führt die Steuerung auf dem gewöhnlichen Wege über den Rücksprungblock 98 zum unterbrochenen Programm zurück.
- Fig. 6 ist ein Blockdiagramm, welches den Betrieb der Software für eine typische Zeigeeinrichtung gemäß dem Stand der Technik beschreibt. Hier kommuniziert ein Anwendungsprogramm 62 mit der Zeigeeinrichtung-Dienstsoftware 104 des Betriebssystems (OS). Das Anwendungsprogramm übergibt die Steuerinformation der Zeigeeinrichtung, wie z.B. die Eingangsposition, die Cursorform, die Cursorsichtbarkeit usw., und empfängt die Zustandsinformation der Zeigeeinrichtung, wie z.B. die Position und der Tastendrucke.
- Die OS-Dienste 104 kommunizieren im Gegenzug mit der Schnittstellen-Software 108 des Treibers für die Zeigeeinrichtung gemäß den Schnittstellenspezifikationen 106. Die Treiber-Schnittstellen-Software 108 wandelt um und formatiert die jeweiligen Daten der Zeigeeinrichtung, und zwar konform zur Schnittstelle 106. Die Zustandsdaten der Zeigeeinrichtung, welche Informationen wie die Cursorform, die Sichtbarkeit, den Ort und den Status der Taste der Zeigeeinrichtung umfassen, werden in einer Reihe von Speicherorten, die Zustandsdaten 114 genannt werden, aufrechterhalten.
- Die Schnittstellen-Software 108 für den Treiber der Zeigeeinrichtung kommuniziert über eine Schnittstelle 112 mit den Zustandsdaten 114 und über eine Schnittstelle 110 mit einer untergeordneten Software 118 für die Zeigeeinrichtung. Die untergeordnete Software 118 kommuniziert ebenfalls über eine Schnittstelle 116 mit den Zustandsdaten 114.
- Im Betrieb liest die untergeordnete Software 118 der Zeigeeinrichtung über die Zeigeeinrichtungs-Kommunikationsverbindung 23 Daten aus der Zeigeeinrichtungs-Hardware 120. Die Software 118 modifiziert die Zustandsdaten 114 und benachrichtigt, falls nötig, die Treiber-Schnittstelle 108. Die untergeordnete Software 118 kann auch eine Software zum Bewegen des Cursors auf dem Anzeige-Terminal (29 in Fig. 1) aufweisen.
- Fig. 7 ist ein Software-Blockdiagramm eines vollständigen Computer-Tastatur- und Zeigeeinrichtungs-Systems, wie es in Fig. 1 dargestellt ist. Es besteht im wesentlichen aus einer Kombination einer Tastatur-Software (siehe Fig. 4) und einer Zeigeeinrichtungs-Software (siehe Fig. 6). Demgemäß ist es hier nicht nötig, die Details des Betriebs zu wiederholen.
- Es ist bemerkenswert, daß von den untersten zu den höchsten Ebenen die Daten- und Steuerungspfade zwischen dem Anwendungsprogamm 62 und der Tastatur 74 getrennt und unterschiedlich von Daten- und Steuerungspfaden zwischen dem Anwendungsprogramm und der Zeigeeinrichtung 120 sind. Diese Trennung der Tastatur- und Zeigeeinrichtungs-Schnittstellen spiegelt die Trennung der Tastatur- und Zeigeeinrichtungs- Operationen im Kopf des Benutzers wieder. Nützliche Verbesserungen im Stand der Technik machen eine sorgfältige Beachtung der im folgenden beschriebenen Gedanken und Tätigkeiten des Computerbenutzers notwendig.
- Fig. 8 ist ein "Benutzer-Flußdiagramm" für die Verwendung eines typischen Computersystems von der Art, wie es in den Fig. 1 bis 7 dargestellt ist. Die Fig. 8 zeigt den Steuerfluß der Entscheidungen und Tätigkeiten eines Computerbenutzers, während der Benutzung eines derartigen Systems. Unter Bezugnahme auf Fig. 8 beginnt eine primäre Schleife 140 mit einer Entscheidung, dargestellt durch Block 122, darüber, ob gezeigt oder geschrieben wird. Falls die Entscheidung (mental) fällt zu schreiben, wird ein Test 134 durchgeführt, um zu sehen, ob der Benutzer bereits schreibt. Der Test 134 muß durchgeführt werden, um sicherzustellen, daß die Hände und der Rest des Körpers des Benutzers zum Schreiben positioniert sind. Falls nicht, bewegen die Benutzer ihre Hände in eine Schreibstellung (Block 136) nämlich gewöhnlich auf der Grundstellung der Tastatur, um mit dem Schreiben zu beginnen. Sind die Hände und der Körper einmal geeignet positioniert, so drückt der Benutzer, gewöhnlich wiederholend, Tastenschalter der Tastatur, um alpha-numerische Zeichen 138 einzugeben.
- Falls die Entscheidung getroffen wird zu zeigen, testet der Benutzer (mental), 124 um zu sehen, ob er oder sie bereits zeigt. Dies muß getan werden, um sicherzustellen, daß die Hände und der Rest des Körpers des Benutzers zum Betrieb der Zeigeeinrichtung angeordnet sind. Falls er bereits zeigt, so hat der Benutzer einfach nur weiterzumachen. Falls nicht, so muß der Benutzer seine Hände zur Zeigeeinrichtung hin bewegen 126 und dann den Cursor auf dem Anzeigebildschirm finden 128.
- Der Schritt des Bewegens einer Hand zur Zeigeeinrichtung umfaßt, was auch immer sonst nötig ist, daß der Betrieb der Zeigeeinrichtung begonnen wird, falls die Hände des Benutzers auf der Tastatur schreiben. Dies umfaßt gewöhnlich das Bewegen einer Hand fort von der Grundstellung der Tastatur dort hin, wo die Zeigeeinrichtung angeordnet ist, das Greifen der Zeigeeinrichtung, das Positionieren der Finger, zum Bedienen der Ereignistasten der Zeigeeinrichtung und das Repositionieren des Arms in eine bequeme Stellung.
- Das Auffinden des Cursors 128 auf dem Anzeigebildschirm kann so einfach sein wie das Erinnern, wo der Cursor zuletzt gesehen wurde, oder wie ihn gleichzeitig im Sichtfeld zu haben. Sehr häufig beinhaltet es das Betätigen der Zeigeeinrichtung und das Ausschauhalten nach einem sich bewegenden Objekt auf dem Anzeigebildschirm und dabei das Verschwenden von Zeit und Kraft.
- Befindet sich die Hand erst einmal auf der Zeigeeinrichtung und ist der Cursor lokalisiert worden, so kann die Zeigeeinrichtung betätigt werden, um zwei Typen von Tätigkeiten auszuführen - das "Zeigen" und "Zeigeereignisse". Zeigen bezieht sich auf das Bewegen der Maus 130, um einen Cursor zu repositionieren. Zeigeereignisse werden durch das Drücken der Zeigeeinrichtungstasten 132 angezeigt, was das Drücken, Halten oder Loslassen ausgewählter Zeigeeinrichtungstasten beinhalten kann. Zeigeereignisse werden verwendet, um Texte auszuwählen, um einen Menüpunkt auszuwählen und für viele andere Funktionen. Typische Zeigeeinrichtungs-Operationen können wiederholtes Zeigen oder Zeigeereignisse umfassen. Wenn es eine Unterbrechung in den Aktivitäten gibt oder wenn eine Änderung in den Aktivitäten benötigt wird, geht der Benutzer über die primäre Schleife 140 effektiv zur Zeige- oder Schreibentscheidung 122 zurück.
- Fig. 9 ist ein vereinfachtes Blockdiagramm einer erfindungsgemäßen integrierten Tastatur- und Zeigeeinrichtung ("integrierte Tastatur"). Die neue integrierte Tastatur weist ein Feld 232 von Tastenschaltern auf, von denen Tastenschalter 230 ein Beispiel ist. Richtungssensoren 238 sind in dem Feld 232 zum Erfassen von Zeigeinformationen eingebettet. Die Richtungssensoren sind vorzugsweise Kraftsensoren, welche an einen der Tastenschalter des Feldes gekoppelt sind, um einen Zeigetaste genannten Mehrzweck-Tastenschalter zu bilden. Der Benutzer kann z.B. die Zeigeinformationen durch Drücken auf die J-Taste in der gewünschten Richtung Zeigeinformationen eingeben, wenn die Richtungssensoren an die J-Taste gekoppelt sind. Ein Beispiel für einen derartigen Mehrzweck-Tastenschalter ist in der US-4,680,577 durch die Home Row Inc. offenbart und wird durch diese Referenz mitaufgenommen. Die J-Taste ist als Zeigetaste vorzuziehen, weil sie unterhalb des Benutzers rechtem Zeigefinger angeordnet ist, wenn die Hände des Benutzers auf der Grundstellung der Tastatur angeordnet sind. Weiter unten ist beschrieben, wie das integrierte System zwischen einem Benutzer, der Richtungsinformationen eingibt, und einem Benutzer, der einfach nur den Buchstaben J eingibt, unterscheidet.
- Ein kleineres und weniger teures Ausführungsbeispiel würde vier kraftsensitive Widerstände (FSRs) aufweisen, welche an die J-Taste angekoppelt sind, ein FSR zum Erfassen der Kraft jeweils in einer der vier Richtungen in einer Ebene. Ein Analog/Digital-Umwandlungsschaltkreis 240 weist einen elektronischen Schaltkreis zum Transformieren der FSR-Widerstände, der analogen Informationen, in entsprechende digitale Signale auf. Analog/Digital-Wandlung ist bekannt und wird deshalb nicht im Detail erläutert.
- Der Analog/Digital-Schaltkreis 240 ist über einen Pfad 242 an das Mikroprozessorsystem 234 gekoppelt. Das Mikroprozessorsystem 234 weist Hardware zum elektrischen Zusammenschalten des Feldes 232 und des A/D-Schaltkreises 240 mit dem Mikroprozessor (nicht gezeigt) innerhalb des Systems 234 auf.
- Die integrierte Tastatur- und Zeigeeinrichtung besitzt mindestens zwei unterschiedliche Betriebsmodi; einen Schreibmodus zum Eingeben alpha-numerischer Zeichendaten und einen Zeigemodus zum Eingeben von Zeigeinformation, wie sie z.B. im Stand der Technik durch eine separate Zeigeeinrichtung, wie z.B. einer Maus, eingegeben würde. Zeigeinformation umfaßt Zeigerichtungsinformationen und Zeigeereignisinformationen.
- Gewöhnlich tastet das Mikroprozessorsystem 234 das Tastenschalterfeld 232 ab, um Kontakte und Unterbrechungen der Tastenschalter zu detektieren. Auf die Detektion eines Kontakts oder einer Unterbrechung eines Tastenschalters hin überträgt das System 234 über eine Tastatur-Kommunikationsverbindung 236 einen zum betätigten Tastenschalter eindeutigen Code. Das System 234 bestimmt durch Überprüfen der Reihe von Tastenschalterkontakten oder -unterbrechungen oder durch Empfangen einer Meldung vom Computersystem, ob die Sensoren 238 abgetastet werden müssen. Ist dies der Fall, wird ein Sensorabtasten durchgeführt, um Zeigerichtungsinformationen von den Sensoren 238 zu erhalten, und die Zeigerichtungsinformation wird ebenso über die Verbindung 236 übertragen. Eine separate physische Verbindung zum Computer zum Senden der Zeigerichtungsinformation wird nicht benötigt.
- Fig. 10 ist ein Flußdiagramm des Betriebs der integrierten Tastatur- und Zeigeeinrichtung aus Fig. 9. Unter Bezugnahme auf Fig. 10 testet ein Initialisierungsschritt 42 das Mikroprozessorsystem 234 (Fig. 9) und initialisiert den Zustand der Tastatur-Software. Als nächstes beginnt die Tastatur- Abtastschleife 56 mit dem Abtasten der Tastatur, um die aktuellen Zustände der Tastenschalter zu ermitteln.
- Nachdem das Abtasten 44 abgeschlossen ist, werden im Schritt 46 die Ergebnisse überprüft, um zu bestimmen, ob irgendwelche Zustandsänderungen der Tastenschalter aufgetreten sind. Falls keine Änderungen auftreten, geht die Steuerung zu einem Schritt 52 der automatischen Wiederholung über. Der Schritt 52 der automatischen Wiederholung arbeitet, wie oben in bezug auf Fig. 3 beschrieben wurde. Falls Änderungen auftreten, geht die Steuerung an den Schritt 54 über, um zu bestimmen, welcher Tastenschalterzustand geändert wurde. Schritt 46 zeigt so lange keine veränderte Bedingung an, bis ein mehrfaches Tastatur-Abtasten in bezug auf Software-Tastenschalterbetätigung durchgeführt wurde.
- Der Tasten-Bestimmungsschritt 54 analysiert die Änderungen, um zu bestimmen, welcher binäre Tastencode gegebenenfalls im Schritt 60 an den Computer übertragen werden soll. Beim typischen Fall eines Tastenschalterdrückens und -loslassens wird ein eindeutiger mit dem Tastenschalter korrespondierender Tastencode ausgesandt, wenn der Tastenschalter gedrückt wird, und ein anderer, wenn der Tastenschalter losgelassen wird.
- Nachdem die Tastenschalteränderungen gegebenenfalls verarbeitet wurden, bestimmt die Entscheidung 144, ob der Tastatur-Betriebsmodus zwischen dem Schreib- und Zeigemodus geändert werden muß. Dieses Überprüfen der Modusänderung kann aus dem Überprüfen des Tastenschalterdrückens und -loslassens, dem Überprüfen in bezug auf Kommandos vom Computer über die Kommunikationsverbindung oder dem Überprüfen in bezug auf die Aktivierung durch die Benutzung anderer Sensoren der Tastatur, wie z.B. von Daumenschaltern (unten beschrieben), bestehen.
- Fig. 16 beschreibt ein Paar von Daumenschaltern 218, die unterhalb der Leertaste 214 der Tastatur 212 zum Anzeigen einer Betriebsmodusänderung angeordnet sind. Die Daumenschalter 218 werden betätigt, indem sie in der Ebene der Tastatur gewöhnlich auf die Leertaste zu geschoben werden. Die Daumenschalter sind bequem angeordnet und werden in einem derartigen Winkel betätigt, um die natürliche Bewegung der Daumen auf die anderen Finger zu zu ermöglichen, um den Betätigungseffekt zu schaffen.
- Der Modus der integrierten Tastatur- und Zeigeeinrichtung kann durch Betätigen eines Daumenschalters vom Schreiben zum Zeigen hin geändert werden. Die Wirkungen auf den Zeigemodus werden durch die nachfolgend gedrückte Tastaturtaste bestimmt. Zum Beispiel kann der Zeigemodus durch Betätigen eines Daumenschalters aufgerufen werden, und wenn die J-Taste gedrückt wird, um die Zeigeeinrichtung zu betätigen, kann der Daumenschalter losgelassen werden. Wenn die J-Taste losgelassen wird, kehrt die Tastatur zum Schreibmodus zurück. Also zeigt der Daumenschalter nur einen möglichen Einstieg in den Zeigemodus an und nicht notwendigerweise den Ausgang aus dem Zeigemodus. Die Daumenschalter 218 erlauben eine schnelle, natürliche Betätigung, ohne die Hände von der Grundstellung der Tastatur fortzubewegen.
- Eine geeignete Modusänderung wird durchgeführt, falls sie angezeigt wird. Als nächstes wird ein Test 146 in bezug auf den Zeigemodus durchgeführt, um zu bestimmen, ob eine Zeigeeinrichtungs-Verarbeitung durchgeführt werden muß. Wenn der aktuelle Modus das Schreiben ist, kehrt die Steuerung über die Schleife 56 zurück, um wiederum die Tastatur abzutasten 44.
- Falls der aktuelle Modus das Zeigen ist, so liest das System als nächstes die Richtungssensoren im Schritt 148 aus, um Zeigerichtungsdaten zu erhalten, und verarbeitet diese Daten weiter. Das Verararbeiten der Sensordaten kann die Verstärkung, das Filtern, sowie nicht lineare Transformationen umfassen. Das Verarbeiten der Sensordaten, das an dieser Stelle auftritt, ist seiner Natur nach einfach und festgelegt. Zusätzliche Verarbeitung im Computersystem verbleibt zu tun. Wenn das Verarbeiten der Sensordaten abgeschlossen ist, werden die verarbeiteten Sensordaten zum Computer gesandt, 150. In einem alternativen Ausführungsbeispiel können die Sensor-Rohdaten zur Verarbeitung entweder in Echtzeit oder in Paketen gesandt werden. Nachdem die verarbeiteten Sensordaten ausgesandt sind, geht die Steuerung über Schleife 56 zum erneuten Abtasten der Tastatur über, und der vorgenannte Ablauf wird wiederholt.
- Fig. 11 ist ein Blockdiagramm eines Computersystems, das die integrierte Tastatur der Fig 9 bis 10 aufweist. Auf den Ebenen des Anwendungsprogramms (62) und des Betriebssystems (66, 104) ist diese Figur ähnlich zu Fig. 7. Auf der untersten Schnittstellenebene jedoch erfolgt die gesamte Benutzereingabe über eine gemeinsame "integrierte Schnittstellen-Software" 162. Diese neuartige Struktur ermöglicht eine zusätzliche auszuführende Steuerung und neue implementierte Eigenschaften, wie weiter unten beschrieben wird, Durch Abfangen der Tastatur- und Zeigeeinrichtungsdaten auf der niedrigsten Ebene können neue Operationen geschaffen werden, welche dem Anwendungsprogramm vollständig transparent sind. Also "denkt" das Anwendungsprogamm, daß das System eine Maus aufweist.
- Das Computersystem der Fig. 11 arbeitet wie folgt. Die integrierte Tastatur 166 sendet binärcodierte Tastencodes und Sensordaten der Zeigeeinrichtung über eine Kommunikationsverbindung 236 an die integrierte Schnittstellen-Software 162. Die integrierte Schnittstellen-Software 162 weist ein spezielles Unterbrechungssteuerprogramm zum Separieren des Datenstroms von der integrierten Tastatur in Datenströme der Tastatur- und der Zeigeeinrichtung auf. Die integrierte Schnittstellen-Software 162 weist eine Tastencode-zu-Zeichencode-Abbildungssoftware und eine zusätzliche Software für die Verarbeitung der Zeigeeinrichtungsdaten mit einer Software zum Bewegen des Cursors auf dem Anzeigebildschirm auf.
- Ein Tastencodeverarbeitungsteil der integrierten Schnittstellen-Software 162 arbeitet in ähnlicher Weise wie das Unterbrechungssteuerprogramm 72 der Tastatur, aber mit zusätzlicher Software zum Detektieren und Behandeln der Anfragen in bezug auf Modusänderungen der Tastatur-/Zeigeeinrichtung. Die Software 162 fügt Zeichencodes in die Tastatur-Warteschlange 70 ein. Die Tastaturdienste 66 des Betriebssystems lesen die Warteschlange 70 über Tastatur-Warteschlangen-Operationen 68 des Betriebssystems auf Anfrage des Anwendungsprogramms 62 hin. Das Anwendungsprogramm ist über eine Schnittstelle 64 mit den Tastaturdiensten des Betriebssystems verbunden.
- Ein Satz von Speicherstellen, welche integrierte Zustandsdaten 158 genannt werden, weist alles auf, was in den Zustandsdaten 114 (Fig. 6) der Zeigeeinrichtung enthalten ist als auch zusätzliche Zustandsdaten, um die Betriebsmodi (z.B. Schreiben und Zeigen) und neue Eigenschaften (z.B. variable Cursorverfolgungssteuerung, unten beschrieben) zu verfolgen. Die Schnittstelle 156 und insbesondere die Schnittstelle 160 weisen zusätzliche Steuerungen und Eigenschaften im Vergleich zu korrespondierenden Schnittstellen 112 und 116, die bei einer typischen Zeigeeinrichtung (Fig. 6) gefunden werden, auf, so wie sie mit Blick auf die neue integrierten Schnittstellen-Software, die unten beschrieben wird, benötigt werden.
- Der Treiber-Schnittstellenblock 152 schafft eine Standardschnittstelle für die Zeigeeinrichtung, so wie sie durch die Zeigedienste 104 des OS (operating system) und das Anwendungsprogramm 62 benötigt werden. Sowohl die Schnittstelle zwischen dem Anwendungsprogramm und dem Betriebssystem als auch die Schnittstelle 106 zwischen dem Betriebssystem und der Treiberschnittstelle 152 sind einem typischen Zeigeeinrichtungssystem ähnlich, so daß der Betrieb des integrierten Systems sowohl dem OS als auch dem Anwendungsprogramm transparent ist.
- Die integrierte Schnittstellen-Software 162 kommuniziert mit der Treiberschnittstelle 152, so wie es durch den Pfad 154 gezeigt ist.
- Fig. 12 ist ein Steuerflußdiagramm für die integrierte Schnittstellen-Software 162. Es weist alle die Verarbeitung auf, die von einem typischen Unterbrechungssteuerungsprogramm (siehe Fig. 5), durch eine gestrichelte Linie 99 angedeutet, durchgeführt wird. Die integrierte Schnittstellen-Software 162 weist zusätzlich eine Software auf zum Detektieren und Behandeln von Änderungsanfragen in bezug auf den Tastatur-/Zeigeeinrichtungsmodus, zum Konvertieren von Sensordaten der Zeigeeinrichtung in Änderungen der Cursorposition, zum Emulieren der Zeigeeinrichtungstasten unter Verwendung der Tastatur-Tastenschalter, zum Modifizieren des Zeigeeinrichtungs-Betriebs unter Verwendung der Tastatur-Tastenschalter als Steuerung und zum Bereitstellen integrierter Schreib- und Zeige-Makromöglichkeiten einer Zeigeeinrichtung unter Verwendung der Tastatur-Tastenschalter (188) auf. Jede der Eigenschaften wird unten beschrieben, und zwar in der Reihenfolge des Steuerflusses, der in Fig. 12 gezeigt ist.
- Ein Hardware-Ausleseblock 76 liest die binären Tastencode-/ Zeigeeinrichtungsdaten, die über die Kommunikationsverbindung 236 (Fig. 11) bereitgestellt werden. Sind diese Daten erst einmal gelesen, bestimmt der Modusüberprüfungsblock 167 den aktuellen Modus (z.B. Schreiben oder Zeigen) der integrierten Tastatur-/Zeigeeinrichtung. Die Steuerung geht an den Block 169 Modusänderung? über, falls der aktuelle Modus das Schreiben ist, er geht an den Block 170 Modusänderung? über, falls der aktuelle Modus das Zeigen ist. Der Schreib-/Zeigemodus umfaßt alle anderen Tastaturzustände (Shift, Caps Lock, Control, ALT), so daß der Schreib-/Zeigemodus ein neuer Modus an der Spitze aller dieser herkömmlichen Tastaturmodi und nicht nur eine Ergänzung von ihnen ist.
- Der Block 169 Modusänderung? bestimmt, ob das gewonnene Tastencodedatum anzeigt, daß der Benutzer eine Änderung des Modus der integrierten Tastatur vom Schreiben zum Zeigen wünscht. Diese Bestimmung kann das Überprüfen in bezug auf einen eindeutigen vorbestimmten Code oder einen komplexeren Test auf der Basis mehrfacher früherer Codes genau so wie andere Tastaturmodi (Shift, Caps Lock, Control, ALT) aufweisen. Falls der Test ermittelt, daß die integrierte Tastatur vom Schreib- zum Zeigemodus geändert werden muß, so wird die angeforderte Änderung im Block Modusänderung 168 durchgeführt. Der Block Modusänderung 168 weist das Setzen von Flaggen in den Zustandsdaten 158 (Fig. 11), das Ändern der sichtbaren Erscheinungsform des Cursors und das Bestätigen der Modusänderung an den Benutzer auf. Nachdem die Modusänderung abgeschlossen ist, muß nichts weiteres ausgeführt werden, bis weitere Daten empfangen werden, so daß die Steuerung an den Rücksprung 98 von der Unterbrechung übergeht.
- Falls der Block Modusänderung? 169 ermittelt, daß keine Modusänderung notwendig ist, so wird der Tastencode behandelt, wie wenn er von einem typischen Unterbrechungssteuerungsprogramm für eine Tastatur behandelt würde. Das heißt, es werden die Tests in bezug auf die Shift-Taste 78, die Caps-Lock-Taste 82, die Control-Taste 86 und die ALT- Taste 90 durchgeführt. Der Status jeder dieser speziellen Tasten 80, 84, 88 bzw. 92 werden, falls nötig, aktualisiert. In den Blöcken Abbilden Tastencode auf Zeichencode 94, Einreihung Zeichencodes 96 und Rücksprung von Unterbrechung 98 arbeiten alle wie in einem typischen Unterbrechungssteuerungsprogramm einer Tastatur.
- Falls der Block Modusüberprüfung 167 ermittelt, daß die integrierte Tastatureinrichtung im Zeigemodus ist, wird ein Test 170 durchgeführt, um zu bestimmen, ob der Benutzer wünscht, erneut mit dem Schreiben zu beginnen. Dieser Test kann das Überprüfen eines einzelnen Datums oder aber einen komplizierteren Test auf der Grundlage gewöhnlicher Tastaturmodi (Shift, Caps Lock, Control, ALT) und früherer binärer Tastencode-/Zeigeeinrichtungsdaten aufweisen. Falls der Block Modusänderung? 170 ermittelt, daß der Modus zum Schreiben hin zu ändern ist, wird die angeforderte Änderung im Modusänderungsblock 172 durchgeführt.
- Der Modusänderungsblock 172 kann das Setzen von Flaggen in den Zustandsdaten 158, das Ändern der sichtbaren Erscheinungsform des Cursors und das Bestätigen der Modusänderung an den Benutzer aufweisen. Nachdem die angeforderte Modusänderung ausgeführt ist, ist nichts weiter zu tun, bis weitere Daten empfangen werden, so daß die Steuerung an den Rücksprung 98 übergeht.
- Falls der Block Modusänderung? 170 ermittelt, daß der Modus beim Zeigen verbleibt, so ist der nächste an den Daten ausgeführte Test die Überprüfung auf Cursorpositionierungsdaten, welcher mit dem Block 174 Zeigedaten? bezeichnet ist. Dieser Test bestimmt, ob das Datum ein Positionierungsdatum für die Zeigeeinrichtung oder ein Tastencodedatum ist. Dieser Test kann das Überprüfen von Flaggen und Zählern in den Zustandsdaten 158 und auch Bit-Testen innerhalb des Datums selbst aufweisen.
- Falls der Block 174 Zeigedaten? bestimmt, daß das Datum ein Cursorpositionierungsdatum ist, wird der Block 176 Aktualisiere (Cursor) Position ausgeführt, um den Cursor auf dem Computeranzeigebildschirm zu bewegen, die Cursorposition in den Zustandsdaten 158 zu aktualisieren und die Treiberschnittstelle 152 (Fig. 11) in bezug auf die Änderungen in Kenntnis zu setzen. Das Aktualisieren der Position 176 kann einen Cursor-Folgealgorithmus aufweisen, um die Cursorpositionsdaten in Änderungen der Cursorposition umzuwandeln. Nach Abschluß wird die Steuerung an den Rücksprung 98 von der Unterbrechung übergeben.
- Die Cursorbewegung wird wie folgt beeinflußt. Die Zeigedaten werden gelesen (76) und der Cursor wird periodisch repositioniert, z.B. wie durch einen Taktunterbrecher für die Tastatur angetrieben, welcher bei etwa 18 bis 20 Hz arbeitet. Die dem Benutzer sichtbare "Cursorgeschwindigkeit" ist tatsächlich proportional zur Größe der Änderungen in der Cursorposition, jedesmal wenn der Cursor repositioniert wird, und zur Frequenz des Repositionierens. Eine Änderung in der Taktrate resultiert natürlich in einer proportionalen Änderung in der scheinbaren Cursorgeschwindigkeit, so daß die Taktrate der Tastatur des Systems bei der Cursorverfolgung berücksichtigt werden muß.
- Demgemäß wird eine gegebene Eingabekraft auf eine relativ große Änderung in der Cursorposition abgebildet, um eine hohe scheinbare Cursorgeschwindigkeit zu bewirken. Um den Cursor zu "verlangsamen", werden die Änderungen in der Position herunterskaliert.
- Die Positionsaktualisierungs- oder "Folge-"Software 176 kann zusätzlich zum Antworten auf die Zeigedaten von der Tastatur implizite Geschwindigkeitssteuerung berücksichtigen, wie sie durch den Zustand der Zeigeereignistasten, so wie sie in den Zustandsdaten wiedergegeben sind, impliziert werden.
- Die Folge-Software berücksichtigt ebenso explizite Einstellungen der Geschwindigkeitsänderung, welche durch eine Änderungs-Software 184 gesteuert wird, die Anzeigeauflösung, die durch Standardmittel und insbesondere für das Computer- und Anzeigesystem bestimmt wird, und den Anzeigemodus (Zeichenzellen oder Grafikpixel), so wie er durch Standardmittel für das spezielle Computer- und anzeigesystem bestimmt wird.
- Ein Ausführungsbeispiel des Implementierens der Cursor-Folge-Software verwendet mehrfache vorbestimmte Nachschlagetabellen. Zum Beispiel berücksichtigt ein Satz von Grafikmodus-Nachschlagtabellen alles außer den impliziten Geschwindigkeitssteuerungen der Zeigeereignistasten und den expliziten Geschwindigkeitsänderungen und -voreinstellungen, welche durch die Änderungsoperation 184 gesteuert werden. Zwei Sätze von zwei Grafikmodus-Tabellen würden bereitgestellt: ein horizontaler und ein vertikaler Tabellensatz für die Verwendung, wenn die Zeigeereignistasten nicht gedrückt sind, und ein anderer horizontaler und vertikaler Satz dafür, wenn die Zeigeereignistasten gedrückt sind.
- Die teilweise verarbeiteten Daten aus der Kommunikationsverbindung 236 werden als Index in der entsprechenden Tabelle verwendet. Das Ergebnis dieses Tabellen-Nachschlagevorgangs ist eine Cursorverschiebung, die mit einem Skalenfaktor multipliziert werden kann, welcher durch die explizite Cursorgeschwindigkeitssteuerung in der Veränderungsoperation 184 bestimmt wird. Nach dieser Multiplikation wird die Verschiebung als eine Änderung in der horizontalen oder vertikalen Komponente der Cursorposition verwendet. Die neue Cursorposition wird dann durch Addieren der Verschiebung zur aktuellen Position berechnet. Nachdem sowohl die horizontalen auch vertikalen Koordinaten wiederberechnet sind, wird das Cursorbild von der aktuellen Position gelöscht und in einer neuen Position neu gezeichnet. Analoge Tabellensätze können für Anzeigemodi mit Zeichenzellen bereitgestellt werden.
- Ein Vorteil der Verwendung unterschiedlicher Tabellen in Abhängigkeit vom Zustand der Zeigeereignistasten ist, daß mit der meisten Anwendungs-Software die Zeigeereignistasten in der losgelassenen Stellung zeigen, daß nichts wichtiges passiert. In dieser Situation wünscht der Benutzer gewöhnlich, den Cursor so schnell wie möglich zu bewegen, um die Zeit für die Repositionierung des Cursors zu reduzieren.
- Wenn eine Zeigeereignistaste gedrückt ist, so zeigt der Benutzer damit etwas bestimmtes an und wünscht gewöhnlich, den Cursor in einer kontrollierten Art und Weise zu bewegen. Geschwindigkeit ist wichtig, wenn die Ereignistasten nicht gedrückt sind, und Steuerung ist wichtig, wenn eine Ereignistaste gedrückt ist. In der Praxis hat sich herausgestellt, daß eine Tabelle mit quadratischer Abbildung von Kraft zu scheinbarer Cursorgeschwindigkeit am besten zur schnellen Cursorpositionierung geeignet ist und daß eine Tabelle mit linearer Abbildung am besten für eine kontrollierte Cursorpositionierung geeignet ist.
- "Zeigeereignisse" werden durch einen Benutzer zeigebezogener Informationen eingegeben, die sich gewöhnlich von Cursorpositionierungs- oder Richtungsinformationen unterscheiden. Im Stand der Technik umfassen Zeigeereignisse z.B. das Drücken und Loslassen von Maustasten, was auch als "Klicken" der Maustasten bezeichnet wird. Zeigeereignisse können dem Auswählen eines mit der aktuellen Position des Cursors in Zusammenhang stehenden Elements dienen. Oder ein Zeigeereignis kann die Anforderung signalisieren, einen zuvor ausgewählten Text an die aktuelle Position des Cursors zu bewegen.
- Erfindungsgemäß sind eine oder mehrere Tastenschalter in der integrierten Tastatur zum Emulieren von Zeigeereignissen bestimmt. Diese werden Zeigeereignistasten genannt. Wenn sich die integrierte Tastatur im Zeigemodus befindet, wird die Betätigung einer der Zeigeereignistasten als ein Zeigeereignis interpretiert. Dies ermöglicht dem Benutzer, Zeigeereignisse einzugeben, ohne seine Hände von der Tastatur fortzubewegen. Vorzugsweise sind die D- und F-Tasten, oder andere Tasten auf der Grundstellung der Tastatur, zum Emulieren von Zeigeereignissen bestimmt, so daß alle Schreib- und Zeigeoperationen von der normalen Schreibstellung aus durchgeführt werden können. Diese Eigenschaft führt zu wesentlichen Zeitersparnissen und ergonomischen Vorteilen für den Benutzer der integrierten Tastatur. Zeigeereignisemulation im bevorzugten Ausführungsbeispiel ist wie folgt implementiert.
- Unter nochmaliger Bezugnahme auf Fig. 12 ist das Datum als Tastencodedatum bekannt, falls der Test 174 bestimmt, daß das binäre Tastencode-Zeigeeinrichtungsdatum ein Zeigeeinrichtungsdatum ist. In diesem Fall geht die Steuerung zum Test 178 über, um das Datum in bezug auf die Tastenemulation für die Zeigeeinrichtung zu testen.
- Falls das Datum irgend einen der zur Emulation der Zeigeeinrichtungstasten bestimmten Tastatur-Tastenschalter repräsentiert, wird das Tastencodedatum an den Block 180 überführt, wo das Tastendocedatum Änderungen des Tastenstatus der Zeigeeinrichtung umgewandelt und in den Zustandsdaten 158 (Fig. 11) gespeichert wird. Diese Information kann auf verschiedene Weise verwendet werden. Zum Beispiel kann es bei einigen Anwendungen hilfreich sein, die Cursorbewegung in Antwort auf ein Zeigeereignis für eine vorbestimmte Zeitspanne einzufrieren, um Effekte unbeabsichtigter Cursorbewegung während des Zeigeereignisses zu minimieren.
- Die Software 180 emuliert also die Benutzung von Ereignistasten der Zeigeeinrichtung, wie z.B. von Maustasten. Weil nahezu jeder oder alle der Tastenschalter im Feld zum Emulieren der Zeigeeinrichtungstasten bestimmt sein können, ist die Anzahl der so bestimmten Tastenschalter nur durch die Anzahl der Tastenschalter auf der Tastatur limitiert, Diese Eigenschaft schafft eine größere Flexibilität in bezug auf Zeigeoperation im Vergleich zu einer Stand-allone- Zeigeeinrichtung mit zwei oder drei Tasten. Wenn die Emulationstätigkeiten 180 beendet sind, geht die Steuerung an den Block 184 über, wo implizite Änderungen am Betrieb der Zeigeeinrichtung ausgeführt werden, wie z.B. das Ändern des Cursor-Folgealgorithmus in Abhängigkeit des Zustands der emulierten Zeigeeinrichtungstasten.
- Die explizite Modifikation des integrierten Systems, d.h. durch den Benutzer angeforderte Betriebsänderungen, werden als nächstes beschrieben. Falls der Test 178 ermittelt, daß die Tastencodeinformation keinen der Zeigeereignistastenschalter repräsentiert, geht die Steuerung zu einem Test 182 über, um zu bestimmen, ob der Tastencode einen der Modifikationsoperation der Zeigeeinrichtung oder andere Aspekte des integrierten Tastatursystems zugeordneten Tastenschalter betrifft. Derartige Tastenschalter werden Betriebsänderungstastenschalter genannt, und sie können verschiedene Aufgaben, die weiter unten beschrieben werden, ausführen. Falls der Tastencode einen Betriebsänderungstastenschalter repräsentiert, so geht die Steuerung an die Modifikations-Software 184 über. Die Modifikations-Software 184 verwendet die Tastencodeinformation um wie angefordert den Betrieb des Systems zu modifizieren.
- In einem System der beschriebenen Art, können derartige Modifikationen eine breite Manigfaltigkeit von Änderungen des Verhaltens des Systems aufweisen. Die Effekte einiger dieser Änderungen sind im Stand der Technik bekannt, aber die bekannten Wege, diese zu erreichen, sind sehr unterschiedlich und weit weniger effizient. Andere Modifikationen sind nur auf das neue, integrierte Tastatursystem anwendbar.
- Beispielsweise ist es bekannt, die scheinbare Cursorgeschwindigkeit in einem Maus-System dadurch zu ändern, daß erst das Anwendungsprogramm verlassen wird, dann ein spezielles Programm zum Ändern der Cursorgeschwindigkeit laufengelassen wird und dann in das gewünschte Anwendungsprogramm wieder eingetreten wird. Im integrierten System erzielt ein einzelner Druck auf den der Cursorgeschwindigkeitserhöhung (oder -erniedrigung) zugeordneten Tastenschalter dasselbe Resultat. Offensichtlich kann die Änderung sehr viel schneller und ohne signifikante Unterbrechung der Arbeit des Benutzers ausgeführt werden. Bemerkenswerterweise ist die Geschwindigkeitssteuerung interaktiv, d.h. der Benutzer sieht unmittelbar das Ergebnis der Anpassung der Geschwindigkeit. Eine weitere Anpassung kann unmittelbar durchgeführt werden, falls dies notwendig erscheint.
- Eine andere beispielhafte Modifikation ist das Ändern der Bedingung zum Verlassen des Zeigemodus. Mit anderen Worten das Aufrufen eines Zeige-Halte-Modus, in welchem der Benutzer mehr tun muß, als die Zeigetaste loszulassen, um zum Schreibmodus zurückzukehren. Zum Beispiel kann das Drücken der Leertaste innerhalb des Zeigemodus so ausgebildet sein, um den Zeige-Halte-Modus zu erreichen, so daß das System den Zeigemodus selbst dann nicht verläßt, falls die J-Taste losgelassen wird. Das System kann nur dann zum Schreibmodus zurückkehren, wenn die Leertaste gedrückt wird.
- Eine andere Verwendung der Betriebsänderungstasten ist, die Achsen der Zeigeeinrichtung zu sperren/entsperren oder zu ändern. In der Vergangenheit sind diese Änderungen durch spezielle zusätzliche Maustasten durchgeführt worden oder durch das Ablaufen spezieller Software auf der Anwendungsebene. Das Ausführen dieser Selektion mittels der Änderungstasten ist sehr viel schneller und weniger unterbrechend.
- Ein weiteres Beispiel für die Systemänderungen, welche mit den Betriebsänderungstasten implementiert sein können, ist das Ändern des Cursor-Folgealgorithmus. Zum Beispiel können verschieden vordefinierte Spur- oder Folgealgorithmen vorgesehen sein, von denen jeder für eine bestimmte Anwendung optimiert ist, z.B. bei der Textverarbeitung, CAD usw. Ein einzelner Tastendruck wählt den besten Folgealgorithmus für die Cursorsteuerung aus. Nachdem die angezeigte Änderungsoperation abgeschlossen ist, geht die Steuerung zum Rücksprung 98 über.
- Eine weitere Modifikation ist das Schalten der integrierten Tastatur zwischen rechts- und linkshändigem Betrieb. So ist z.B. im rechtshändigen Betrieb auf einer QWERTY-Tastatur die J-Taste die Zeigeeinrichtung und die D- und F-Tasten werden bequemerweise als Zeigeereignistasten verwendet. Auf das Schalten zum linkshändigen Modus hin ist die F-Taste die Zeigeeinrichtung und die J- und K-Tasten sind die Zeigeereignistasten. Diese Eigenschaft benötigt zwei Mehrzweck-Tastenschalter (ausgebildet bei F und J), ist aber andererseits auf einfache Weise in der Software durch einfaches Ändern der Interpretation der entsprechenden Tasten im Zeigemodus implementiert. Der Test in bezug auf die Betriebsänderungstasten würde also nach J und K suchen, um während des linkshändigen Modus Zeigeereignisse zu ermitteln. Er würde aber nach D und F während des rechtshändigen Modus aus demselben Zweck suchen. Diese Beispiele illustrieren die möglichen Funktionen mit einem integrierten Tastatursystem. Alle von ihnen können im wesentlichen auf unteren Softwareebenen implementiert werden, nämlich auf den Unterbrechungs- und Treiberebenen, so daß sie gegenüber der Anwendungs-Software und gegenüber dem Betriebssystem transparent sind.
- Eine andere illustrierende Anwendung der Betriebsänderungstasten ist die von Makros. Makros, die als Abkürzungen für Segmente von Text und/oder Ketten von Programmkommandos verwendet werden, sind an sich bekannt. In dem integrierten System können Makros ein Gemisch von Cursorbewegung, Zeigeereignissen und Tastaturdrucken enthalten. Zum Beispiel kann ein Makro ausgebildet sein, um den Cursor zu bewegen, ein Menü herunterzuziehen und ein Element aufzunehmen. Diese Eigenschaft kann in der Umgebung des integrierten Systems, wie beschrieben wird, auf einfache Weise programmiert werden.
- Falls der Test (182) in bezug auf die Modifikation der Zeigeeinrichtung bestimmt, daß der Tastencode keine Anfrage irgendeiner anderen Änderung repräsentiert, so geht die Steuerung zu einem Test 181 in bezug auf die Makroauflösung 188. Die Makroauflösung 188 bestimmt, ob der Tastencode gerade in einem aktuellen Makrokommando zur Auflösung benötigt wird. Falls das der Fall ist, wird das Makro aufgelöst und die Steuerung geht an den Block 170 Änderungsmodus? über, wo die aufgelösten Daten verarbeitet werden.
- Falls die Makroauflösung 188 bestimmt, daß der Tastencode nicht derjenige ist, welcher gerade der Makroauflösung zugeordnet ist, geht die Steuerung an einen Test in bezug auf die Schreibemulation über, "Alpha-Emulation" im Block 186. Die Alpha-Emulation 186 bestimmt, ob der Tastencode gerade zurück auf eine Schreiboperation abgebildet wird, und falls das so ist, geht die Steuerung an einen Test 78 in bezug auf die Shift-Taste "Shift?" über, und die Verarbeitung des Tastencodes fährt fort, als ob der Modus der integrierten Einrichtung Schreiben war, statt Zeigen. Diese Eigenschaft ändert dabei effektiv die Einrichtung zeitweise zum Schreibmodus hin, und zwar automatisch in Antwort auf den Schreibdaten eingebenden Benutzer. Der Benutzer kann zur Zeigeaktivität zurückkehren, ohne den Modus explizit zu wechseln. Falls der Test 186 bestimmt, daß der Tastencode gerade nicht auf eine Schreiboperation zurück abgebildet wird, geht die Steuerung zum Rücksprung 98 über und der Tastencode wird effektiv ignoriert.
- Details des Implementierens der oben genannten Software werden dem Durchschnittsfachmann anhand der Offenbarung klar. Die verschiedenen Eigenschaften, die vom Computer ausgeführt werden, im Unterschied zur integrierten Tastatur, werden vorzugsweise in der Software implementiert, so daß sie auf unterschiedlichen Computersystemen ohne Modifikation der Computer-Hardware eingesetzt werden können.
- Fig. 13 zeigt ein Benutzer-Flußdiagramm für eine erfindungsgemäße integrierte Tastatur. Die Figur zeigt den Steuerfluß der Entscheidungen und Aktionen des Computerbenutzers, während der Verwendung des integrierten Systems. Hat der Benutzer einmal eine Aufgabe, die sowohl Schreib- als auch Zeigeaktivitäten benötigt, begonnen, so muß der Benutzer wiederholend die mentale Entscheidung 122 treffen, zu zeigen oder zu schreiben. Falls die Entscheidung ist zu schreiben, so muß ein Test 134 ausgeführt werden, um zu sehen, ob der Benutzer bereits schreibt, um sicherzustellen, daß der Modus der integrierten Einrichtung im Schreibmodus ist. Falls nicht, so muß ein Wechsel 192 zum Schreibmodus hin durchgeführt werden, bevor mit dem Schreiben begonnen werden kann. Die Modusänderung ist eine einfache Aktion, welche mit den Händen in der Schreibstellung auf der Tastatur durchgeführt werden kann. Ist der Modus erst einmal das Schreiben, so kann der Benutzer fortfahren zu schreiben, 138.
- Ist die Entscheidung 122 getroffen zu zeigen, muß ein Test 124 durchgeführt werden, um zu sehen, ob bereits gezeigt wird, um sicherzustellen, daß die integrierte Einrichtung bereits im Zeigemodus ist. Falls das zutrifft, so kann der Benutzer einfach fortfahren. Falls nicht, muß der Benutzer die Tastatur zum Zeigemodus hin ändern 190, und den Cursor bemerken, 194.
- Der Schalter 190 zum Zeigemodus kann mit den Händen in der Schreibstellung auf der Tastatur ausgeführt werden. Der Cursor kann leicht aufgefunden werden, weil das System in Antwort auf die Modusänderung bewirkt, daß das Cursorbild auf dem Anzeigebildschirm aufblitzt, z.B. durch zwischenzeitliches Vergrößern des Cursorbildes. Das Bemerken der Änderung der Cursorerscheinung ist insbesondere einfach, weil der periphere Gesichtssinn des menschlichen Auges extrem gut angepaßt ist an das Bemerken von Änderungen in der Helligkeit und von Bewegung. Es ist also nicht notwendig, sich zu erinnern, wo der Cursor zuletzt gesehen wurde, oder ihn gleichzeitig im Gesichtsfeld zu haben oder die Zeigeeinrichtung zu betätigen, um die Cursorbewegung zu erfassen.
- Ist die integrierte Einrichtung erst einmal in den Zeigemodus gesetzt, so kann die Zeigeeinrichtung betätigt werden, 130, und es können nützliche Tätigkeiten ausgeführt werden. Zeigeereignisse werden durch Drücken, Halten oder Loslassen von Tastaturtasten angezeigt, 196. Dieser Aspekt des integrierten Systems erlaubt dem Benutzer, Zeigeereignisse anzuzeigen, während die Hände in der Schreibposition verbleiben. Typische Zeigeeinrichtungsoperationen können wiederholt das Bewegen Cursors und das Drücken von Tastenschaltern beinhalten.
- Wenn eine Unterbrechung in den Tätigkeiten auftritt oder wenn eine Änderung in den Tätigkeiten notwendig ist, so kann der Benutzer über die Schleife 140 effektiv zur Entscheidung 122 zu Zeigen oder zu Schreiben zurückkehren.
- Fig. 14 ist ein Benutzer-Flußdiagramm für das Ändern der Cursorgeschwindigkeit unter Verwendung der integrierten Tastatur. Es wird natürlich angenommen, daß sich das System im Zeigemodus befindet. Der Benutzer beginnt durch Entscheiden 198, ob die Cursorgeschwindigkeit akzeptabel ist oder ob sie geändert werden sollte. Falls die bestehende Geschwindigkeit zu langsam ist, so kann der Benutzer sie erhöhen, und zwar durch Drücken eines vorbestimmten Tastaturtastenschalters (z.B. die R-Taste) 204. Falls der Cursor als zu schnell angenommen wird, so ist in ähnlicher Weise das Verlangsamen des Cursors so einfach wie das Drücken eines vorbestimmten Tastaturtastenschalters (z.B. die V- Taste) 206. Nachdem der geeignete Tastenschalter gedrückt wurde, bewegt der Benutzer 208 den Cursor, um den Effekt der Änderung zu ermitteln, und entscheidet abermals, 198, ob die Geschwindigkeit akzeptabel ist. Falls die Geschwindigkeit weiterhin nicht korrekt ist, so werden die vorgenannten Schritte wiederholt.
- Ist die Cursorgeschwindigkeit erst einmal korrekt, so geht die Steuerung zum Block 210 Erledigt über, wo jegliche Geschwindigkeitsmodifikations-Tastenschalter, welche gedrückt wurden, losgelassen werden. Dieser Vorgang kann stetig sein: Der Benutzer muß nur einen Ratensteuerungs-Tastenschalter drücken, den Cursor bewegen, bis die Geschwindigkeit eine gewünschte Rate erreicht, und den Ratensteuerungs-Tastenschalter loslassen. Der Benutzer gewinnt also eine sofortige Rückmeldung der Cursorgeschwindigkeitsänderungen, ohne das Anwendungsprogramm zu verlassen und in der Tat ohne die Hand von der Schreibposition zu bewegen.
- Fig. 15 zeigt die Modifikation der Leertaste einer herkömmlichen Tastatur gemäß der vorliegenden Erfindung, und zwar wobei sie, um sie zu unterscheiden, sowohl auf die anderen Tasten der Tastatur zu als auch nach unten in die Tastatur hinein gedrückt ist. Die Leertaste 214 ist in der gewöhnlichen Stellung unterhalb und vor Beispieltasten 212 der Tastatur gezeigt. Die Modusänderungstaste 216 ist an der Vorderfläche der Leertaste 214 zur leichten Betätigung durch die Daumen des Benutzers ausgebildet. Wenn sich die Hände in der Schreibstellung befinden, so bringt die natürliche Greiftätigkeit sie leicht dazu, die Modusänderungstaste 216 weiter in die Frontfläche der Leertaste 214 zu pressen, wobei ein Modusänderungstastenschalter, welcher unterhalb der Leertaste befestigt ist, aktiviert wird.
- Da die Prinzipien meiner Erfindung in einem bevorzugten Ausführungsbeispiel davon illustriert und beschrieben sind, sollte es für jeden Durchschnittsfachmann offenbar sein, daß die Erfindung in bezug auf Anordnung und Detail verändert werden kann, ohne von diesen Prinzipien abzuweichen. Insbesondere aber ohne Einschränkung kann die Anordnung der Funktionen zwischen Hardware und Software Ziel breiter Variation und Abhängigkeit von zahlreichen Designüberlegungen für jegliche bestimmte Anwendung sein. Die hier offenbarten Prinzipien können in vielen unterschiedlichen Kombinationen von Hardware und Software implementiert sein, ohne von den Prinzipien der Erfindung abzuweichen. Wir beanspruchen alle diese Modifikationen, die innerhalb des Bereichs der beigefügten Ansprüche liegen.
Claims (19)
1. Integriertes Tastatur- und Zeigeeinrichtungssystem zum
Eingeben von Daten in einen Computer, wobei das System
einen Schreibmodus besitzt und ausgestattet ist mit:
einer Tastatur mit einer Anordnung (32, 232) von
Tastenschaltern, wobei einer der Tastenschalter eine
daran gekoppelte Abtasteinrichtung (238, 240) zum
Erfassen lateraler Verschiebungen dieses Tastenschalters
aufweist;
einer Einrichtung (162) zum Abtasten der Anordnung (32,
232), um die Betätigung der Tastenschalter (32)
festzustellen und
einer Einrichtung (234) zum Initiieren von Tastencode-
Signalen zum Eingeben alpha-numerischer Information in
den Computer auf Betätigung jeweiliger Tastenschalter
(32) hin, wenn sich das System im Schreibmodus befindet,
dadurch gekennzeichnet,
daß das System ferner aufweist:
eine Einrichtung (234), welche für das System zu einem
Zeitpunkt zwischen dem Schreibbetriebsmodus und einem
Zeigebetriebsmodus auswählt und bei welcher mindestens
einer der Tastenschalter zum Ausführen einer von einer
Zeigeereignisfunktion und einer
Betriebsänderungsfunktion bestimmt ist;
eine Einrichtung (234) zum Ausführen der einen von
einer Zeigeereignisfunktion und einer
Betriebsänderungsfunktion auf Betätigung des mindestens einen
bestimmten Tastenschalters hin, wenn sich das System im
Zeigemodus befindet und
eine Einrichtung (234) zum Eingeben von von der
Abtasteinrichtung (238, 240) gewonnenen Zeigedaten in den
Computer, wenn sich das System im Zeigemodus befindet.
2. Integriertes Tastatursystem nach Anspruch 1,
in welchem die eine von einer Zeigeereignisfunktion und
einer Betriebsveränderungsfunktion eine Zeigeereignis-
Computerfunktion ist und in welchem die Einrichtung zum
Ausführen eine Einrichtung zum Initiieren eines
Zeigeereignissignals auf Betätigung eines der bestimmten
Tastenschalter hin aufweist, wenn das System sich im
Zeigemodus befindet.
3. Integriertes Tastatursystem nach Anspruch 1 oder 2,
in welchem die eine von einer Zeigeereignisfunktion und
einer Betriebsveränderungsfunktion eine
Betriebsveränderungsfunktion ist, und in welchem die Einrichtung
zur Ausführung Einrichtungen zum Ausführen der
entsprechenden Betriebsveränderungsfunktion auf Betätigung
eines der bestimmten Tastenschalter hin aufweist, wenn
sich das System im Zeigemodus befindet.
4. Integriertes Tastatursystem nach einem der Ansprüche 1
bis 3,
in welchem die Tastatur einen vor der Leertaste (214)
angeordneten Daumenschalter (218) aufweist.
5. Integriertes Tastatursystem nach einem der Ansprüche 1
bis 3,
in welchem die Tastatur einen entlang der Vorderkante
der Leertaste (214) angeordneten Schalter (216)
aufweist.
6. Integriertes Tastatursystem nach einem der Ansprüche 1
bis 5,
in welchem das Zeigedatum Cursor-Steuersignale zum
Positionieren des Cursors auf einem
Computer-Anzeigeterminal aufweist.
7. Verfahren zum Eingeben von Daten in einen Computer,
wobei ein integriertes Tastatur- und
Zeigeeinrichtungssystem mit einem Schreibbetriebsmodus verwendet wird,
welches eine Tastatur mit einer Anordnung
alpha-numerischer Tastenschalter aufweist, wobei einer der
Tastenschalter daran angeschlossene Abtasteinrichtungen zum
Erfassen lateraler Verschiebungen des einen
Tastenschalters aufweist,
mit den Schritten:
Abtasten der Anordnung, um eine Betätigung der
Tastenschalter festzustellen und
falls sich das System im Schreibmodus befindet,
Initiieren von Tastencode-Signalen zum Eingeben
alpha-numerischer Information in den Computer auf Betätigung
jeweiliger Tastenschalter hin,
dadurch gekennzeichnet,
daß das System ferner einen Zeigebetriebsmodus
aufweist, in welchem mindestens einer der Tastenschalter
zum Ausführen einer von einer Zeigeereignisfunktion und
einer Betriebsveränderungsfunktion bestimmt ist und daß
das Verfahren, falls sich das System im Zeigemodus
befindet, ferner die Schritte aufweist:
Ausführen der einen von einer Zeigeereignisfunktion und
einer Betriebsveränderungsfunktion auf Betätigung des
mindestens einen bestimmten Tastenschalters hin und
Eingeben der von der Abtasteinrichtung erhaltenen
Zeigedaten in den Computer.
8. Verfahren nach Anspruch 7,
in welchem die eine von einer Zeigeereignisfunktion und
einer Betriebsveränderungsfunktion eine Zeigeereignis-
Computerfunktion ist und in welchem das Verfahren die
Initiierung eines Zeigeereignissignals auf die
Betätigung eines der bestimmten Tastenschalter hin aufweist,
wenn sich das System im Zeigemodus befindet.
9. Verfahren nach einem der Ansprüche 7 oder 8,
wobei die laterale Verschiebung des einen
Tastenschalters zum Anzeigen einer gewünschten Cursorbewegung
ausgebildet ist, wobei das Verfahren ferner aufweist:
Verarbeiten der Zeigedaten, um eine neue
Cursorstellung zu bestimmen, und
Bewegen des Cursors zur neuen Stellung hin, um die
gewünschte Cursorbewegung auszuführen.
10. Verfahren nach Anspruch 9,
in welchem das Verarbeiten der Zeigedaten das Abbilden
der Zeigedaten in Änderungen in der Cursorstellung
hinein gemäß eines vorbestimmten Umrechenalgorithmus
aufweist.
11. Verfahren nach Anspruch 10, falls abhängig von Anspruch
8,
in welchem ein erster Umrechenalgorithmus zur
Verwendung vorgesehen ist, wenn ein Zeigeereignis angezeigt
wird, und in welchem ein zweiter Umrechenalgorithmus
zur Verwendung vorgesehen ist, wenn ein Zeigeereignis
nicht angezeigt wird, wobei das Verfahren ferner
aufweist:
Erfassen einer Anzeige eines Zeigeereignisses;
Auswählen des ersten Umrechenalgorithmus, falls ein
Zeigeereignis angezeigt wird, und des zweiten
Umrechenalgorithmus,
falls ein Zeigeereignis nicht angezeigt
wird,
und Umwandeln des Zeigedatums gemäß dem ausgewählten
Umrechenalgorithmus, um Cursor-Verschiebungsdaten zu
bilden.
12. Verfahren nach Anspruch 11,
in welchem einer der ersten und zweiten
Umrechenalgorithmen eine annähernd lineare Funktion der Zeigedaten
vorsieht und in welchem der andere der
Umrechenalgorithmen eine annähernd quadratische Funktion der
Zeigedaten vorsieht.
13. Verfahren nach einem der Ansprüche 9 bis 12,
in welchem das Verarbeiten der Zeigedaten das
Nachschlagen einer der Zeigedaten entsprechenden
Cursorverschiebung in einer vorbestimmten Nachschlagetabelle
aufweist.
14. Verfahren nach einem der Ansprüche 7 bis 13,
welches ferner das Ändern der sichtbaren Erscheinung
des Cursors aufweist, falls das System zwischen dem
Schreibe- und dem Anzeigemodus wechselt, um die
Modusänderung dem Benutzer zu bestätigen.
15. Verfahren nach einem der Ansprüche 7 bis 11,
welches ferner das Wechseln des Systems zum
Schreibmodus auf Loslassen der Zeigetaste hin aufweist, falls
sich das System im Anzeigemodus befindet.
16. Verfahren nach einem der Ansprüche 7 bis 15,
in welchem die eine von einer Zeigeereignisfunktion und
einer Betriebsveränderungsfunktion eine
Betriebsveränderungsfunktion ist und in welchem das Verfahren das
Ausführen der entsprechenden
Betriebsveränderungsfunktion auf Betätigung des einen bestimmten
Tastenschalters
hin aufweist, falls sich das System im Zeigemodus
befindet
17. Verfahren nach Anspruch 16,
in welchem ein erster
Betriebsveränderungs-Tastenschalter zum Erhöhen der Cursorgeschwindigkeit und ein
zweiter Betriebsveränderungs-Tastenschalter zum Verringern
der Cursorgeschwindigkeit bestimmt ist, wobei die
sichtbare Cursorgeschwindigkeit auf Betätigung des
ersten Betriebsveränderungs-Tastenschalters hin erhöht
und die sichtbare Cursorgeschwindigkeit auf Betätigung
des zweiten Betriebsveränderungs-Tastenschalters hin
erniedrigt wird.
18. Verfahren nach Anspruch 17,
in welchem der Computer vorbestimmte
Cursorgeschwindigkeits-Indexwerte speichert, wobei das Erhöhen der
sichtbaren Cursorgeschwindigkeit das Erhöhen des
Cursorgeschwindigkeits-Indexwertes miteinschließt, das
Erniedrigen der sichtbaren Cursorgeschwindigkeit das
Erniedrigen des Cursorgeschwindigkeits-Indexwertes
miteinschließt und das Verarbeiten der Zeigedaten das
Umwandeln der Zeigedaten zum Bilden von
Cursorverschiebungsdaten und das zum
Cursorgeschwindigkeits-Indexwert proportionale Skalieren der
Cursorverschiebungsdaten miteinschließt.
19. Verfahren nach einem der Ansprüche 16 bis 18,
in welchem der Zeigemodus gesperrt werden kann, wobei
einer der Betriebsveränderungs-Tastenschalter für eine
Entsperrfunktion bestimmt ist, wobei das Verfahren
ferner aufweist:
Testen des Tastencode-Datums zum Detektieren der
Betätigung des Zeigeentsperrungs-Tastenschalters;
und Wechseln des Systems zum Schreibmodus hin als
Reaktion auf die Betätigung des
Zeigeentsperrungs-Tastenschalters.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US07/412,680 US5124689A (en) | 1989-09-26 | 1989-09-26 | Integrated keyboard and pointing device system |
PCT/US1990/001789 WO1991005304A1 (en) | 1989-09-26 | 1990-04-02 | Integrated keyboard and pointing device system |
Publications (2)
Publication Number | Publication Date |
---|---|
DE69029383D1 DE69029383D1 (de) | 1997-01-23 |
DE69029383T2 true DE69029383T2 (de) | 1997-07-10 |
Family
ID=23633994
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE69029383T Expired - Fee Related DE69029383T2 (de) | 1989-09-26 | 1990-04-02 | Integriertes tastatur- und hinweisanordnungssystem |
Country Status (7)
Country | Link |
---|---|
US (1) | US5124689A (de) |
EP (1) | EP0445237B1 (de) |
JP (1) | JPH04503726A (de) |
AU (1) | AU5440490A (de) |
CA (1) | CA2042377A1 (de) |
DE (1) | DE69029383T2 (de) |
WO (1) | WO1991005304A1 (de) |
Families Citing this family (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5245321A (en) * | 1989-09-26 | 1993-09-14 | Home Row, Inc. | Integrated keyboard system with typing and pointing modes of operation |
US5269004A (en) * | 1990-06-28 | 1993-12-07 | International Business Machines Corporation | System for integrating pointing functions into computer keyboard with lateral movement of keyswitch mounting plate causing strain and control signal |
US5274766A (en) * | 1990-09-14 | 1993-12-28 | Vlsi Technology, Inc. | Universal keyboard and keyboard/spatial input device controller |
US5714983A (en) * | 1991-02-20 | 1998-02-03 | Sacks; Robert | Interactive computer system with controllable rate repetition of computer actions in response to operator inputs |
EP0580800B1 (de) * | 1991-04-19 | 1997-07-23 | Home Row, Inc. | Cursorservosteuerungssystem |
US5485614A (en) * | 1991-12-23 | 1996-01-16 | Dell Usa, L.P. | Computer with pointing device mapped into keyboard |
KR940009293B1 (ko) * | 1992-06-13 | 1994-10-06 | 삼성전자주식회사 | 마우스 기능을 구비한 키보드의 구현방법 |
US5414422A (en) * | 1992-06-30 | 1995-05-09 | Compaq Computer Corporation | Data manipulation operation keypad for use with a pointing device |
US6100875A (en) * | 1992-09-03 | 2000-08-08 | Ast Research, Inc. | Keyboard pointing device |
US5515040A (en) * | 1993-09-28 | 1996-05-07 | Sejin Electron, Incorporated | Methods of self-calibration for a key-type mouse |
US5489900A (en) * | 1994-06-03 | 1996-02-06 | International Business Machines Corporation | Force sensitive transducer for use in a computer keyboard |
US5574891A (en) * | 1994-09-27 | 1996-11-12 | Acer Peripherals, Inc. | Method for managing the input codes from keyboard and pointing device |
US6867790B1 (en) | 1996-08-09 | 2005-03-15 | International Business Machines Corporation | Method and apparatus to conditionally constrain pointer movement on a computer display using visual cues, controlled pointer speed and barriers on the display which stop or restrict pointer movement |
US5850212A (en) * | 1997-02-19 | 1998-12-15 | Nishibori; Masahiro | System for changing modes and cursor appearance by a single button |
US7015896B2 (en) * | 1998-01-23 | 2006-03-21 | Digit Wireless, Llc | Keyboards with both individual and combination key output |
US6323873B1 (en) | 1998-01-28 | 2001-11-27 | Gateway, Inc | Computer keyboard display device control |
IL133698A0 (en) * | 1999-12-23 | 2001-04-30 | Metzger Ram | Pointing device |
MXPA02011633A (es) * | 2000-05-22 | 2004-05-17 | Digit Wireless Llc | Dispositivos de entrada y su uso. |
US7126498B2 (en) * | 2002-02-27 | 2006-10-24 | Digit Wireless, Llc | Keypad construction |
BR0311243A (pt) * | 2002-05-23 | 2005-05-10 | Digit Wireless Llc | Teclados e comutadores de teclas |
US7139850B2 (en) * | 2002-06-21 | 2006-11-21 | Fujitsu Limited | System for processing programmable buttons using system interrupts |
US7696980B1 (en) * | 2006-06-16 | 2010-04-13 | Logitech Europe S.A. | Pointing device for use in air with improved cursor control and battery life |
US20090295713A1 (en) * | 2008-05-30 | 2009-12-03 | Julien Piot | Pointing device with improved cursor control in-air and allowing multiple modes of operations |
US9092071B2 (en) | 2008-02-13 | 2015-07-28 | Logitech Europe S.A. | Control device with an accelerometer system |
US20140201685A1 (en) | 2013-01-14 | 2014-07-17 | Darren Lim | User input determination |
US10608830B2 (en) | 2017-02-06 | 2020-03-31 | Mh Gopower Company Limited | Power over fiber enabled sensor system |
US11054959B2 (en) * | 2018-11-29 | 2021-07-06 | International Business Machines Corporation | Cursor control |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4201489A (en) * | 1976-08-04 | 1980-05-06 | Creatcchnil Patent AG | Keyboard actuatable with the aid of the fingers of at least one hand |
JPS57500015A (de) * | 1980-02-05 | 1982-01-07 | ||
US4680577A (en) * | 1983-11-28 | 1987-07-14 | Tektronix, Inc. | Multipurpose cursor control keyswitch |
US4712101A (en) * | 1984-12-04 | 1987-12-08 | Cheetah Control, Inc. | Control mechanism for electronic apparatus |
US4786895A (en) * | 1985-08-02 | 1988-11-22 | Xeltron, S. A. | Control panel |
US4736191A (en) * | 1985-08-02 | 1988-04-05 | Karl E. Matzke | Touch activated control method and apparatus |
JPS62279419A (ja) * | 1986-05-29 | 1987-12-04 | Canon Inc | 入力装置 |
US4924433A (en) * | 1986-07-15 | 1990-05-08 | Brother Kogyo Kabushiki Kaisha | Word processor with attribute functions |
JPH02110496A (ja) * | 1988-10-19 | 1990-04-23 | Brother Ind Ltd | 情報処理装置 |
US4974183A (en) * | 1989-04-05 | 1990-11-27 | Miller Wendell E | Computer keyboard with thumb-actuated edit keys |
-
1989
- 1989-09-26 US US07/412,680 patent/US5124689A/en not_active Expired - Lifetime
-
1990
- 1990-04-02 DE DE69029383T patent/DE69029383T2/de not_active Expired - Fee Related
- 1990-04-02 JP JP2506251A patent/JPH04503726A/ja active Pending
- 1990-04-02 AU AU54404/90A patent/AU5440490A/en not_active Abandoned
- 1990-04-02 WO PCT/US1990/001789 patent/WO1991005304A1/en active IP Right Grant
- 1990-04-02 EP EP90906605A patent/EP0445237B1/de not_active Expired - Lifetime
- 1990-04-02 CA CA002042377A patent/CA2042377A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
US5124689A (en) | 1992-06-23 |
EP0445237A1 (de) | 1991-09-11 |
EP0445237B1 (de) | 1996-12-11 |
JPH04503726A (ja) | 1992-07-02 |
DE69029383D1 (de) | 1997-01-23 |
AU5440490A (en) | 1991-04-28 |
CA2042377A1 (en) | 1991-03-27 |
WO1991005304A1 (en) | 1991-04-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69029383T2 (de) | Integriertes tastatur- und hinweisanordnungssystem | |
DE3787162T2 (de) | Feedbacksystem für eine berührungsaktive Anzeige. | |
DE3751037T2 (de) | Cursorgesteuertes benutzerperipheriesystem. | |
DE3787496T2 (de) | Verfahren und Einrichtung zum Steuern von Mehrfenstern und Arbeitsstation mit Mehrfensterfunktion. | |
DE69233600T2 (de) | Gerät zur Manipulation eines auf einem Bildschirm angezeigten Objektes | |
DE69526985T2 (de) | Anordnung und Verfahren zur automatischen Positionierung einer Schiebmarke auf einer Kontrollfläche | |
DE69615236T2 (de) | Verfahren zur vergrösserten Sichtbarkeit und Auswahlmöglichkeit von Ikonen | |
DE69129265T2 (de) | Bildverschiebungssteuerung und Verfahren | |
DE3787711T2 (de) | Eingabegültigkeitsbestätigungsverfahren für eine berührungsaktive Anzeige. | |
DE69204045T2 (de) | Verfahren und Vorrichtung zum optischen Eingang von Befehlen oder Daten. | |
DE69032645T2 (de) | Datenverarbeitungssystem mit auf Gesten basierenden Eingabedaten | |
DE69314210T2 (de) | Verfahren und Vorrichtung zur multimodalen und multifunktionalen Datenübertragung zwischen einem Benutzer und einem oder mehreren Rechnern | |
DE69225550T2 (de) | Verfahren und Vorrichtung zum Reduzieren des Betriebsaufwandes für einen berührungsempfindlichen Schirm | |
DE69619592T2 (de) | Bewegung eines auf dem Bildschirm gezeigten Zeigers | |
DE69026417T2 (de) | Hochentwickelte Anwenderschnittstelle | |
DE3855980T2 (de) | Berührungsgesteuertes Zoom für Wellenformanzeigen | |
DE4406668A1 (de) | Verfahren und Vorrichtung zur anpassungsfähigen Berührungserkennung bei einer berührungsempfindlichen Anwenderschnittstelle | |
DE69230095T2 (de) | Bildfensterverwaltung von verbundenen Anwendungen | |
DE19744861A1 (de) | Verfahren zum Einsatz einer dreidimensionalen Mouse im WINDOWS-Betriebssystem | |
DE4121551A1 (de) | Informationsverarbeitungsgeraet | |
DE202007019456U1 (de) | Mobile elektronische Vorrichtung mit Berührungseingabeeinrichtung | |
DE69118055T2 (de) | Verfahren und Einrichtung zur lokalen Steuerung von Verschiebungssteuerungstasten bei bestimmten Rechnern | |
US5245321A (en) | Integrated keyboard system with typing and pointing modes of operation | |
DE102012220062A1 (de) | Einstellung mehrerer benutzereingabeparameter | |
DE69026516T2 (de) | Digitalisiertablett mit zweimodenläufer/maus |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |