Amperage and Resistance conceptual hardware question

Hi everybody, this is my first post on the Arduino forum! :)

I have a few conceptual questions about amperage and resistance for the Uno board. Warning, i'm a budding electrical engineering student, so I don't know everything there is to know about circuit boards and programming.

Will the Arduino Uno always output a current (i) of 20mA (0.02A) no matter what? I remember reading either on the fourm or in Getting Started with Arduino book that the current should be at 20mA. But will that current ever change? How will I know when it does? How do I change it? Why would I change it?

Also, I know that v = i *r or voltage equals amperage by resistance. I see that there are two pin slots for a 3.3V and 5.0V. Since these voltages are on my board does this mean the highest resistance i'll ever need no matter what circuit I build with my Uno is 165ohms and 250ohms, or the resistance that is just above those values?

I also see that the capacitors on my board say they're at 16v. Do I need to factor in these two capacitors when i'm designing a circuit? Is there a general way to go about doing that?

Thank you for answering my many questions!

The 20mA is the maximum that should be passed in or out of a port. The actual current depends on the R used. If you use a LED straight off the output, it will draw far more current than is safe. Using a series R of 270 ohms limits it to a safe level. Using a 1k R will reduce the current to a low level but the brightness is much less.

The capacitors could just as well be 100v, it is simply the highest voltage they can withstand.

Regarding the maximum R, no. There are other circumstances where other values may be required. EG, a base R for a transistor may need to be 10k.



i'm a budding electrical engineering student

I know you are a student, but how long have you been studying electrical engineering?

Tom.... :)

Also, I know that v = i *r or voltage equals amperage by resistance.

In the real/practical world, most electronics is "constant voltage".

Now, that doesn't mean the output voltage doesn't change. Obviously, the Arudino output can switch between zero an 5V. But, when the output is high it remains (approximately) 5V as long as the Arduino is operated within it's specs. So the current (when the output is high) depends on the load resistance (or impedance).

If the load resistance is too low, you'll exceed the Arduino's rated current and the output voltage will drop, and the Arduino might burn-up. Ohm's Law is ALWAYS TRUE* so if the circuit can't supply the calculated current, the voltage must drop.

In most circuits, current depends on voltage and resistance.

The power line voltage in your home is (approximately) constant at 120VAC or 240VAC and the current depends on what's plugged-in. Again if you draw too much current, the voltage drops and you blow a breaker.

The output of an audio amplifier is also constantly changing depending on the audio signal and the volume control, but since changing the load impedance doesn't change the signal (or doesn't change much) it's also considered a "constant voltage" device. If you switch from an 8 Ohm speaker to a 4 Ohm speaker, or if you add a 2nd 8 Ohm speaker in parallel, you'll double the current output and double the output power (if the amplifier is capable of driving the lower impedance load).

There are "constant current" power supplies used for high-power LEDs. In this case, the voltage changes to meet the required current, depending on the load (within the circuit's specs).

  • Ohm's Law is true for any instant in time. When you study AC circuits, you'll learn that sometimes voltage and current can be out of phase and this can make it tricky to apply Ohm's Law.