GB2221071A - Electronic keyboard - Google Patents

Electronic keyboard Download PDF

Info

Publication number
GB2221071A
GB2221071A GB8915297A GB8915297A GB2221071A GB 2221071 A GB2221071 A GB 2221071A GB 8915297 A GB8915297 A GB 8915297A GB 8915297 A GB8915297 A GB 8915297A GB 2221071 A GB2221071 A GB 2221071A
Authority
GB
United Kingdom
Prior art keywords
key
data
key switch
matrix
state
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
GB8915297A
Other versions
GB2221071B (en
GB8915297D0 (en
Inventor
David L Impett
Gary Neville
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Devlin Electronics Ltd
Original Assignee
Devlin Electronics Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from GB888815884A external-priority patent/GB8815884D0/en
Priority claimed from GB898910989A external-priority patent/GB8910989D0/en
Application filed by Devlin Electronics Ltd filed Critical Devlin Electronics Ltd
Publication of GB8915297D0 publication Critical patent/GB8915297D0/en
Publication of GB2221071A publication Critical patent/GB2221071A/en
Application granted granted Critical
Publication of GB2221071B publication Critical patent/GB2221071B/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M11/00Coding in connection with keyboards or like devices, i.e. coding of the position of operated keys
    • H03M11/003Phantom keys detection and prevention

Abstract

An electric keyboard comprises key switches arranged in an electrical matrix and a microcomputer arranged to cyclically scan the matrix in order to detect a change in state of a key switch within the matrix as between the previous scanning cycle and the present scanning cycle. The microcomputer is configured to compare also the detected changed state of the key switch with the state of other key switches within the matrix using a stored bit map (38, 40 in Fig. 2) or rescanning (Fig. 3, not shown). The microcomputer is responsive to the relative states of the switches and prevents transmission of false key switch data which can be caused by ghost keys in certain multiple key depression situations. <IMAGE>

Description

IMPROVEMENTS IN ELECTRONIC KEYBOARDS This invention relates to improved electronic keyboards and in particular relates to a keyboard including means for preventing transmission of false keyswitch data arising from an unacceptable multiple key depression situation.
During rapid operation of keyboards it is not uncommon for a situation to arise where, after pressing a first key, the operator moves on to press a second key before the first key has been released thus resulting in overlap in key actuations. This overlapping of key actuations is generally referred to as "rollover" by those possessed of the appropriate skills in the art of electronic keyboards.
In electronic keyboards multiple key rollover can result in an effect known as "ghosting" under certain conditions. It is common practice in electronic keyboard manufacture to arrange the key switches which constitute the keyboard at crossover points within a matrix and to provide means for scanning the rows and columns of the matrix in order to identify key switches depressed by the user. The problem of ghosting occurs when keys on three corners of a rectangle within the matrix are depressed simultaneously. Under this condition, the resulting electrical path falsely indicates that the fourth switch at the remaining corner of the rectangle is also closed and this results in false data being output from the keyboard.
One way of overcoming this ghosting problem is simply not to provide a rollover facility on the keyboard. However, no rollover facility on a keyboard is undesirable because this requires each key to be depressed and released before the next key is depressed, and this will tend to slow down the user who will have to ensure that each key depression is discrete in order for data not to be lost during input.
Another way of overcoming the problem of ghosting is to provide a diode at each key switch in order to control the flow of current within the matrix.
However, whilst this provides a satisfactory solution to the problem of ghosting, it is also very expensive.
A diode at each key switch will increase the overall cost of components constituting the keyboard, and will increase on-line inspection time for the finished keyboard. - Furthermore, the presence of the diodes makes servicing of the keyboard more difficult and therefore more costly.
An alternative solution to the problem of ghosting is described in U.S. Patent No. 4,420,744 (Oak Industries) which discloses a so-called "N-key rollover" encoder which scans the rows and columns of a keyboard matrix to determine the status of each key switch, logs the status information into a memory, examines the logged status information to determine whether a ghosting condition exists and, where a ghosting condition exists, reverses the status information for those switches constituting the ghosting condition so that none of the keys in the ghosting condition are output as valid data from the keyboard. The arrangement disclosed by Oak Industries is complex since the condition of each key switch in a row of the matrix is examined at each scan and is compared with the state of each key switch in every other row of the matrix.This row-wise comparison is followed by a columnwise comparison in order to identify a ghost condition.
Thus, the Oak Industries arrangement requires all data from a keyboard matrix to be stored in a memory where it is processed in order to remove data pertaining to a ghosting condition. This requires additional processing overheads.
It would be advantageous to provide an arrangement for scanning a keyboard key actuation in a rollover situation and which included means for ensuring that a ghosting problem never arises in stored status data.
According to the invention in one of its aspects there is provided an electronic keyboard comprising key switches arranged in an electrical matrix, and wherein each row of the matrix is scanned cyclically to detect when a key switch on a scanned row has changed from one state in a previous scanning cycle to another state in the current scanning cycle and the status of the said detected key switch and the status of the other key switches in the matrix are compared in order to identify false key switch data arising from an unacceptable multiple key depression situation.
In a first embodiment. of the invention data relating to a detected change in status of a key switch is compared with other key switch status data held in a memory to enable said unacceptable key depression situation to be identified.
In a second embodiment of the invention when the said change of status is detected on the said scanned row, all other rows are rescanned to enable said unacceptable key depression situation to be identified.
In another of its aspects the invention provides an electronic keyboard comprising: key switches arranged in an electrical matrix; scanning means for cyclically scanning rows of key switches within the matrix and for detecting when a key switch on a scanned row has changed from one state in a previous scanning cycle to another state in the current scanning cycle; comparing means for comparing data representing the detected changed state of a key switch with other key switch data in order to determine the relative status between the detected key switch and other key switches in the matrix and, responsive thereto, selectively to prevent the storing of false key switch data from the keyboard arising from an unacceptable multiple key depression situation.
In the practice of this other aspect of the invention the scanning means may include verifying means for verifying that a detected change in state of a key switch is valid.
In a first embodiment of the invention, as will be described in greater detail hereinafter, data storing means are provided for storing data relating to the status of all key switches, and wherein the comparing means is adapted to compare said data representing the detected charged state with data in the data storing means.
In a second embodiment of the invention, also to be described in greater detail hereinafter, the comparing means may be adapted to compare said data representing the detected changed state with data relating to the status of all key switches from the scanning means.
Keyboards embodying the invention, as will be described in greater detail hereinbelow, offer a number of advantages over hitherto known keyboards.
For example, as has already been mentioned hereinabove with regard to the Oak Industries arrangement, it has hitherto been common practice to scan a keyboard in order to continuously refresh data stored in memory and relating to the status of the keys. Thus, the practice has been to log the results of each and every scan into a storage array then to study the results to locate key status combinations which could indicate a ghosting condition. If such a combination is found, the practice has been to reverse the status of all such keys before providing an output signal from the keyboard representative of the depressed keys. In other words, the practice has been to take steps to solve any ghosting problems after the status information has been placed in memory.In contrast, the invention provides an arrangement which ensures that information that is associated with a ghosting situation is never written into the memory by arranging for only changes in the state of a switch to be logged into memory after a number of checks have been performed by the system.
Further advantages and features of the invention are set forth with particularity in the appended claims.
In order that the invention may be better understood exemplary embodiments thereof will hereinafter be described with reference to the accompanying drawings, in which: Figure 1 is a schematic diagram showing a keyboard circuit; Figure 2 is a first flowchart representing a first manner in which a matrix in the keyboard circuit may be scanned; and Figure 3 is a second flowchart representing a second manner in which the keyboard circuit may be scanned.
The keyboard apparatus shown in Figure 1 comprises a key switch matrix generally indicated at 10, a microcomputer U5 and associated electronic circuitry. Key switches within the key switch matrix are not specifically shown in Figure 1 since it should be clear to those skilled in the art that in such a key switch matrix the key switches are arranged at the intersection between rows and columns of the matrix so that when a key on the keyboard is depressed by the user an electrical connection is made between the row and column at that intersection. Thus, for example, if key "G" was depressed by the user, an electrical connection would be made between row X5 and column Y3 of the matrix.
The microcomputer U5, which may for example be an 8049 type microcomputer but which can be any suitably configured microcomputer, microprocessor or general purpose processing device, is arranged to detect the actuation of a key switch within the matrix. This is achieved by the microcomputer U5 cyclically scanning the scanning rows XO-X15 by way of an energising signal. When a key, "G" in the example, is depressed by the user the energising signal on row X5 will be transferred via the switch to the column Y3 where it will be detected on databus DB of the microcomputer.
The scanning signals applied to rows X0 to X15 are generated within the microcomputer and output therefrom via ports P1 and P2. The eight lines, i.e.
PlO to P17, associated with port P2 are connected directly to rows X8 to X15 of the matrix. In contrast, only the four least significant bits of port 2, namely P20 to P23 are used to provide scanning signals to rows XO-X7 of the matrix, thus freeing lines P24 to P27 for other uses. In order to enable the four port lines P20 to P23 to scan eight rows of the matrix, a decoder/demultiplexer U4, which may for example be a TTL type 74LS156 device, is provided to receive and decode signal combinations from the port P2 lines P20 to P23 and to apply energising signals to rows XO to X7 in response thereto.
The other four lines of port P2, i.e P24 to P27, are used to provide control over various ancillary functions. Lines P24 and P25 drive, in combination with lines P20 to P22, an addressable latch U3 which may for example be a TTL type 74LS259 device. The addressable latch drives status indicating light emitting diodes LD1 to LD9 and the microcomputer can be configured to control which of the diodes are energised under a particular condition of the keyboard.
Line P26 is arranged to provide control over a timer U1, which may for example be a 555 type device, arranged to provide an audible tone at loudspeaker AT20. An audible tone may be generated for example each time that the microcomputer U5 detects a key being actuated by the user.
Line P27 is arranged to provide an output path from the microcomputer and the microcomputer can be programmed so that a signal in for example ASCII code is transmitted along the output path each time that a valid key depression is detected by the system.
One embodiment of the way in which the key switch matrix may be scanned in order to detect a valid change of status will now be explained with reference to Figure 2 of the drawings.
The microcomputer U5 includes an internal memory which is used to store a bit map representing the status of each key switch in the matrix. Of course it is possible to store such status information in wide range of ways. However, perhaps the simplest way is to represent a depressed key as a logical 1 and otherwise to represent the status of a key as a logical 0, or vice versa, and this is the method adopted in this embodiment.
The microcomputer is arranged to energise repetitively each of the rows XO-X15 in order. Each time a row is energised, the status of each of the switches on that row is detected by the microcomputer via the databus DB and is compared with the corresponding status stored in the bit map in the memory of the microcomputer. If there has been no change in status in the scanned line since the last time the line was scanned, no alteration is made to the bit map and the next line in the matrix is energised to examine the status of the key switches on that line. This is represented by boxes 20 and 22 of Figure 2.
As shown by boxes 24 and 26 of Figure 2, if a change in status of a key or keys on a scanned line is detected, the microcomputer performs a verification routine to confirm that the detected change is valid.
This test helps to ensure that false changes in status, caused by for example signal glitches or key switch bounce, are not processed as valid data. To do this the microcomputer stops cyclically scanning all the rows in the matrix and instead repeatedly scans a number of times only the row in which the change was detected. It has been found that scanning the row in which a change in status has been detected twenty times to see that the changed status remains changed provides a satisfactory verification that the detected change was not caused merely by a spurious signal within the keyboard circuitry. If the scan verification test fails, i.e the detected change in status of a key switch or key switches is not valid, the change is ignored and the microcomputer returns to the scanning cycle represented by boxes 20 and 22.
However, as is shown in box 28, if the change in status is found to be valid, the microcomputer U5 stops scanning the rows of the keyboard and determines the column or columns in which the changed key switch or key switches lie in order to determine the address or position of the changed switch (the appropriate row is already known since it was the last row scanned by the microcomputer).
When the address of the first changed switch has been determined the microcomputer U5 has sufficient information to enable it to perform a number of comparisons between the detected status and the bit map which represents the last detected status of all key switches in the matrix and which is stored in a memory within the microcomputer.
As is shown in boxes 30 and 32 of Figure 2, the first test performed on the validated key switch data is a comparison between the present state of the key switch and the previous state of the key switch held in the bit map stored in the microcomputer's memory.
This test is performed to determine whether the key switch has closed, i.e the associated key has been pressed down by the user, or opened in which case the key will have been released to an up position by the user.
If the key has been pressed down by the user, the microcomputer examines the status of all other keys on the same row of the matrix as shown in box 34. If no other key switches are closed on that row the bit map is altered, as represented in box 36, to store data indicating that the key has been depressed by the user. If, however, examination of the status of the other keys in the same row reveals that there are other keys in a down position, the microcomputer enters another testing routine as illustrated by boxes 38, 40 and 42. Assume, for the sake of illustration of this testing routine, that keys "K" and "G" in row X5 have both been found to be in a down position. The microcomputer first determines which columns these keys are in; in this case key "K" is in column YO and key "G" is in column Y3.With this information the microcomputer constructs a mask which is used to mask all data in the bit map except for that corresponding to columns YO and Y3 of the matrix. With the mask in position the bit map data for all keys in columns YO and Y3 is checked to see if there are any other keys in a down position. If none are found, data relating to the key switch which has changed to a closed position is stored in the appropriate location in the bit map.
If however another key switch in either column YO or Y3 is found to be closed, for example key "D" in Figure 1, the microcomputer will detect both key "D" and key "BACKSPACE" as being down since these will be a path from row X7 to column YO (the address of key "BACKSPACE") along the path provided by keys "D", "G" and "K". Since the microcomputer has no way of telling whether all of these four keys have indeed been pressed by the user or whether one of them is in fact a ghost key it would be unacceptable for the bit map to be altered to show all of these keys in the down position. Thus, as illustrated by box 42, the microcomputer is arranged so as not to alter the data in the bit map when an unacceptable multiple key depression situation such as that described above arises.Instead, the microcomputer returns to repeat the scanning sequence at the stage represented by box 20.
In this way ghost key situations are avoided.
The data which should have been generated in response to the keys being pressed will in most circumstances not be lost however since as soon as one of the three offending keys, say key "D" in the example, is released by the user there will no longer be a ghosting situation and the original key depression, key "G" in the example, can be stored in the bit map.
The testing routine represented by boxes 38, 40 and 42 of Figure 2 will be bypassed if no other keys in the same columns are found to be down.
As is shown by box 44, when the bit map is altered to show a key in the down position, the microcomputer also addresses a keycode look-up table to extract a keycode representing the depressed key for transmission via port line P27. Keycode data for transmission along the transmission line is held temporarily in a buffer and transmitted on a first infirst out basis. In this way keycode data is transmitted in the same order as the keys are depressed by the user. Once the code has been transmitted, the microcomputer resumes scanning of the keyboard matrix to detect changes in the status of any of the key switches.
Returning again to box 32, it can be seen that if the microcomputer determines that the detected key has been released, then the microcomputer branches to a routine represented by box 46 which results in the corresponding bit in the bit map being reset to logical 0. If the installation in which the keyboard is to be used has no use for a signal indicating the release of a key, the microcomputer returns to the task of matrix scanning represented by boxes 20 and 22 via broken line 48. If on the other hand the installation requires positive indication of a key being released, as may be the case for example where an auto repeat function is provided in the installation, then the microcomputer U5 can be configured as illustrated by line 50 to address the keycode look-up table to access a keycode representing the released key for transmission via port line P27.
An alternative modified scanning process may be used to scan the keyboard circuit. The form and operations of this modified scanning process are in many respects similar to that of the first embodiment described hereinabove with reference to Figure 2 of the drawings and therefore the following description of this second embodiment of the process will be directed mainly towards those features which differ from the previously described process.
Referring now to Figure 3 of the accompanying drawing it will be seen that this alternative process includes several stages, namely boxes 60 to 68, which perform similar operations to corresponding stages That is to say, in general terms, boxes 60 and 61 represent the operation of scanning of the keyboard for key movement, boxes 62 and 63 represent the operations associated with the verification of detected movement of a key and boxes 64 to 68 represent those stages of the process which are concerned with the transfer and updating of data in a keyboard status bit map.
In the previously described first embodiment, once the bit map has been updated a mask is created and the bit map is checked using the mask on a lineby-line basis for any other closed keys in the same columns in the bit map as the first detected closed keys. It has been found that under most circumstances this provides a satisfactory test for so-called ghosting conditions, but that under certain circumstances, namely when a ghosting situation key has not been logged into the bit map, spurious conditions not truly representative of the instantaneous status of the keyboard can occur.
In order to avoid this potential problem it is advantageous to interrogate directly the keyboard matrix. By interrogating directly the keyboard matrix a true indication of the condition of the matrix will be obtained. This is achieved in the second embodiment by the processes represented by boxes 69 to 71 of Figure 3 of the accompanying drawings.
When the process represented by box 67 determines that on a given line (X) of the keyboard matrix more than one key is down, i.e. the keyswitches associated with two or more keys are closed, the system determines which columns (Y) these keys are in and creates a mask for masking all columns of the matrix other than the columns in which the closed keys are located. This mask-creating process is represented by box 69 in Figure 3 and is similar to the corresponding process previously described in relation to the first embodiment Once the mask has been created every row of the keyboard matrix is scanned in sequence, as represented in box 70, and as the rows are scanned the status of each switch in each row of the matrix is compared with the mask.If for any row, other than the row in which the two closed keys were first located which thereby caused generation of the mask, a closed keyswitch is found at a position which matches at least one of the unmasked portions of the mask pattern then, as represented by box 71, the system disregards all switch data and returns to the line scanning process of box 60. That is to say if a further key is located in the same column as one of the keys which caused the mask to be generated, then all keyswitch data for the present scan is ignored and no changes are made to the bit map. However, when no such match is found to exist then data relating to the key switch which has changed to a closed position is stored in the appropriate position in the bit map.
It will be appreciated that the second embodiment of the key scanning process is in many respects similar to the first embodiment. The most significant difference between the two embodiments is the physical location within the keyboard at which ghost keys are detected. In the first embodiment ghosting and potential ghosting conditions are detected by interrogating a continuously updated bit map. In the second embodiment, ghosting and potential ghosting conditions are detected by interrogating all keyboard matrix rows for ghosting conditions in response to the detection of two closed key switches in a single row and the bit map is updated where no ghosting condition is found to exist.
Embodiments of the invention have thus been described and it should be apparent to those skilled in the art that many modifications are possible to these embodiments without departing from the scope of the invention. For example, there is no particular requirement that requires the use of the exemplary 8049 microcomputer. Any suitably configured microcomputer can be used, or indeed any suitably configured microprocessor. Furthermore, it is possible to realise the invention by way of a dedicated circuit built from discrete and/or custom made components and designed specifically to perform the functions required to avoid transmission of false key switch data arising from an unacceptable multiple key depression situation.
Moreover, whilst the keyboard has been described and illustrated as having alphanumeric keys of the kind normally found on a typewriter keyboard this is not intended to be in any way limiting; the above described processes can be readily applied to any electronic keyboard which has an array of key switches arranged in an electrical matrix.

Claims (15)

CLAIMS:
1. An electronic keyboard comprising key switches arranged in an electrical matrix, and wherein each row of the matrix is scanned cyclically to detect when a key switch on a scanned row has changed from one state in a previous scanning cycle to another state in the current scanning cycle and the status of the said detected key switch and the status of other key switches in the matrix are compared in order to identify false key switch data arising from an unacceptable multiple key depression situation.
2. An electronic keyboard according to claim 1, wherein data relating to a detected change in status of a key switch is compared with other key switch status data held in a memory to enable said unacceptable key depression situation to be identified.
3. An electronic keyboard according to claim 1 wherein, when the said change of status is detected on the said scanned row, all other rows are rescanned to enable said unacceptable key depression situation to be identified.
4. An electronic keyboard comprising: key switches arranged in an electrical matrix; scanning means for cyclically scanning rows of key switches within the matrix and for detecting when a key switch on a scanned row has changed from one state in a previous scanning cycle to another state in the current scanning cycle; comparing means for comparing data representing the detected changed state of a key switch with other key switch data in order to determine the relative status between the detected key switch and other key switches in the matrix and, responsive thereto, selectively to prevent the storing of false key switch data from the keyboard arising from an unacceptable multiple key depression situation.
5. An electronic keyboard according to claim 4 in which the scanning means includes verifying means for verifying that a detected change in state of a key switch is valid.
6. An electronic keyboard according to claim 4 or 5, further comprising data storing means for storing data relating to the status of all key switches, and wherein the comparing means is adapted to compare said data representing the detected changed state with data in the data storing means.
7. An electronic keyboard according to claim 4 or 5, wherein the comparing means is adapted to compare said data representing the detected changed state with data relating to the status of all key switches from the scanning means.
8. An electronic keyboard according to claim 6 or 7 further comprising position locating means for locating the position of the changed key switch and for addressing the data storing means.
9. An electronic keyboard according to claim 6 or 7 further comprising state determining means for determining the state of the detected changed key switch and for resetting the corresponding data in the data storing means if the key switch is in an inactive state.
5. An electronic keyboard according to any of claims 4 to 9 in which the comparing means compares the detected changed state with data relating to status of the other key switches in the same row of the matrix as the detected key switch.
11. An electronic keyboard according to claim 10 as dependent on claim 9, in which the state determining means inhibits comparison of the same row data if the key switch has changed to an inactive state.
12. An electronic keyboard according to claim 11 further comprising masking means responsive to the determining means determining that a plurality of key switches are active in the scanned row for masking data corresponding to columns in which the plurality of key switches are not active, and wherein the determining means examines the unmasked data to determine whether any other key switch related thereto is in an active state.
13. An electronic keyboard according to any of claims 4 to 12 in which the comparing means prevents transmission of key switch data when key switches are active in at least three corners of a rectangle within the matrix.
14. An electronic keyboard according to claim 1 or claim 4 and substantially as herein described with reference to Figure 1 of the accompanying drawings.
15. An electronic keyboard substantially as herein described with reference to the accompanying drawings.
GB8915297A 1988-07-04 1989-07-04 Improvements in electronic keyboards Expired - Fee Related GB2221071B (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
GB888815884A GB8815884D0 (en) 1988-07-04 1988-07-04 Improvements in electronic keyboards
GB898910989A GB8910989D0 (en) 1989-05-12 1989-05-12 Improvements in electronic keyboards

Publications (3)

Publication Number Publication Date
GB8915297D0 GB8915297D0 (en) 1989-08-23
GB2221071A true GB2221071A (en) 1990-01-24
GB2221071B GB2221071B (en) 1992-08-19

Family

ID=26294113

Family Applications (1)

Application Number Title Priority Date Filing Date
GB8915297A Expired - Fee Related GB2221071B (en) 1988-07-04 1989-07-04 Improvements in electronic keyboards

Country Status (1)

Country Link
GB (1) GB2221071B (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8159372B2 (en) 2007-10-16 2012-04-17 Microsoft Corporation Keyboard with plural key switch matrices to detect ghosting

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113330396A (en) * 2019-06-21 2021-08-31 深圳市柔宇科技股份有限公司 Control method, keyboard and electronic equipment

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0095023A2 (en) * 1982-05-20 1983-11-30 International Business Machines Corporation Contact keyboard with finger controlled N-key rollover
US4420744A (en) * 1981-02-12 1983-12-13 Oak Industries Inc. Keyboard crosspoint encoder having N-key rollover
GB2162351A (en) * 1984-07-24 1986-01-29 Alps Electric Co Ltd A keyboard input device and a method of controlling keyboard signals
EP0229695A2 (en) * 1986-01-08 1987-07-22 Brother Kogyo Kabushiki Kaisha A matrix switching apparatus for preventing pseudo input
GB2203576A (en) * 1987-04-13 1988-10-19 Apple Computer Keyboard crosspoint encoder having pseudo-n-key rollover

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4420744A (en) * 1981-02-12 1983-12-13 Oak Industries Inc. Keyboard crosspoint encoder having N-key rollover
EP0095023A2 (en) * 1982-05-20 1983-11-30 International Business Machines Corporation Contact keyboard with finger controlled N-key rollover
GB2162351A (en) * 1984-07-24 1986-01-29 Alps Electric Co Ltd A keyboard input device and a method of controlling keyboard signals
EP0229695A2 (en) * 1986-01-08 1987-07-22 Brother Kogyo Kabushiki Kaisha A matrix switching apparatus for preventing pseudo input
GB2203576A (en) * 1987-04-13 1988-10-19 Apple Computer Keyboard crosspoint encoder having pseudo-n-key rollover

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8159372B2 (en) 2007-10-16 2012-04-17 Microsoft Corporation Keyboard with plural key switch matrices to detect ghosting

Also Published As

Publication number Publication date
GB2221071B (en) 1992-08-19
GB8915297D0 (en) 1989-08-23

Similar Documents

Publication Publication Date Title
US4922248A (en) Key output method for keyboards
CA1073554A (en) Keyboard circuit
AU597962B2 (en) Keyboard enhancer
US4420744A (en) Keyboard crosspoint encoder having N-key rollover
US3973256A (en) Key detection system interconnecting keyboard and data processing system
US4591833A (en) Keyboard unit control system using block scanning techniques
US5982357A (en) Computer keyboard systems and methods for determining excessive key stroke force
EP0067516A1 (en) Shift control system for keyboards
GB2221071A (en) Electronic keyboard
US4918444A (en) Key-depression data input device
EP0229695B1 (en) A matrix switching apparatus for preventing pseudo input
US5059974A (en) Method for determining phantom switch condition
EP0575087B1 (en) An identification code input board for an electrical lock or the like
GB2285148A (en) Process sequence control
EP0095023A2 (en) Contact keyboard with finger controlled N-key rollover
US5495616A (en) Processor system with interrupt discrimination
GB2263990A (en) Method for detecting ghost keys
KR950001482A (en) Data flow control device and memory device
US5702625A (en) Encoder key input device for a microwave oven and interrupt processing method using the same
JPH0426129B2 (en)
JP2839304B2 (en) Keyboard device
JPS5818650B2 (en) keyboard input device
JPH0313610B2 (en)
US4853695A (en) Data input device having switch matrix scanning means
JP2839237B2 (en) Keyboard key code output device and output method

Legal Events

Date Code Title Description
PCNP Patent ceased through non-payment of renewal fee

Effective date: 20040704