“GHOST” KEYS
In any scanned contact switch
matrix, whenever three keys
defining a rectangle on the switch
matrix are pressed at the same
time, a fourth key positioned on the
fourth corner of the rectangle is
sensed as being pressed. This is
known as the “ghost” or “phantom”
key problem.
Actual key presses
KEYBOARD SCANNER
The encoder scans a keyboard organized as an 8 row by 12 column matrix
for a maximum of 96 keys. Smaller size matrixes can also be
accommodated by simply leaving unused pins open. The UR5HCSPI
provides internal pull-ups for the Row input pins. When active, the encoder
selects one of the column lines (C0-C13) every 512 µS and then reads the
row data lines (R0-R7). A key closure is detected as a zero in the
corresponding position of the matrix.
A complete scan cycle for the entire keyboard takes approximately 9.2 mS.
Each key found pressed is debounced for a period of 20 mS. Once the key
is verified, the corresponding key code(s) are loaded into the transmit buffer
of the SPI communication channel.
“Ghost”
Key
Figure 1: “Ghost” or “Phantom” Key
Problem
Although the problem cannot be
totally eliminated without using
external hardware, there are
methods to neutralize its negative
effects for most practical
applications. Keys that are
intended to be used in
combinations should be placed in
the same row or column of the
matrix, whenever possible. Shift
Keys (Shift, Alt, Ctrl, Window)
should not reside in the same row
(or column) as any other keys. The
UR5HCSPI has built-in mechanisms
to detect the presence of “ghost”
keys.
N-KEY ROLLOVER
In this mode, the code(s) corresponding to each key press are transmitted
to the host system as soon as that key is debounced, independent of the
release of other keys.
When a key is released, the corresponding break code is transmitted to the
host system. There is no limitation to the number of keys that can be held
pressed at the same time. However, two or more key closures, occurring
within a time interval of less than 5mS, will set an error flag and will not be
processed. This feature is to protect against the effects of accidental key
presses.
Copyright Semtech 1997-2001
6
DOC5-SPI-DS-117
www.semtech.com