# Having problem in interfacing of bipolar stepper motor with 8051 using uln2003a

#### bobparihar

Joined Jul 31, 2014
93
i am interfacing bipolar stepper motor with 8051 using uln2003a

here is the code and circuit diagram on proteus

Rich (BB code):
#include<reg51.h>
void main()
{
unsigned int i;

while(1)
{

P2=0x0C;     //00001100
for(i=0;i<40000;i++);  // delay
P2=0x06;                   // 00000110
for(i=0;i<40000;i++);
P2=0x03;                   // // 00000011
for(i=0;i<40000;i++);
P2=0x09;                  //  00001001
for(i=0;i<40000;i++);
}
}

can't simulate on proteus.. circuit diagram is in the attached file..plzz help

#### Attachments

• 95.1 KB Views: 81
Last edited by a moderator:

#### timwhite

Joined Apr 10, 2014
50
Perhaps those wait times are too short? Otherwise perhaps there's some sort of niche for that software where you have to have something wired up, like the crystal?

#### absf

Joined Dec 29, 2010
1,949
The ULN2003A can only supply "GND" to the stepper motor but not V+. If you use the 4 wire stepper, it will not work. To drive 4W stepper motor you need some kind of H-bridge driver like L293D.

Here is a sample provided by Lab Centre in proteus how to drive a stepper motor using ULN2003A.

Allen

#### Attachments

• 189.1 KB Views: 85

#### bobparihar

Joined Jul 31, 2014
93
Perhaps those wait times are too short? Otherwise perhaps there's some sort of niche for that software where you have to have something wired up, like the crystal?
sir i did the same program with the unipolar stepper motor and that works fine on the same Proteus software

#### bobparihar

Joined Jul 31, 2014
93
The ULN2003A can only supply "GND" to the stepper motor but not V+. If you use the 4 wire stepper, it will not work. To drive 4W stepper motor you need some kind of H-bridge driver like L293D.

Here is a sample provided by Lab Centre in proteus how to drive a stepper motor using ULN2003A.

Allen
sir the sample provided here is for unipolar stepper motor(6 wire) , but i want to use a four wire bipolar stepper motor

#### timwhite

Joined Apr 10, 2014
50
Given that on your schematic the stepper only has 4 wires, I have to assume it's a bipolar one. These are a pain to drive with ULN2003 (or ULN2803 or other Darlington arrays) because the chips are designed to sink current and you need to be able to send both high and low voltages to each of the four wires.

You'd normally use H-bridge ICs to drive a bipolar stepper but if you are absolutely set on using ULN2003, you can float the wires off of a motor supply voltage on power resistors (and they will get really hot) and then sink with ULN if you need low voltage or let go if you need high.

#### ligo.george

Joined Feb 2, 2013
19
Interfacing Stepper Motor with 8051 Microcontroller
It contains interfacing of bipolar, unipolar stepper motor and different kinds of drives..

Use separate power supplies for microcontroller and stepper motor.. Otherwise microcontroller may get reset due to ripples produced by stepper motor.. or use proper filtering capacitors..

#### bobparihar

Joined Jul 31, 2014
93
Interfacing Stepper Motor with 8051 Microcontroller
It contains interfacing of bipolar, unipolar stepper motor and different kinds of drives..

Use separate power supplies for microcontroller and stepper motor.. Otherwise microcontroller may get reset due to ripples produced by stepper motor.. or use proper filtering capacitors..
should i also have to use seprate ground for the stepper motor driving ic(ULN or L293D) and the microcontroller??

last time when i did make the ground common for both ULN and Microcontroller the axle rotate a single step forward then a single step backward and so on.. back and forth
but it does not rotates fully clockwise or anticlockwise

#### ligo.george

Joined Feb 2, 2013
19
USE common ground for all,,, use separate power supply for motor and microcontroller.. but common ground..