hi BC,
These are AAC worksheets
https://www.allaboutcircuits.com/worksheets/
Also Articles are available.
E
These are AAC worksheets
https://www.allaboutcircuits.com/worksheets/
Also Articles are available.
E
Are you sure about that? I thought most Arduinos could drive 20mA through any individual pin safely, with higher peak currents possible. The output impedance of the Arduino pin would have to be very, very high to end up with 1.5V across a 2.7k resistor/darlington input.(this pin is connected to B+ through a "pull-up" resistor). When it's high and with no load connected this pin, it will read the 5VDC. Dependent upon the load impedance this "pull-up" resistor will create a voltage divider. I
Hello,To address the issue with the Darlington driven by the Arduino.
I suspect this will help explain your findings. The Arduino output (pin 13) is either low (the MCU shorts this pin to GND internally) or high (this pin is connected to B+ through a "pull-up" resistor). When it's high and with no load connected this pin, it will read the 5VDC. Dependent upon the load impedance this "pull-up" resistor will create a voltage divider. I suspect the input impedance of the ULN2003 is quite low causing the measured voltage to be substantially reduced.
One question, why are you connecting the output of the Darlington IC (pin 16) to pin 10 and the LED? Is this just a Fritzing error?
I can't see the part number on the chip in the original pics. I wonder if it's a ULN2001 instead of ULN2003. With no current limiting resistor, the voltage at the input pin would be roughly equivalent two diode Vf drops, right? That would almost explain the ~1.5V reading...hi,
This clip from the ULN d/s shows the various configurations, easy to calc the input impedance.
E
View attachment 153578
Hi,I can't see the part number on the chip in the original pics. I wonder if it's a ULN2001 instead of ULN2003. With no current limiting resistor, the voltage at the input pin would be roughly equivalent two diode Vf drops, right? That would almost explain the ~1.5V reading...
EDIT: Disregard all the comments I originally posted below. I just re-read the original post, including the bit where connecting a 5V supply (instead of the Arduino output pin) to the ULN2003 input makes all the readings behave as expected. This negates most of my previous ideas. I should've read more carefully before posting!Hi,
The part number I have used is ULN2003APG. I shall try putting a resistor ...
Ok, so I still don't think that an Arduino "output" uses a pullup resistor to provide its logic high output the way you've described, but this is what an Arduino input does. If the pin is set as input, using digitalWrite( [pin#], HIGH) will set the internal pullup on, and using digitalWrite( [pin#], LOW) will turn the internal pullup off.To address the issue with the Darlington driven by the Arduino.
I suspect this will help explain your findings. The Arduino output (pin 13) is either low (the MCU shorts this pin to GND internally) or high (this pin is connected to B+ through a "pull-up" resistor). When it's high and with no load connected this pin, it will read the 5VDC. Dependent upon the load impedance this "pull-up" resistor will create a voltage divider. I suspect the input impedance of the ULN2003 is quite low causing the measured voltage to be substantially reduced.
One question, why are you connecting the output of the Darlington IC (pin 16) to pin 10 and the LED? Is this just a Fritzing error?
Hello ebeuwolf17,Ok, so I still don't think that an Arduino "output" uses a pullup resistor to provide its logic high output the way you've described, but this is what an Arduino input does. If the pin is set as input, using digitalWrite( [pin#], HIGH) will set the internal pullup on, and using digitalWrite( [pin#], LOW) will turn the internal pullup off.
So if the thread starter's sketch never sets the pin as an output, then the pin behavior would be exactly as you've described. All we need is to call "pinMode([pin#], OUTPUT);" in the setup portion of the sketch, and then you'll have low-impedance outputs.
@BC547, if everything I just said makes sense to you, see if you're setting the pin as an output or not. If you're not already setting it, add the line to set it as an output and test your voltages again. If you're not sure, or can't get it to work, post your code here and I'll take a look at it. (You can copy and paste code into a reply here, but please use the code brackets, which are accessible from the plus sign above your comment box, to format the code separately from the body of the text.)
Thanks. The code looks good. The only other thought I have is that the pin might be somehow defective or damaged. Have you tried other pins?Hello ebeuwolf17,
I have posted my code above.
Thanks
by Aaron Carman
by Duane Benson
by Jake Hertz