Two ways to reset arduino in software




If you want to RESET Arduino from the beginning without manually pressing the RESET button, there are a few ways. Here are two ways, using minimal wiring / circuitry.

Step 1: Using 1 wire connected to the RESET pin

1. electronically, using only 1 wire connecting an OUTPUT pin (12 in this example) to the RESET pin. (see the circuit)

In this example, pin 13, connected to the internal LED pin 13 is blinking. Pin 12 gets connected to the RESET pin by one wire.
-Typically, this would be a problem because when the application starts up, all pins get pulled LOW. This would therefore disable Arduino from every running. BUT, the trick is: in setup() function, the FIRST thing that happens is we write HIGH to the pin 12, which is called our reset pin (digitalWrite(resetPin, HIGH), thereby pulling the Arduino RESET pin HIGH.

Two ways to reset arduino in software




int led = 13;//pin 13 as OUTPUT LED pin
int resetPin = 12;
// the setup routine runs once when you press reset:
void setup() {  
digitalWrite(resetPin, HIGH);
delay(200);
// initialize the digital pin as an output.
pinMode(led, OUTPUT);    
pinMode(resetPin, OUTPUT);     
Serial.begin(9600);//initialize Serial Port
Serial.println("reset");//print reset to know the program has been reset and 
//the setup function happened
delay(200);
}
// the loop routine runs over and over again forever:
void loop() {
delay(10);
digitalWrite(led, HIGH);   // turn the LED on (HIGH is the voltage level)
Serial.println("on");
delay(1000);               // wait for a second
digitalWrite(led, LOW);    // turn the LED off by making the voltage LOW
Serial.println("off");
delay(1000);               // wait for a second
Serial.println("resetting");
delay(10);
digitalWrite(resetPin, LOW);
Serial.println("this never happens");
//this never happens because Arduino resets
}

 Two ways to reset arduino in software circuit

Step 2: Using just software

In this example, you do not need any extra wiring. We initialize the reset function, then call reset.

 

For more detail: Two ways to reset arduino in software




Clip to Evernote

Leave a Comment

(Spamcheck Enabled)

Read previous post:
Siduri – An Arduino Control Smart Coaster
Siduri – An Arduino Control Smart Coaster

Siduri named after the Sumerian god of happiness and merriment, is a smart coaster for your drinks. It recognizes when...

Close
Scroll to top