1
\$\begingroup\$

I would like to know if it's okay to tie the reset pin on an ATMEGA328P directly to +5V without using a resistor to avoid random resets and lower part count. If it's not okay, can you explain why it's not good practice?

Thank you for your help.

\$\endgroup\$
  • 2
    \$\begingroup\$ Are you planning on implementing ISP? \$\endgroup\$ – Ignacio Vazquez-Abrams Oct 29 '14 at 3:33
  • \$\begingroup\$ I plan to program the chips before hand with final code then solder them in production with no ISP on the produced products. \$\endgroup\$ – klcjr89 Oct 29 '14 at 3:34
  • \$\begingroup\$ @troop231 If you have random resets in your circuit, then your should find out what's causing that and address the root cause. \$\endgroup\$ – Nick Alexeev Oct 29 '14 at 3:39
  • \$\begingroup\$ @NickAlexeev I was told the ATMEGA328P reset pin should not be left floating, which would cause random resets. Is this untrue? \$\endgroup\$ – klcjr89 Oct 29 '14 at 3:46
  • 1
    \$\begingroup\$ Oh hell yeah. ICEs are big balls of electrical noise. \$\endgroup\$ – Ignacio Vazquez-Abrams Oct 29 '14 at 4:01
1
\$\begingroup\$

Application notes related to RESET are in Atmel AVR042: AVR Hardware Design Considerations, Connection of RESET pin on AVRs paragraph. I would not connect RESET directly to +5V but via external pull-up resistor. It does not block RESET and leave option opened just in case is neeed. Or what about leave it floating and use RSTDISBL to disable external reset by FUSE.

\$\endgroup\$
1
\$\begingroup\$

As has been said, use a 10K resistor which will leave all your options open. I would strongly advise against doing anything with the RSTDISBL fuse as, once set, you will no longer be able to upload, program or bootload the AVR and you will only be able to clear the RSTDISBL fuse using a High Voltage Programmer.

In other words, setting the RSTDISBL fuse = bricked AVR to most mortals!

\$\endgroup\$
0
\$\begingroup\$

I just wanted to stress on the importance of the 10k resistor vs lower, or direct connection. I had connected it via a 4.7k resistor, and it turned out that when trying to program via ArduinoISP installed on a Nano-clone, the nano could not pull it down, and thus go into programming mode

\$\endgroup\$
  • \$\begingroup\$ It would be interesting to know what voltage you could have measured on the reset pin while the programmer was attempting to drive it low. Although the ATmega series has a fairly low voltage for a guaranteed reset, it should not require much current to counteract a 4.7K pullup resistor. Could there have been a grounding issue? Could the resistor have actually been of a yet smaller value than intended? \$\endgroup\$ – Chris Stratton May 28 '15 at 16:56

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.