Introduction: Using 556 Timer to Drive a Stepper Motor

About: I have an Associate degree in Electronics Technology from Joliet Junior College . I have worked as an electronic technician in telecommunications and at Commonwealth Edison .Presently ,I enjoy electronics as …

This Instructable will explain how a 556 timer can drive a stepper motor .There is No Code needed for this circuit .

Step 1: The 556 Timer

The 556 timer is a dual version of the 555 timer. (see image)

In other words, there are two 555 timers operating separately. The two timers operate independently of each other. They use the same voltage source and ground

Each Timer is provided with its own threshold, trigger, discharge, control, reset and output pins. The 556 can be used as a pulse generator which uses the two separate 555 timers. The pulse generators will drive the stepper motor along with the rest of the circuit.

Step 2: Applications of the 556 Timer

The applications of the 556 timer is very similar to the 555 timer .

It could be used to generate pulses.It can be used for industrial circuits.

It also can be used in alarm circuits .

I have written 2 Instructables about stepper motors .Please refer to them about details of the stepper motor .

Step 3: The Part List

Parts list; 556 timer

with a stepper motor;

1 Stepper motor

1 Arduino uno 3


2- 0.01uf Capacitors

2- 10 uf electrolytic capacitors

1;-556 timer

4 -1 k resistors (brown, black .,red)

2- 5k resistors (green,black ,red)

2-10 k resisitros (brown,black,orange)

1 -2k resistor –red,brown,red)

1 -25k resistor ( red,green,red)

1 – 9 volt battery

How the circuit is set up;

Set up of circuit

Each 0.01uf capacitor goes to control pin ; either pin 3 or 11

2 -1 k resistors go to discharge pins 1 and 13 and positive rail of breadboard

2 -5 k resistors go to output pins 5 and 9 and positive rail of the breadboard

Connect Threshold A ( pin 2 ) to TriggerA (pin6 )

Connect Threshold B( pin 12 ) to TriggerB (pin 8 )

Connect the 10 uf capacitor to ground and to the 10k resistors on bottom side

Connect the 10 uf capacitor to ground and to the 10k resistors on top side

Connect 2k resistor to pin 1(discharge) and to 10k resistor (as shown in diagram)

Connect 25k resistor to pin 13(discharge) and to the upper 10 k resistor

Connect 1 k resistor to the output A ( pin 5)

Connect 1 k resistor to output B (pin 9)

Connect 9 volt battery to motor positive and negative as shown in diagram

Connect channel A and B to output resistors 1 k as shown in diagram

Connect stepper motor encoder ground to ground

Connect Arduino 5 volt and negative leads and jumpers positive and negative to the breadboard rails

Connect ground to pin7

Recheck circuit so all is connected

Step 4: The Circuit ;How It Works

The circuit is simple .The 556 timer have 2 outputs.

The outputs are pulses which are connected to the stepper motor .

The 9 volt battery is included to provide more voltage to the stepper motor. .

The Arduino provides voltage to the 556 timer and stepper motor too.

If you look closely at the image the stepper motor is going 116 rpm .(the Maximum speed this stepper motor can go is 165rpms .)

There are other speeds that the stepper motor could go ,but I chose this speed (165 rpms)

Step 5: Conclusion .

This Instructables shows how a 556 timer can drive a stepper motor .

I tried not to get too technical and avoided a lot of theory .

Of course, if you would like more theory there is a lot of information on the Internet or you could look it up in your electronics books .

I designed this on Tinkercad . I tested it and it works .

I hope this helps you understand 556 timers and how it can drive a stepper motor .Thank you