20K pullups needed with ATMega?

I was reading the ATMega datasheet: http://www.atmel.com/dyn/resources/prod_documents/doc8271.pdf

And I noticed under electrical characteristics, that it seems to imply that you should use at a minimum 20K resistors on your pullups for the I/O pins and a minumum of 30K on the Reset pin. (And maximums of 50K and 60K)

Is this correct?

And if so, does that mean there's a mistake in the RBBB design, which specifies a 10K pullup on the reset line?

http://cdn.shopify.com/s/files/1/0038/9582/files/RBBB_Instructions_06.pdf?1260749296

Is this correct?

No it’s not. What the spec is showing is the possible resistance value variation for the internal pull-up resistors if enabled by software. You are free to use nearly any value external pull-up resistor, 5k-10k are very common values to use and are a good trade off of impedance level Vs current consumption.

Lefty

Then does this mean there's an internal pullup for the reset line? And if so, why doesn't the RBBB use it?

Probably because the reset pin can only use the internal pull-up resistor if it is configured as a general-purpose I/O? That would be my guess.

Then does this mean there's an internal pullup for the reset line? And if so, why doesn't the RBBB use it?

Because a lower value external pull-up resistor has better noise immunity characteristics. All the Arduino board modules use an external pull-up resistor on the reset pin. Only designs wishing to use minimum external components possible would just rely on the internal pull-up resistor. I saw one design posted around here recently where the reset pin was wired directly to +5v Vcc voltage. That works also (but not normally recommended) but only if you don't wire a reset switch or couple a auto-reset capacitor to the pin.

Lefty

Okay, thanks. Makes sense. :-)

Since were's on the subject on the RBBB, how much current does the resonator on the RBBB use? Is it insignificant?

I'm just wondering cause I'm trying to calculate how much I can output from various pins and the pins the resonator is attached, 9 and 10, are part of one of the groups which can put out a total of 150mA.

Is it insignificant?

Yes, it’s insignificant

Okay, well, in that case, it looks like:

You can source or sink a maximum of 40mA from each pin.

You can source a maximum of: 150mA total from D0-D4 & A0-A5 150mA total from D5-D13

You can sink a maximum of: 100mA total in D0-D4 100mA total in D5-D13 100mA total in A0-A5

And: Vcc can source a max of 200mA Gnd can sink a max of 200mA.

So, 40mA from a pin is the best case scenario, but if you're sourcing current from all the analog pins, then you'd better not be sourcing more than 25mA from each pin, and even less than that if you're also sourcing current from digital pins 0..4 at the same time.

And overall for the whole board, you can't source more than 200mA.

So complicated. :-)

You can source or sink a maximum of 40mA from each pin.

Except you can't that is an absolute stress rating. As it says in the notes running it at this level for prolonged periods will cause damage.

So complicated.

Like squeezing a balloon you can push one part only to have another part pop out.

Yes, thanks for pointing that out. I know that these are maximums and you should stay below them, but I probably should have mentioned that.

What would you reccomend one use as an effective maximum though, for the outputs, and for vcc? And would you reccomend one assume the ATMega itself will be pulling 50mA through vcc just to run at 16mhz? Or something less than that?

Trying to figure out how much I can realistically run through my led array now that I've taken the weak voltage regulator on the pro mini out of the equation.

40mA for a I/O pin is the Absolute Maximum Rating, so in practice, you should avoid getting close to absolute max (regardless of how many pins sourcing power).

-Sean http://www.robotsimple.com

My own recommendation would be not to exceed 30mA from a pin.

What would you reccomend one use as an effective maximum though, for the outputs, and for vcc?

The '168/'328 specification states that current beyond the listed test condition is not guaranteed. The listed test condition is 20mA for the outputs with a Vcc of 5V and 10mA for with a Vcc of 3V. These are the numbers that I would use.

I placed a summary of the specification at http://wiblocks.luciani.org/FAQ/faq-atmega328-pin-current.html

In general (1) if there is a specified maximum or minimum I would use those values in a design and (2) I would not exceed 80% of an absolute maximum.

(* jcl *)


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

When I said and for Vcc, I meant how many mA can I safely put through the Vcc pin? 80% of 200mA? So 160mA roughly?

80% of 200mA? So 160mA roughly?

Correct but there are limits on groups of pins too. You could exceed the limits on a group of pins and still be under the maximum Icc.

(* jcl *)