Introduction: Running LEDs With 555, 74163, 74138 and 74240

I wanted to make a quick project with a 555 timer and see if I could use it as a clock for some running LEDs using the 74 series ICs. This would of course be a perfect arduino project, but it is also nice to know how to do this without any programming.

TTL ICs from the 74 series are easy to pull out of old equipment. Often they are in sockets and can just be pulled out of old boards.
Wikipedia has a list and links to many descriptions of what they do:

We got a few from Jameco and from old parts/boards. This project was put together on a buildnight at HackBergen.

Parts used:
- 3 pcs breadboards - could have used 2, but it is nice to have extra room to make sure everything is connected right.
- 9V battery
- 555 IC
- 74163 IC
- 74138 IC
- 74240 IC
- 2 pcs DIL 330 ohm x 8 resistor array  - or use normal resistors. A DIP like this makes it easier to avoid short circuits caused by long resistor legs.
- 12 LEDs
- Lots of wires from an old phone cable
- 7805 regulator
- 0.47uF Capasitor
- 0.01uF Capasitor
- Piezo buzzer
- 10K resistor
- 220K log potmeter - I just used one I had, that was easy to adjust. This could preferably be lin instead of log.

Tools used:
- Knipex wire stripper - Very nice tool when you got lots of wire to strip
- Capacitance Meters - Finding the right capasitors from old equipment can be difficult, as the writing on them is not always clear or existing. We used this one, which was very good at it:

This projects was documented using Fritzing. The file is available in this zip archive:

Step 1: 9Volt Battery to 5Volt Conversion With 7805

TTL is very reliant on 5V powersupplies, so we have to convert the 9V down to 5V. A 7805 is perfect for this and is very easy to connect. In a circuit that is meant to be soldered and used, we would need more components (capasitors on in and out), but this is just a breadboard test configuration.

Schematics 7805:

Step 2: 555 Astabile Multivibrator

The 555 is connected like this, so it never rests, but makes a stream of pulses controlled by the user operated resistor (potmeter)..
Check the diagram for a better understanding of the circuit.
We just pulled the potmeter to adjust to a frequency that seemed ok for the lights to run at a decent rate.

Schematics 555:

Step 3: 74163 Binary Counter

This binary counter has 4 outputs. We only need 3 to the next stage, but connected the LED anyways.. More light = more fun.. :)

Always connect the power supply first to make sure you remember - on 74 IC that is usually 5V to the top left pin (here #16) and ground to bottom right (here #8)

To get the 74163 counting, you have to set pin #1,  #7 & #9 to 5V, and insert the clock from the 555 IC on pin #2

Schematics 74163:

I used only half of a DIL 330 ohm x 8 resistor array. If you do not have a package like this, use normal resistors.
Some info here:

Step 4: 74138 3to8 Decoder With 74240 Inverter/driver

Making the 74138 convert is dependent on connecting GND to pin #4 & 5, and 5V to pin #6.
Then the 3 wires with the bits to pin #1, #2 & #3

Schematics 74138:

The 74240 can be somewhat difficult to connect, but be systematic and follow my colored wires. Remember to connect GND to pin #1 & #19, else the output is not enabled.

Schematics 74240:

Connect the battery, adjust the potmeter and if all is connected right: we have a runner!


twolf8 made it! (author)2016-03-30

I think there is an error on your diagrams for the 74hc163 subsection. I could not get this to work until I changed PIN 10 (CET) to High. Then it worked as advertised. I used the diagram from this site to trouble shoot.

zerblatt007 (author)twolf82017-03-14

Great! I was using the TTL version of the counter, so the CMOS version could behave a little different especially when floating.

Good thing you found the fault on yours.. :)

About This Instructable




More by zerblatt007:Raspberry Pi 2 DIY LED LAN device counterNeoPixel Clock with SparkCore Internet Button ShieldDIY slim NeoPixel strip with Spark Core
Add instructable to: