I have found a lot of ways how to drive stepper motors with arduino. The method using the l293d ic is a good one for my project. The only thing i dont understand here is why in this case no current limiting resistors are needed for protection of the arduino board. What limits the current of the digital outputs if there arent any resistors present? Does the IC L293D have somekind of internal resistor for limiting the input current from the arduino? I would really like to understand this so that i wount have any fear that i will destroy my arduino.
this is the circuit diagram/picture i dont understand...
Thanks for all the anwsers.
What limits the current of the digital outputs if there arent any resistors present? Does the IC L293D have somekind of internal resistor for limiting the input current from the arduino? I would really like to understand this so that i wount have any fear that i will destroy my arduino.
The L293D does not draw very much current from the Arduino. The Arduino does not drive the motors directly. That's why the L293D is needed: it draws very little current from the Arduino, yet it can supply "large" currents to the motors.
In your diagram I think there are some things missing. The Battery 12V is not connected to anything, and the L293D needs to have 5V connected to pin 16 (from the Arduino). The Battery 12V should go to the L293D pin 8 if you want to drive your motors with 12V. You can also connect this 12V to the Vin pin of your Arduino to power it.
Finally, you will also need to connect pins 1 and 9 of the L293D to control outputs from your Arduino. These can either be used to turn the motors on and off fully (high/low) or using analogWrite() you can use PWM to control motor speed/power.
The Rugged Motor Driver: two H-bridges, more power than an L298, fully protected
Thank you for the anwser. I found this picture on the internet so sorry for the faulty design. The problem was that I was afraid to destroy the board if i would let too much current flow through the outputs of the arduino. So if the motor driver draws a low amount of current from the arduino there is no need for me to add any resistors.
Is the same thing going on when using the uln2004 darlington array. Is there any need to add resistors for protection?
Formally, there is no NEED to add resistors in either case but it’s not a bad idea. Just in case you miswire, or the motor driver chip becomes damaged, etc. then the resistors will help limit the current in/out of the Arduino.
I’d put some 470 ohm resistors in series with each Arduino pin.
Beat707: MIDI drum machine / sequencer / groove-box for Arduino