Background…
I'm a newbie to AVR applications. I recently built two ATTINY13-based circuits (glorified LED blinkers) which worked correctly (independently) on the breadboard. When I combined them on a solder perfboard with a shared power supply, things went haywire. After much investigation, it appeared they were constantly resetting.
I had left pin 1 (reset) of each micro un-connected. I researched proper ways of handling the reset pin and from this implemented the following:
-
Added a 100uF electrolytic capacitor in parallel with the power supply to help with any potential current draw the power supply would be too "slow" to deal with.
-
Added a 4.7K resistor from
VCC
toRESET
-
Added a 0.1uF ceramic capacitor from
GND
toRESET
These steps solved the problem completely.
The question:
The page I linked above is providing advice when doing ISP (in-system programming) which I am not doing (yet). (I'm programming the micros separately with no other components connected to them.)
I've seen several different values of capacitor (10nF, 0.1uF, etc.) and resistor (4.7K, 10K, etc.) and am not sure what factors alter these values. Can anyone shed some light on how reset pin isolation works, and how to calculate component values to use? Can you explain what values to use if there is no in-system programming header?
Best Answer
Atmel AVR042: AVR Hardware Design Considerations tell us that the capacitor on the reset pin is not necessary. Personally I think it's overkill. There is no reason for you to continue making dozens of AVR circuits, each and every one with that redundant capacitor.
As for the reset pullup resistor:
If you take a look at professional products that incorporate the AVR micros, such as the Arduino, its numerous clones, dozens of dev kits, you'll find that most use a 4.7kΩ or 10kΩ resistor.
And particularily for your ATtiny13, its datasheet specifies that the pullup should ideally range [20kΩ, 80kΩ].