Go Down

Topic: [solved]Pull down resistor size effects interrupt, 10k works, but 68k doesn't. (Read 859 times) previous topic - next topic

arusr

Hello,
I'm using Nick Gammon's example code to lower the sleep current consumption of an Arduino on breadboard.  I've got it down to 0.34mA.  Most of that is coming from the pull down resistor I'm using on pin 4 (Interrupt Pin 0).  The VCC is 3.3V, so VCC over 10kOhm is about 0.33mA.

I tried using a larger resistor, 68kOhm, to decrease consumption, but the interrupt didn't work.  Plug in the 10kOhm resistor back in and it works again.  I don't understand why...maybe such low current flows makes high/low voltage signal unstable?

rogerClark

See page 314 of the ATMega 328 spec doc

It states that maximum pullup resistor is 50k. You'd need to carefully read the spec to determine what Vcc voltage that relates to, ie it may be 5V (I don't have time to read the spec in that much detail)

Why are you using a pull up? Can't you drive the pin high e.g. with a FET ?

Freelance developer and IT consultant
www.rogerclark.net

Paul__B

This is going to be an interesting situation.  Presumably the pull-down (and why not a pull-up?) is to permit a wake-up from a normally-closed switch - unusual, but possible.

If the switch was not required to generate a wake-up, it is perfectly easily solved - you drive the pull-down from a port pin and write it LOW only when you need to receive such interrupts.  If it was a pull-up function, you would - of course - do this by selectively enabling the internal pull-up.

Isn't it nice how people post only half of the situation?

arusr


See page 314 of the ATMega 328 spec doc

It states that maximum pullup resistor is 50k. You'd need to carefully read the spec to determine what Vcc voltage that relates to, ie it may be 5V (I don't have time to read the spec in that much detail)

Why are you using a pull up? Can't you drive the pin high e.g. with a FET ?




Yes, thanks for the reference.  It is for an interrupt to wake up.

Go Up