ZHCS290G September 2009 – June 2018 TCA8418
PRODUCTION DATA.
The TCA8418 supports multiple key presses accurately. Applications requiring three-key combinations (such as <Ctrl><Alt><Del>, or any other combinations) must ensure that the three keys are wired in appropriate key positions to avoid ghosting (or appearing like a 4th key has been pressed).
To avoid ghosting, it is best to keep 3-button combinations that are pressed on separate rows and columns. Consider the situation with the keypad described in Figure 26.
In the keypad setup in Figure 26, there is a 4x3 keypad matrix, connected to ROW0-ROW3, and COL0-COL2. All of the ROWs are configured as inputs with pullup resistors. The COLs are configured as outputs, driving low. When a key press is made, one of the ROW inputs will be pulled low, letting the TCA8418 know that a key has been pressed, and the TCA8418 will then start the key scanning algorithm. During this algorithm, It sweeps the output low across the columns, such that only 1 column is driven low at a time. While this is done to each column, the TCA8418 will read the ROW inputs, to determine which keys on a column are being pressed.
Ghosting can occur when multiple keys are pressed that can make it appear that additional keys (which are not being pressed) are being pressed.
In Figure 27, keys 1, 2, and 11 are pressed, which causes a ghosting issue. Since R1 becomes pulled to ground through key 1 (which is pulled through key 2 when C1 is transmitting a low), when C1 is driving low, the TCA8418 will see a low signal at both R0 and R1. This will falsely trigger key 12 as being pressed (the key highlighted as yellow).
The reason for this is that keypad matrices will short the columns to the rows connected together. When C1 is driving low, the low gets transmitted onto R0 via key 2. Key 1 is being pressed, which also shorts C0 to ground. Key 11 is pressed, which then shorts R1 to C0. In this process, R1 is shorted to C1, which is the reason ghosting occurs.
Keypad matrices can support multiple key presses properly, if care is taken when choosing the layout. In Figure 28, we see a 3 button combination which work as expected. Keys 1, 11, and 21 are pressed (this also is the combination that will set the <Ctrl><Alt><Del> interrupt, see Control-Alt-Delete Support for more information).