Go Down

Topic: Pull Up or Pull Down; That is the question... (Read 1 time) previous topic - next topic


Pros, cons, differences, preferences of using a Pull up vs a Pull down resistor on an Arduino Digi pin.

Whats your preferance and why.




I don't think it really matters.  There are switches and other devices that will pull up or pull down depending on your preferences.  Personally, I agree that pull up is the way to go since it's already built-in to the chip.


I like to think of it as analogous to the cup half-empty / half-full idea - depends on your character.


It depends on the application... if you're using a one-wire, device, it NEEDS to be pull-up.


Some times you can gain a reduction in current by choosing one over the other. It
depends on the application.

If all other things are equal I would favor a pull-up resistor. Some microcontrollers (like the Atmega series) have inputs that can be configured with an internal pull-up. Using only pull-ups (internal or external) does provide some consistency.

(* jcl *)

www: http://www.wiblocks.com
twitter: http://twitter.com/wiblocks
blog: http://luciani.org


If you're building your own PCB, pull down might be easier to route if you have a ground plane and no +5V plane.   For CMOS it doesn't really matter electrically.  For TTL it mattered much more as TTL could sink current easily but not source much, so pull-ups were favoured.

Some bright spark has probably invented the pull-sideways by now. ;)
[ I will NOT respond to personal messages, I WILL delete them, use the forum please ]


Thanks everyone for their comments. The source of the question is simply couriousity. I am designig some new stuff and I want to keep my Digi-inputs pulled high.

I just started to wonder which was more efficiant, to source or to sink, but I guess that all depends on the situation and resistor used. I figured a pull-up would be more common.


Pull up when you can - pull down if you must.

As mentioned before with TTL you needed very low values of pull down resistors (about 300R) and that gave poor noise immunity and high currents. Where as a pull up could be 4k7.

With some drive circuits like that on the ones on the arduino chip it is irrelevant.
However the absolute chip limit of 200mA is the current limit of the supply pin. By mixing them you could have 200mA of current source and 200mA of current sink and still stay within the limits.  :)

Actually keep that limit to less than 150mA anyway.

Go Up