Claims
- 1. In combination with a personal computer, the personal computer including a microcontroller and a keyboard including a plurality of key switches, the keyboard further including a plurality of intersecting strobe lines and sense lines, a key switch connected between appropriate strobe and sense lines, a key closure indicating a strobe line is electrically connected to a sense line, a hardware assisted keyboard scanner comprising:
- random access memory (RAM) means, the RAM means being organized as a plurality of bytes of data and a plurality of corresponding addresses, each of the plurality of bytes of data corresponds to one of the plurality of sense lines and each of the plurality of addresses corresponds to one of the plurality of strobe lines, the RAM means storing a data pattern of key closures;
- counter means coupled to the RAM means for providing an address to the RAM means, the counter means also for sequentially incrementing and asserting each of the strobe lines, each time the counter means increments a strobe line, a new strobe line is asserted and a next sequential data byte is referenced;
- comparator means responsive to the counter means for comparing each data byte stored in the RAM means to a corresponding sense line state to determine if there has been at least one key closure change, a miscompare indicating that at least one key closure has changed as a result of key switch activity; and
- flip-flop means responsive to the comparator means for providing an interrupt signal to and receiving an acknowledge signal from the microcontroller if there has been any key switch activity; the microcontroller updating the RAM means responsive to the interrupt signal means for complementing all strobe lines except the strobe line that is asserted and for providing a signal to the microcontroller to indicate if a common key switch closure exists.
- 2. The scanner of claim 1 further comprising means responsive to the acknowledge signal from the microcontroller for restarting the counter means.
- 3. A keyboard scanning assist system for use with a personal computer, the personal computer including a microcontroller and a keyboard, the microcontroller responsive to an interrupt signal for ensuring that keyboard activity is acted upon, the assist system comprising:
- a logic circuit means for determining that keyboard activity has taken place which further comprises,
- random access memory (RAM) means, the RAM means being organized as a plurality of bytes of data and a plurality of corresponding addresses, each of the plurality of bytes of data corresponds to one of the plurality of sense lines and each of the plurality of addresses corresponds to one of the plurality of one strobe lines, the RAM means storing a data pattern of key closures;
- counter means for providing an address to the RAM means, the counter means also for sequentially incrementing and asserting each of the strobe lines, each time the counter means increments a strobe line, a new strobe line is asserted and a next sequential data byte is referenced;
- comparator means responsive to the counter means for comparing each data byte stored in the RAM means to a corresponding sense line state to determine if there has been at least one key closure change, a miscompare indicating that at least one key closure has changed as a result of key switch activity; and
- flip-flop means for providing an interrupt signal to and receiving an acknowledge signal from the microcontroller if any key switch has been pressed or released; the microcontroller updating the RAM means responsive to the interrupt signal means for complementing all strobe lines except the strobe line that is asserted and for providing a signal to the microcontroller to indicate if a common key switch closure exists.
- 4. The assist system of claim 3 further comprising:
- means for stopping the counter means when no keyboard activity is detected, wherein no power is dissipated by the hardware assisted keyboard scanner.
- 5. In combination with a personal computer, the personal computer including a microcontroller and a keyboard including a plurality of key switches, the keyboard further including a plurality of intersecting strobe lines and sense lines, a key switch connected between appropriate strobe and sense lines, a key closure electrically connecting a strobe line to a sense line, a hardware assisted keyboard scanner comprising:
- random access memory (RAM) means, the RAM means being organized as a plurality of bytes of data and a plurality of corresponding addresses, each of the plurality of bytes of data corresponds to one of the plurality of sense lines and each of the plurality of addresses corresponds to one of the plurality of strobe lines, the RAM means storing a data pattern of key closures;
- counter means for providing an address to the RAM means;
- decoder means coupled to the counter means for sequentially incrementing and asserting each of the strobe lines, each time the decoder means increments a strobe line, a new strobe line is asserted and a next sequential data byte is referenced;
- comparator means responsive to the counter means for comparing each data byte stored in the RAM means to a corresponding sense line state to determine if there has been at least one key closure change, a miscompare indicating that at least one key closure has changed as a result of key switch activity;
- flip-flop means responsive to the comparator means for providing an interrupt signal to and receiving an acknowledge signal from the microcontroller if any key switch has been pressed or released; the microcontroller updating the RAM means responsive to the interrupt signal; and
- means for complementing all strobe lines except the strobe line that is asserted and for providing a signal to the microcontroller to indicate if a common key switch closure exists.
Parent Case Info
This is a continuation of copending application Ser. No. 07/537,583 filed on Jun. 14, 1990, now abandoned.
US Referenced Citations (9)
Continuations (1)
|
Number |
Date |
Country |
Parent |
537583 |
Jun 1990 |
|