|
|
#include<avr/wdt.h>
void setup() {
// put your setup code here, to run once:
Serial.begin(9600);
Serial.print("setup__");
Serial.println(MCUSR);
if(MCUSR&0x08)
{
pinMode(13,OUTPUT);
digitalWrite(13,HIGH);
//do something else
}
wdt_enable (WDTO_4S);
}
void loop() {
// put your main code here, to run repeatedly:
MCUSR=8;
Serial.print("loop__");
Serial.println(MCUSR);
// wdt_reset();
delay(5000);
}
opti版本的bootloader,看门狗重启后无法读取mcusr寄存器的值,即使给它赋值也不行。熔丝位中的看门狗未开启。不考虑看门狗中断,只需要复位后能判断出是看门狗导致的复位,arduino如何实现呢?谢谢
|
|