# Discrete logic multiplexer

I posted a more in-depth outline of what I'm doing here, but basically I'm building this circuit (for n=3): The circuit displays an output based on the combination of three three-input DIP switches. One LED is displayed at a time so rapidly that it looks like they're all lit simultaneously.

I've designed the transistor digit drivers to light up each display for a logic 0 and do nothing for logic 1. I have to build a multiplexer out of 7403 open-collector NAND gates. The way I understand it, the digit driver communicates to the multiplexer which three bits to activate on the bus; so there needs to be some logic implemented. I imagine that I have to construct a truth table or K-map and determine the logic based on that. But how do I determine the logic?

Based on the counter rate, the digit drivers turn the displays on and off, so do I want logic that will make the output of each digit 1 when the digit driver is 0, and the output 0 when the digit driver is 1?

I believe the multiplexer should be something like this (I didn't see a symbol for open-collector NAND gates, but imagine they are with a pull-up resistor on each output): simulate this circuit – Schematic created using CircuitLab

So I would have one of these for digits 0, 1, and 2; three in total.

Edit: Still trying to figure this out. I think I understand how to do it with an actual multiplexer IC; For each digit, all of the corresponding bits act as inputs and the output is determined by the control/enable input. Then I could implement some logic between the digit drivers and the MUX. However, here I think the goal is to form a control tied to the NAND gate inputs for each digit and use logic to have it perform the function of a multiplexer.

• You can either use a multiplexer IC as you pointed out but you can also use OC/OD gates for wired-or (7403) or tri-state gates (74125) – Alexxx Mar 2 '15 at 15:26
• I know I wish I could, but this is an exercise for a school project and I have to do it this way – JGill Mar 2 '15 at 16:02