如何使用程式方式重置(reset) Arduino [Arduino software reset ~ How to reset Arduino by programming?]
如何使用程式方式重置(reset) Arduino [Arduino software reset ~ How to reset Arduino by programming?]
資料來源:https://www.instructables.com/two-ways-to-reset-arduino-in-software/
https://arduinogetstarted.com/faq/how-to-reset-arduino-by-programming
Declare (宣告/定義)
void(* resetFunc) (void) = 0; // declare reset fuction at address 0
Call (呼叫/執行)
resetFunc(); //call reset
Ex: (實際範例)
int led = 13;
// the setup routine runs once when you press reset:
void setup() {
// initialize the digital pin as an output.
pinMode(led, OUTPUT);
Serial.begin(9600);//initialize the serial port
}
void(* resetFunc) (void) = 0; //declare reset function @ address 0
// the loop routine runs over and over again forever:
void loop() {
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");
resetFunc(); //call reset
delay(100);
Serial.println("never happens");
}