Claims
- 1. A method of providing input feedback in a device having a keyboard with a matrix of independent keys having associated switches, the method comprising
scanning the matrix for activated keys; upon detection of a first activated key, providing provisional output to a user indicating that the activated key has been registered; continuing to scan the matrix for activation of an adjacent key prior to release of the first activated key; and, in response to activation of an adjacent key prior to release of the first activated key, providing final output to the user indicating that a combination of the first and adjacent keys has been registered, to the exclusion of the provisional output.
- 2. The method of claim 1 wherein the final output is provided as visual feedback.
- 3. The method of claim 2 wherein the provisional output is also provided as visual feedback.
- 4. The method of claim 2 wherein the provisional output is also provided as audio feedback.
- 5. The method of claim 1 wherein scanning the matrix includes scanning rows and columns.
- 6. The method of claim 1 wherein scanning the matrix includes driving two adjacent rows simultaneously, seeking for two simultaneous output columns.
- 7. The method of claim 1 wherein continuing to scan the matrix for activation of an adjacent key includes determining if a diagonally adjacent key is activated.
- 8. The method of claim 1 including looking up a desired combination key in an internal table in response to activation of an adjacent key prior to release of the first activated key.
- 9. The method of claim 1 wherein providing provisional output includes storing the provisional output as raw data into a register.
- 10. The method of claim 1 wherein the provisional output is provided as feedback and wherein providing the provisional output includes
determining the provisional output upon detection of the first activated key, and then delaying a predetermined amount of time after the provisional output is determined before providing feedback.
- 11. The method of claim 10 wherein the provisional output is provided as visual feedback.
- 12. The method of claim 10 wherein the predetermined amount of time is approximately 20 milliseconds.
- 13. The method of claim 10 wherein the amount of delay time is determined from measured time between key strokes and details of correction.
- 14. The method of claim 1 wherein the independent keys of the keyboard have exposed surfaces elevated above exposed surfaces of interstitial regions of the keyboard between adjacent independent keys that together form a key combination corresponding to a stored combination key output.
- 15. A method of providing input feedback in a device having a keyboard with a matrix of independent keys having associated switches arranged in rows and columns, wherein combinations of diagonally adjacent keys are associated with combination key outputs, the method comprising
driving the rows in adjacent pairs while examining the columns for switch activation; and, in response to detecting switch activation in two adjacent columns while driving the rows in adjacent pairs, determining a combination key output.
- 16. The method of claim 15 further including, prior to driving the rows in adjacent pairs, driving the rows of key switches while searching on the columns for switch activity; and then driving the rows in adjacent pairs in response to detection of an activated switch on at least one of the columns.
- 17. The method of claim 16 wherein all rows of key switches are driven simultaneously while searching on the columns for any switch activity.
- 18. The method of claim 16 further including, after determining the combination key output, waiting until all columns are low before again driving all rows of switches.
- 19. The method of claim 15 further including, in response to detecting switch activation in only one column while driving the rows in adjacent pairs, determining an individual key output.
- 20. The method of claim 19 wherein determining the individual key output includes
setting a first hit counter for keeping track of a number of cycles that an indicated key is activated; incrementing the first hit counter each cycle; and, when the first hit counter has reached a predetermined number, registering an independent key output associated with the indicated key.
- 21. The method of claim 20 further including, after registering the independent key output, resetting the first hit counter and waiting until all columns are low before again driving the rows of switches.
- 22. The method of claim 20 wherein the predetermined number is an equivalent of approximately 20 to 30 milliseconds.
- 23. The method of claim 20 wherein the predetermined number is incorporated into a learn mode.
- 24. The method of claim 23 wherein the learn mode includes increasing the predetermined number in response to: delete key usage after an individual key, followed by an input of an associated combination key.
- 25. The method of claim 20 wherein the predetermined number is approximately 200 milliseconds.
- 26. The method of claim 15 wherein the independent keys of the keyboard have exposed surfaces elevated above exposed surfaces of interstitial regions of the keyboard between adjacent independent keys corresponding to combinations of diagonally adjacent keys associated with combination key outputs.
- 27. A method of determining input in a device having a keyboard with a matrix of independent keys having associated switches in a known arrangement, wherein combinations of adjacent keys are associated with combination key inputs, the method comprising identifying independent keys of legitimate combination key inputs in association with a first activated key, by
adding each of a predetermined set of numbers to a sequence number associated with the activated key, to determine sequence numbers of legitimate combination-producing independent keys associated with the activated key, the predetermined set of numbers based upon the known switch arrangement; and then identifying legitimate combination-producing independent keys in a table associating keys and sequence numbers, from the determined sequence numbers.
- 28. The method of claim 27 further including, after identifying independent keys of legitimate combination key inputs in association with a first activated key, and in response to activation of one of the identified legitimate combination-producing independent keys, registering an input associated with a combination of the first activated key and the activated one of the identified legitimate combination-producing independent keys.
- 29. The method of claim 27 including, after identifying legitimate combination-producing independent keys, specifically checking for activation of the identified legitimate combination-producing independent keys.
- 30. The method of claim 27 wherein the key switches are arranged in rows and columns, and wherein legitimate key combinations having associated inputs are combinations of diagonally adjacent keys.
- 31. The method of claim 30 wherein the predetermined set of numbers consists of values associated with (R+1) and (R−1), where R is a number of rows of the key matrix.
- 32. The method of claim 27 wherein checking for activation of legitimate combination-producing independent keys comprises evaluating results of a scan from which the first activated key is identified.
- 33. The method of claim 27 wherein the first activated key is identified on a first scan of the key matrix, and wherein specifically checking for activation of the identified legitimate combination-producing independent keys comprises scanning the matrix a subsequent time.
- 34. The method of claim 33 wherein specifically checking for activation of the identified legitimate combination-producing independent keys comprises scanning only a single column adjacent a column containing the first activated key.
- 35. The method of claim 27 wherein the table associating keys and sequence numbers contains extra sequence numbers not associated with switches of the key matrix.
- 36. The method of claim 35 wherein the extra sequence numbers are numerically between sequence numbers associated with switches on opposite edges of the key matrix.
- 37. The method of claim 27 wherein the independent keys of the keyboard have exposed surfaces elevated above exposed surfaces of interstitial regions of the keyboard between adjacent independent keys corresponding to combinations of diagonally adjacent keys associated with combination key outputs.
- 38. A method of providing input feedback in a device having a keyboard with a matrix of independent keys having associated switches, wherein combinations of adjacent keys are associated with combination key inputs, the method comprising
scanning the matrix for activated keys; comparing scanned key states with key states from a prior scan of the matrix; upon detection of a change in key states, analyzing the scanned key states, including
for scanned key states indicating only one active key, registering an independent key input associated with the active key; and for scanned key states indicating multiple active keys associated with a single combination input, registering the combination key input associated with the multiple active keys.
- 39. The method of claim 38 wherein detection of a change in key states comprises detection of a change in number of keys activated.
- 40. The method of claim 38 further including, in response to detecting no change in key states as a result of comparing scanned key states with key states from a prior scan of the matrix, repeating the step of scanning the matrix for activated keys without said analyzing of the scanned key states.
- 41. The method of claim 38 wherein analyzing the scanned key states further includes, for scanned key states indicating multiple active keys not associated in combination with a single combination input, registering an input associated with a stored personal identification number.
- 42. The method of claim 38 wherein analyzing the scanned key states includes, for scanned key states indicating two active keys, determining if the two active keys are diagonally adjacent to one another and, if the two active keys are determined to be diagonally adjacent to one another, registering a combination key input associated with the two active keys.
- 43. The method of claim 38 wherein the independent keys of the keyboard have exposed surfaces elevated above exposed surfaces of interstitial regions of the keyboard between adjacent independent keys corresponding to combinations of diagonally adjacent keys associated with combination key outputs.
- 44. A method of providing input feedback in a device having a keyboard with a matrix of independent keys having associated switches, wherein combinations of adjacent keys are associated with combination key inputs, the method comprising
scanning the matrix for activated keys; generating a key count corresponding to how many keys are activated; and evaluating the key count to determine whether to analyze other key state information.
- 45. The method of claim 44 wherein evaluating the key count comprises comparing the key count to the numeral ‘one’, and, for key counts equal to one, analyzing other key state information to determine which independent key is active.
- 46. The method of claim 44 wherein evaluating the key count comprises comparing the key count to a stored key count from a previous scan of the matrix to determine if the key count has changed.
- 47. The method of claim 44 wherein the independent keys of the keyboard have exposed surfaces elevated above exposed surfaces of interstitial regions of the keyboard between adjacent independent keys corresponding to combinations of diagonally adjacent keys associated with combination key outputs.
- 48. A method of providing input feedback in a device having a keyboard with a matrix of independent keys having associated switches, wherein combinations of adjacent keys are associated with combination key inputs, the method comprising
scanning the matrix for activated keys; in response to detecting that a key has been activated for a predetermined period of time, registering an input associated with the activated key; and in response to detecting that no keys are activated in a scan following a scan in which a key was detected as activated but for a time less than the predetermined period of time, registering an input associated with the activated key.
- 49. The method of claim 48 further including, following registering an input associated with the activated key, resetting a timer associated with key activation time and scanning the matrix again.
- 50. The method of claim 49 wherein the timer comprises a counter incremented for each sequential scan in which a given key is active.
- 51. The method of claim 48 wherein the predetermined period of time is between about 160 and 250 milliseconds.
- 52. An electronic device having a keyboard with a matrix of independent keys having associated switches and configured to perform the method of claim 1.
- 53. An electronic device having a keyboard with a matrix of independent keys having associated switches arranged in rows and columns, wherein combinations of diagonally adjacent keys are associated with combination key outputs, and wherein the device is configured to perform the method of claim 15.
- 54. An electronic device having a keyboard with a matrix of independent keys having associated switches in a known arrangement, wherein combinations of adjacent keys are associated with combination key inputs, and wherein the device is configured to perform the method of claim 27.
- 55. An electronic device having a keyboard with a matrix of independent keys having associated switches, wherein combinations of adjacent keys are associated with combination key inputs, and wherein the device is configured to perform the method of claim 38.
- 56. An electronic device having a keyboard with a matrix of independent keys having associated switches, wherein combinations of adjacent keys are associated with combination key inputs, and wherein the device is configured to perform the method of claim 44.
- 57. An electronic device having a keyboard with a matrix of independent keys having associated switches, wherein combinations of adjacent keys are associated with combination key inputs, and wherein the device is configured to perform the method of claim 48.
Parent Case Info
[0001] This application is a continuation-in-part of U.S. Ser. No. 09/236,199, filed Jan. 23, 1999 and based on provisional application No. 60/072,302 filed Jan. 23, 1998 and provisional application No. 60/079,187 filed Mar. 24, 1998. The content of all of these applications are incorporated by reference herein as if set forth in their entirety.
Provisional Applications (2)
|
Number |
Date |
Country |
|
60072302 |
Jan 1998 |
US |
|
60079187 |
Mar 1998 |
US |
Continuation in Parts (1)
|
Number |
Date |
Country |
Parent |
09236199 |
Jan 1999 |
US |
Child |
09916928 |
Jul 2001 |
US |