Electronic – use a line multiplexer as a level shifter as well

level-shiftinglogic-levelmultiplexer

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:

  1. Power the multiplexer with 3V VCC and hope it'll work with 5V inputs
  2. Throw in a level shifter / buffer before each multiplexer, something like 74LV245.
  3. 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?)
  4. 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?

Thanks!

Best Answer

Why not just use an open collector multiplexer powered by 5V and pulled up to 3, like the 74LS156?