Why would anyone ever use pull down resistors for momentary on switch?

I'm still new at this arduino thing. When I first began I needed a button array. The tutorial I went by used pull down resistors for the switches. I'm learning now that the arduino has built in pull up resistors so all we need to do is wire one side of switch and other to ground then set the switch pin as INPUT and HIGH to get it to work. Of course then checking if the pin is LOW for when pressed etc. I read up on it.

My real question is why would anyone ever use pull down resistors with a momentary switch? I've read there's less noise using the onboard pull up resistors.

Thanks in advance!

Read this for the full discussion of this topic:-
http://www.thebox.myzen.co.uk/Tutorial/Inputs.html

Thank you Mike. :slight_smile: I read it. Looks like in most cases with short wire runs are fine with internal pull up resistor. I haven't tested yet though. My button board is working but I'm totally switching to panel mount switches instead of through hole switches. Going to be a bit until I actually have to chance to see how it works.

Cheers

Grumpy_Mike:
Read this for the full discussion of this topic:-
Inputs

Nice write-up Mike!

noobdude:
My real question is why would anyone ever use pull down resistors with a momentary switch?

It has been my experience that software-minded people tend to use pull-downs. They like the logic of "low = off, high = on." As Mike's write-up points out, pull-downs can be dangerous in some situations which is why hardware-minded generally use pull-ups.

This is why some of us are crazy, it comes from thinking backwards all the time.

Even easier if you are born lefthanded, we are use to flipping the world around to our point of view. :wink:

Lefty

I'm a backwards type of person as well lol. Thanks for the replies.

software minded.. AND a lefty?

(am I screwed?) :wink:

I dunno. This software type hates having to put in extra resistors in his design. Of course, I solved the inversion problem by writing my own class library to cover different types of buttons, and did the inversion there, so in the normal code it will be non-zero for the button being pressed. :roll_eyes:

Being a hardware type... It doesn't take me much to rationalize adding a part where a part should be... even if that part is only for insurance that the circuit will behave when things go wonky. To me... you seldom have EXTRA resistors in a design... but the bad stuff can happen when you don't add enough. I personally behave as if the internal pullups don't even exist. If Atmel won't guarantee that they are a specific resistor value, I have no specific use for them.