Some confusion is perhaps due to the fact that A,B,C,D appear on the keypad as well. These are just labels. You could have had "a","b","c","d" written on the keys.
- Beware that the ..923 version has 20 pins.
For the 922 part:
- pins 1,2,3,4 are Y1,Y2,Y3,Y4 respectively in the block diagram below: i.e. rows
- pins 10,11,8,7 are X1, X2, X3, X4: i.e. column scans
- Data Available is to interrupt the uC if desired.
- Output Enable tristates these outputs, if you want to accomodate multiple devices on the same port.
- The outputs A,B,C,D will change depending on what button is pressed, These go from 0000 to 1111, depending on the key pressed. Check the datasheet for this chip.
Let's say button 1 on the block diagram (not your figure) below is pressed. Its location is X2-Y1 on the matrix. If we scan that column output, i.e. make it 0 (since it is active low), then the current will go from Vcc through the INTERNAL pullup connected to Y1 and to ground through the column decoder. Hence Y1 will be at 0V and we can determine that the button is pressed at X2Y1. The ABCD output will be 1000 as the manufacturer has assigned it this way. Never assume any regular pattern or "natural" pattern for key assignments without consulting the datasheet.
This scan proceeds automatically, and whenever a keypress happens, you can interrupt the uC and provide it with data read from the ABCD lines. In the absence of this type of chip, all this functionality has to be provided using an interrupt to scan the key matrix.
