Fork me on GitHub

Project Notes

#110 DiodeLogic/AND

Test the basic diode-logic AND gate


Diode logic was used extensively in early computers but is largely obsolete now, since it cannot isolate inputs or outputs without additional circuitry, and there will be at least a 1-diode voltage drop to deal with across the gate.

It is interesting to see how various logic gate may be realised with diodes (and resistors) alone. Here is the basic AND gate.

Output is high only when all the inputs are high:

0 0 0
0 1 0
1 0 0
1 1 1

In this circuit with VCC of 5V and where Vf is the diode forward voltage of approx. 0.7V, Vr2 is the voltage drop across R2:

  • Out logical “0” == Vf ~> 0.7V
  • Out logical “1” == VCC - Vr2 ~> 3.4V

Note that with a normally-open switch, it engages logical “0” when closed, and logical “1” when open .. so the switch behaviour may appear inverse (more like a NOR gate) to the actual electrical behaviour. This apparently contradictory behaviour is resolved if a normally-closed switch is used.

The Arduino is not a core part of the circuit. It only does the following:

  • provides +5V power supply (for convenience)
  • measures the input and output voltages for plotting. It uses the PlotNValues sketch for this purpose.

Here’s a sample trace. The upper trace is the output, the lower traces the inputs.

processing trace



The Schematic

The Build

Credits and References

About LEAP#110 DiodeLogic Gates
Project Source on GitHub Project Gallery Return to the LEAP Catalog

This page is a web-friendly rendering of my project notes shared in the LEAP GitHub repository.

LEAP is my personal collection of electronics projects, usually involving an Arduino or other microprocessor in one way or another. Some are full-blown projects, while many are trivial breadboard experiments, intended to learn and explore something interesting (IMHO!).

The projects are usually inspired by things found wild on the net, or ideas from the sources such as:

Feel free to borrow liberally, and if you spot any issues do let me know. See the individual projects for credits where due. There are even now a few projects contributed by others - send your own over in a pull request if you would also like to add to this collection.