... you would know how it performed key debouncing ...
Perhaps even a mux (or an encoder or decoder), the rows are the mux input and the Arduino selects which output will be connected to which input.
I would use the INH lines as well (so four Arduino port pins per 4051) to make them disappear from the scan lines when they were not actually generating a key press.
Quote from: SiriusHardware on Sep 20, 2013, 08:01 pmI would use the INH lines as well (so four Arduino port pins per 4051) to make them disappear from the scan lines when they were not actually generating a key press.Of course, that goes without saying, but the two inhibit/ enable lines are common; connected together, so seven lines overall.
What may be a concern, and the reason that I mentioned digital multiplexers/ demultiplexers may be more appropriate, is the nominal 250 ohm "on" resistance of each 4051 when operated at 5V.
If it's a 4x4 keypad, then you don't need all 8 ways of the 4051, you only need 4 ways. So you only need to drive 2 of the select lines of each 4051. Plus one of the inhibit pins (or both connected together) so that you also have the state of no key pressed. So you only need 5 Arduino pins in total.
The 74HC4051 (as distinct from the earlier CD4051) has an on-resistance of only 80 ohms typical @ 4.5V. Keypads also have some resistance because of the carbon contacts they typically use. So I don't think the resistance will be a problem.