1. In a simple battery+resistor circuit with a fixed voltage, the resistance of a series resistor determines the current flowing through it. But what happens if this resistor is placed between two ICs? (for eg a microcontroller and a motor driver IC - specifically an Arduino and an L293B).
  2. Can the current through the resistor be lower than the calculated value for the resistor and the voltage of the circuit (regulated 5V)? (Example: a 1K resistor would allow through 5mA of current in a simple 5V circuit, but what happens if it is placed between two ICs which use a lower level of current for communication, like 1mA or less?)
  3. Does the resistor have any effect if currents are lower than the current calculated for the given voltage level? Is there any power dissipation (wasted energy) when a resistor is in the path of a current lower than the resistor’s current calculated from voltage?
  4. Finally, is it generally a good idea to place resistors between an IC output and input (for the purpose of protecting the microcontroller's output from sourcing too much current)?
  • \$\begingroup\$ Thanks for everyone for the excellent answers. Each answer is different, but I'm getting the picture from the total input. One practical consideration that no one has explicitly mentioned, because it seems so obvious, that the series resistor will lower the voltage on the input. I add this, because it was not at first obvious to me, and there might be other noobs like me out there. To summarize: 1. Series resistors are theoretically not needed due to hi-Z. 2. Could be a good idea for foolproofing. 3. Values to be low, under 1K. 4. Power dissipation is low. Thanks again! \$\endgroup\$ Commented Nov 7, 2014 at 18:51

4 Answers 4


Many digital inputs are already high impedance, so will only consume in the micro -> milliamps range from a direct connection between the output of a digital device (microcontroller for instance) and the input of another device. Some devices like older transistor (not CMOS style) inputs will consume many times more current to get the same job done. Either way, generally, connections between ICs )unless they are some kind of special output/input with low input impedance) do not need series resistors.

Always check datasheets for typical input current. If you are designing a rugged and durable device which may be used by "fools" then it's a good idea to put limiting series resistors on all digital outputs except for high speed communications lines which should be reasonably isolated from fools anyway.

Digital inputs are by nature high impedance so other than over/negative-voltage, you do not have to protect them too much. The protection needed for these can be done with external clamping diodes, and/or high resistance value resistors (much higher than the output resistors, because the tiny internal clamping protection diodes in CMOS digital devices are often very very low power rated) in series with the input to limit current to the internal diodes if they are present.

Digital ICs like logic gates can have their outputs connected directly to the inputs of other gates, without the need of resistors.

The L293 series are very old though, and their inputs are shown as equivalent circuits in the datasheets as transistor base connections. This means they could actually sink quite a lot of current from your output pins - which can also provide similar amounts of current, but this is not good for the output port nor the overall power rating of your MCU depending on the package and thermal design. Looking further at the datasheet though, typical input current consumption for the logic inputs and the EN pins are only 0.2 microamps and that's with VCC = 7V.


  1. The series resistor will limit the current which would already flow between the two ICs.

  2. Yes, but the input impedance of the destination is already having an effect. If the connection between the two during a logic HIGH only consumes 500uA without a resistor, with 5V, then the resistance can be estimated as R = V/I , R = 10K Ohms. Adding more resistance will just lower the current, and "add" to the total loop resistance to ground. Depending on what the end device is though, series resistors can act as voltage dividers and may influence the ability for the target to read the level correctly, but this will not be common.

  3. The resistor will lower the current and reduce overall power, you will most likely reduce the power more than waste it.

  4. referring to my earlier rant in the wall of text above, yes for safer designs it's common to place lowish (330ohm - 1k ohm) value resistors in series with all outputs, and for inputs (especially ADC) to have clamping and basic R-C filters included. The MCU development board reference design provided with Design Spark PCB program shows heavy use of protection on the MCU's output/input/ADC pins.


By Ohm's law: \$I=\frac{V}{R}\$, the current flow in circuit always determined by the source voltage and the impedance of the circuit. So, even when you put the resistor between two IC, it should obey the Ohm's law. There should one IC used as a "driver" and one IC used as a "receiver", and the "driver" should have output impedance, and your "receiver" should have input impedance, so the total resistance should be: $$ R_{total}=R_{limit}+R_{out}+R_{in} $$

And the current flow in your current limit resistor should be

$$ I=\frac{V_{S}}{R_{total}} $$


  1. What happens if this resistor is placed between two ICs?: The resistor will limit the current flow in your IC to IC connections. When without current limit resistor$$ I=\frac{V_{S}}{R_{out}+R_{in}}$$When with current limit resistor$$I=\frac{V_{S}}{R_{total}} $$

  2. Can the current through the resistor be lower than the calculated value for the resistor and the voltage of the circuit (regulated 5V)?: Yes, when you put your resistor between two IC, unless the two IC are driven by current source, the current flow in your resistor should be less than barely power one resistor, with same power supply. And the current should less than when using same power supply to barely power two IC.

  3. Does the resistor have any effect if currents are lower than the current calculated for the given voltage level? : Normally, the current with current limit resistor should always less than \$I=\frac{V_{S}}{R_{limit}}\$, because your IC's output impedance and input impedance. The resistor does "effective", because it limit the maximum current can flow between your two ICs, with current limit resistor, the max current now is \$I_{max}=\frac{V_{s}}{R_{limit}}\$.

  4. Is it generally a good idea to place resistors between an IC output and input (for the purpose of protecting the microcontroller's output from sourcing too much current)?: Maybe or may not be. From the point of over current protecting, it maybe a good idea. But the purpose of connection between IC is to transfer electrical signal, the series resistor may affect the electrical signal transformation, such as rising/falling time, propagation delay, etc. So always use current limit resistor when necessary. The rule is not to affect the normal working of your circuit.

  1. If a resistor is placed between an output (low impedance) and an input (high impedance) and the resistor is much lower than the input impedance then it will have little effect on the current. Say the output impedance is 100 ohms, you add 1K resistor in series and the input impedance is 10K, the total resistance is 11100 ohms, which is only 10% higher than 10.1K.

  2. In the case mentioned above, the current will be mostly determined by the highest resistance- which will be the input. If the voltage is 5V, the current will be 495uA or 450uA. Not much different, and a lot less than 5000uA you'd get with just 1K.

  3. They're only signal levels so wasted energy is not really a factor.

  4. Usually microcontroller outputs can withstand a short circuit for at least some time under typical conditions (eg. room temperature nominal supply voltage etc.). You don't need worry too much if everything is running off the same supply. The main reason (IMHO) to use resistors in the application you cite would be to provide some ability for the micro to survive if the L293B input somehow got shorted to the motor supply bus. Typically that would instantly kill the micro. With a resistor there's a much better chance for survival. Sometimes adding small (tens of ohms) series resistors (even on a single circuit board) between high speed CMOS outputs and inputs can improve the waveform and reduce high-frequency ringing that can screw up clocking.


Yes less current can flow than your calculated 5V / 1K. Current flows in a loop so if you already have a loop where 1ma is flowing, when you add a resistor into the loop your current will go lower because of the added resistance. Think in terms of a loop.

Yes if you have less than your max 5ma current your resistor will still have an effect as described above. Power will be dissipated according to the new total current flowing through the loop calculated by the formula i^2 *R no getting around that.

Also keep in mind just because a mcu says it supplies 1ma it's not safely current limiting itself to that level the datasheet is telling you he can only safely supply that much current without damage.

So if you connect two chips and the current that will flow in the loop you form when you drive one high is less than the rated current you should be ok.

Now if you say wanted to directly drive something that could draw more current like an led then a resistor (or transistor or other drive circuit) would be prudent.

Also and this may be a little off topic there are other reasons to add resistors between chips such as impedance matching the source driver to the trace, and for absorbing reflections.

Finally adding a resistor will restrict the amount of current flow from the ic driver to the trace so you will see your rise time go down. Sometimes this can help with emi at higher frequencies but it's generally a poor mans approach in my opinion :)


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.