but my question is, is it safe to connect an Arduino directly to this driver IC?
Are pins 5 and 6 (In1 and IN2) just like any other old logic IC that you can just control from the digital pins of an UNO because they're not directly connected to the motor and any of the EMF and such that motors can create?
By the datasheet I see that...
Input level
1 : 2.0V or greater
0 : 0.7V or less
As far as I can see the maximum input current on IN1 and IN2 is 15 micro amps. That is very comfortably within the Arduino's limits. Remember to connect GND to the Arduino GND.
I presume the motor supply voltage will be 5v or more.
Robin2:
As far as I can see the maximum input current on IN1 and IN2 is 15 micro amps. That is very comfortably within the Arduino's limits. Remember to connect GND to the Arduino GND.
I presume the motor supply voltage will be 5v or more.
...R
Yes, the motor will be powered form an external supply and the Arduino will only be for controlling the driver.
As with most beginners, datasheet reading is sometimes confusing
I see what you mean though.
Input threshold voltage Vth RL = ∞ min1.1, typ1.3, max1.5 V
Minimum input on-state current I IN RL = ∞ typ10, max15 μA
I remembered I had a motorized volume control from and old stereo so I hooked it up to one of the LB1641 drivers and made a crude little Arduino sketch to make it go in one direction for 6000, stop for 100 then it reverses, using DigitalWrites and delays because I don't know how to do it any other way yet
Here' a video http://1drv.ms/1BHDED5
dentaku:
made a crude little Arduino sketch to make it go in one direction for 6000, stop for 100 then it reverses, using DigitalWrites and delays because I don't know how to do it any other way yet
The demo several things at a time illustrates how to use millis() to manage timing instead of delay() which blocks the Arduino from doing anything else until the delay expires.
You can probably use analogWrite() on one of In1 or In2 to allow you to control the motor speed - the pin that should be HIGH.
Robin2:
The demo several things at a time illustrates how to use millis() to manage timing instead of delay() which blocks the Arduino from doing anything else until the delay expires.
You can probably use analogWrite() on one of In1 or In2 to allow you to control the motor speed - the pin that should be HIGH.
...R
Hey, I just tried using analogWrite() and it works. These LB1641 drivers seem to work with PWM just fine.
At analogWrite (255) the IN1 and IN2 pins read 2.6mA and at 127 my multimeter reads about 1.3mA.
Question: Is it OK to use digitalWrite and anaolgWrite on the same pin within the same sketch or is an output pin either an analog out or digital out throughout the entire time a sketch is running?