arduino 看门狗用不了,求破!!!!

2014-12-102.1万
AI 快速预览详细 收起
本文讨论了在使用Arduino Nano和Pro Mini时遇到的看门狗无法复位的问题。通过具体的代码示例和调试步骤,文章提供了详细的解决方案。首先,定义了LED管脚并启用了1秒的看门狗定时器。在loop中,LED常亮,注释掉`wdt_reset()`可以观察是否能正常复位。通过这些步骤,用户可以解决看门狗无法复位的问题,确保系统的稳定运行。
我在用Arduino nano 和pro mini 做了测试,都用不了,当看门狗执行复位的时候,L灯就一直在闪烁,无法复位,手动按按键也没反应,只能断电。求解答~
代码如下:
  • #include <avr/wdt.h>  
  •   
  • const int ledPin =  13;      // 定义LED管脚  
  •    
  •   
  • void setup() {  
  •   pinMode(ledPin, OUTPUT);        
  •    wdt_enable(WDTO_1S);      
  • }  
  •   
  • void loop()  
  • {  
  •   //LED常亮  
  •   digitalWrite(ledPin, HIGH);   
  •   //喂狗,注释本句查看有没有重启  
  •   //wdt_reset();   
  • }  

创作许可协议

本项目采用 None(不开放任何权利,保留所有权利) 进行许可。

评论(5)
Angleo
Angleo
https://mc.dfrobot.com.cn/forum.php?mod=viewthread&tid=10308&highlight=bootloader
可以参考一下这个帖子重新烧一下bootloader
Angleo
Angleo
http://forum.arduino.cc/index.php?topic=150419.0
由于Bootloader的问题,没有办法处理watch dog~~
yizilong
yizilong
作者
回复Angleo
是的,在用nano 和pro mini
Angleo
Angleo回复yizilong
现在用的是Arduino nano吗?
共3条回复,已加载2条,点击查看更多共3条回复,已加载全部
Youyou
Youyou
楼主试试这个网站上所述的方法,使用了不同的bootloader。
http://www.avrfreaks.net/forum/atmega328-watchdog
我爱小宇宙
我爱小宇宙
你试试看呢?
yizilong
yizilong
作者
回复我爱小宇宙
还是不可以,你试过可以用的吗?
我爱小宇宙
我爱小宇宙
#include
#include
#include
#define LED_PIN 13 //LED引脚
void setup(){
pinMode(LED_PIN,OUTPUT);
digitalWrite(LED_PIN,HIGH);
wdt_enable(WDTO_4S);
}
void loop(){
wdt_reset();
digitalWrite(LED_PIN,LOW);
delay(5000); //强制超时引发复位
}
- 没有更多了 -