Electronic – arduino – Chain 16-channel analog multiplexer/demultiplexer

analogarduinomultiplexer

I'm trying to figure out how to chain six 74HC4067 or similar 16bit multiplexers.

My goal is to read multiple analog inputs one after another with Arduino.

I have only 1 analog pin input and 7 digital pin output, which is enough to address each input (2^7 = 128 > 6×16 = 96). So I need to figure out how to select each.

Simplest solution wins, please avoid using any shields or shift registers, keep it simple.

Best Answer

It sounds like you want to select one of 16*6=96 source signals. You will need to place the 6 mux/demux parts side by side to give you the total of 96 sources. The four selection pins on each of these six parts will be bussed in common to four GPIOs from your microcontroller.

Then you will need one more mux/demux part to select which one of the above six parts will be the single input to the microcontroller. Wire the output of each of the first six parts to the first six channels of the cascaded mux. The select pins of the cascaded mux go to more GPIO pins on your microcontroller. Only three of these mux select lines would be needed (with the fourth being grounded) because you are using less than half of the inputs of the cascaded mux.

Related Topic