How to control Stepper Motor using AT89C51 Microcontroller

Jan 2, 2013 by


As explained in earlier article, Stepper motor is operated by energizing the stator coils in an ordered sequence. When the input sequence of signal is applied to the motor leads, it starts rotating in steps.
AT89C51 microcontroller has a current rating of 50mA. It can neither source nor sink huge current. ULN2003 is high voltage and high current Darlington array IC. Each input-output pair in ULN2003 acts as an interface between the end points of the stepper motor and port pins of the microcontroller.
How to control Stepper Motor2 How to control Stepper Motor using AT89C51 Microcontroller
Port P2 of AT89C51 is configured as the output port to provide input sequence to four input pins of ULN2003. The output of ULN2003 accordingly helps in driving the motor.
To work with the unipolar stepper motor, the common points are connected to either Ground or Vcc and the end points of both the phases are usually connected through the port pins of a microcontroller. In present case the common (Green) wires are connected to Vcc. The end points receive the control signals as per the controller’s output in a particular sequence to drive the motor.
How to control Stepper Motor How to control Stepper Motor using AT89C51 Microcontroller
Since the coils related to each phase are arranged in alternate manner, the end points of two phases are energized in alternate fashion to rotate the motor. This means that the voltage signal should be applied to first end point of Phase1 and then to the first end point of the Phase2 and so on.

This free embedded project also found using:

  • speed control of stepper motor using microcontroller
  • stepper motor inter facing with 8051mc
  • stepper motor interfacing 8051
  • stepper motor interfacing with 8051 microcontroller

Leave a Comment

You must be logged in to post a comment.

Recent Posts

Thermistor Respiratory Monitor Using Atmega1284

Thermistor Respiratory Monitor Using Atmega1284

Our final project for ECE 4760 is a respiratory monitor that was designed for low-resource environme[...]
Glove Mouse Using Atmega1284

Glove Mouse Using Atmega1284

For our ECE 4760 final project, we designed and built a wireless computer pointing device with accel[...]
Hand-Motion Chess Using Atmega1284

Hand-Motion Chess Using Atmega1284

An Introduction "A glove embedded with accelerometers to play a hand motion-controlled chess ga[...]
Color to Sound Player Using Atmega1284

Color to Sound Player Using Atmega1284

Introduction We created a device that determines the RGB content of a surface and then speaks the c[...]
Multi-functional Music Box Using Atmega1284

Multi-functional Music Box Using Atmega1284

Our final project is to build a multifunctional music box. This music box can generate different son[...]

Read more:
Stepper Motor Indexer & Decoder ECE 476 Using ATmega32
Close