I have 40 x 5V inputs that I want to read using 3V GPIO pins on the beaglebone black. I am planning on using 5 multiplexers (such as the 74HC151 or 74HC251) that will be sharing the 3 select lines.
I'm not sure what the best strategy for level shifting would be:
- Power the multiplexer with 3V VCC and hope it'll work with 5V inputs
- Throw in a level shifter / buffer before each multiplexer, something like 74LV245.
- Use a series resistor to limit current on each of the inputs since I just need unidirectional 5V->3V shifting (Yes, I know this won't change the voltage but perhaps it'll protect the multiplexer from the 5V signal by reducing current?)
- Is there a different multiplexer I should be looking at that will be tolerant of the different voltages?
I'm really hoping I can do (1). The datasheet says input voltage should be between GND and VCC. How bad will it be to power it with 3V and leave the inputs 5V?