Driving Stepper motor using ULN2003a IC

armlpcxpressomicrocontroller

I tried connecting the GPIO1_0 pin of LPC1114 to the input pin 1 of the ULN2003a IC. And I connected a 9V supply to the COM pin of ULN2003a. For whatever the logic level at pin1 (i/p) of ULN2003a, its corresponding output is always 0.57V. The logic high of the MCU at the o/p gives around 3.1V. What is wrong here?

EDIT: I am trying to drive a stepper motor using the uln2003a as an interface to MCU. I haven't connected the motor yet. I want to make sure it will not burn the MCU. I figured out the common pin of the motor should be connected to the +ve power rail.

Stepper motor - uln2003 interfacing

  1. Is it safe to connect the MCU o/p pins to uln2003's input pins without any current limiting resistors between them?
  2. The Motor's rated voltage & current is 24V and 600mA. The ULN2003A can drive only 500mA. Is it safe to drive the motor at 9V with ULN2003a?

Best Answer

You need pull-up resistors on the outputs (or whatever load you want to drive).

Inside the ULN2003 there are darlington transistors with an open collector, so without some external circuit the output will not be pulled up to some higher voltage.

The COM pin is connected to a freewheeling diode for each transistor, so you can connect it to the positive rail to protect against overvoltage, for example for inductive loads.