JAJSFN6G September 2009 – June 2018 TCA8418
PRODUCTION DATA.
The TCA8418 has a 10-byte event FIFO, which stores any key presses or releases which have been configured to be added to the Key Event Table. All ROWs and COLs added to the keypad matrix via the KP_GPIO1-3 Registers will have any key pad events added to the FIFO. Any GPIs configured with a 1 in the GPI_EM1-3 Registers will also be part of the event FIFO.
When the host wishes to read the FIFO, the following procedure is recommended.
As an example, consider the following key presses.
Event # | Key (Decimal Value) | Press/Release |
---|---|---|
1 | 1 | Press |
2 | 32 | Press |
3 | 1 | Release |
4 | 32 | Release |
5 | 23 | Press |
6 | 23 | Release |
7 | 45 | Press |
8 | 41 | Press |
9 | 41 | Release |
10 | 45 | Release |
If this example key sequence occurs, then while performing the recommended read procedure listed above, the host would see the following information. Information at the top of the list is of an initial read to the KEY_LCK_EC[3:0] register.
KEY_LCK_EC[3:0] Value | KEY_EVENT_A Value (Binary/Hex) | Key (Decimal Value) | Press/Release |
---|---|---|---|
10 | N/A | N/A | N/A |
9 | 1 000 0001 (0x81) | 1 | Press |
8 | 1 010 0000 (0xA0) | 32 | Press |
7 | 0 000 0001 (0x01) | 1 | Release |
6 | 0 010 0000 (0x20) | 32 | Release |
5 | 1 001 0111 (0x97) | 23 | Press |
4 | 0 001 0111 (0x17) | 23 | Release |
3 | 1 010 1101 (0xAD) | 45 | Press |
2 | 1 010 1001 (0xA9) | 41 | Press |
1 | 0 010 1001 (0x29) | 41 | Release |
0 | 0 010 1101 (0x2D) | 45 | Release |