极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10578|回复: 3

watchdog的bug?

[复制链接]
发表于 2013-2-2 12:11:36 | 显示全部楼层 |阅读模式
使用watchdog的程序后,

#include <avr/wdt.h>                                                                //使用WDT看门狗

wdt_enable(WDTO_8S);                                                                  //初始化看门狗

wdt_reset();                                                                                          //喂狗

然后给个长于8S的延时,系统就可以重新启动

我的2560在指定的8秒超时以后。arduino就处于死机的状态。
串口没有输出了。然后L灯一直快速的闪烁、

更新程序的话 又会出现下面的问题。基本无法使用了,请问该如何解决。

Binary sketch size: 30410 bytes (of a 258048 byte maximum)
processing.app.SerialException: Serial port 'COM36' already in use.  Try quiting any programs that may be using it.
        at processing.app.Serial.<init>(Serial.java:144)
        at processing.app.Serial.<init>(Serial.java:76)
        at processing.app.debug.Uploader.flushSerialBuffer(Uploader.java:75)
        at processing.app.debug.AvrdudeUploader.uploadViaBootloader(AvrdudeUploader.java:88)
        at processing.app.debug.AvrdudeUploader.uploadUsingPreferences(AvrdudeUploader.java:66)
        at processing.app.Sketch.upload(Sketch.java:1664)
        at processing.app.Sketch.exportApplet(Sketch.java:1624)
        at processing.app.Sketch.exportApplet(Sketch.java:1578)
        at processing.app.Editor$DefaultExportHandler.run(Editor.java:2314)
        at java.lang.Thread.run(Thread.java:619)
processing.app.debug.RunnerException: Serial port 'COM36' already in use.  Try quiting any programs that may be using it.
        at processing.app.debug.Uploader.flushSerialBuffer(Uploader.java:99)
        at processing.app.debug.AvrdudeUploader.uploadViaBootloader(AvrdudeUploader.java:88)
        at processing.app.debug.AvrdudeUploader.uploadUsingPreferences(AvrdudeUploader.java:66)
        at processing.app.Sketch.upload(Sketch.java:1664)
        at processing.app.Sketch.exportApplet(Sketch.java:1624)
        at processing.app.Sketch.exportApplet(Sketch.java:1578)
        at processing.app.Editor$DefaultExportHandler.run(Editor.java:2314)
        at java.lang.Thread.run(Thread.java:619)
avrdude: stk500v2_ReceiveMessage(): timeout
avrdude: stk500v2_ReceiveMessage(): timeout
avrdude: stk500v2_ReceiveMessage(): timeout
avrdude: stk500v2_ReceiveMessage(): timeout
avrdude: stk500v2_ReceiveMessage(): timeout
avrdude: stk500v2_ReceiveMessage(): timeout
avrdude: stk500v2_getsync(): timeout communicating with programmer
avrdude: stk500v2_ReceiveMessage(): timeout
avrdude: stk500v2_ReceiveMessage(): timeout
avrdude: stk500v2_ReceiveMessage(): timeout
avrdude: stk500v2_ReceiveMessage(): timeout
avrdude: stk500v2_ReceiveMessage(): timeout
avrdude: stk500v2_ReceiveMessage(): timeout
avrdude: stk500v2_ReceiveMessage(): timeout
avrdude: stk500v2_getsync(): timeout communicating with programmer
avrdude: stk500v2_ReceiveMessage(): timeout
avrdude: stk500v2_ReceiveMessage(): timeout
avrdude: stk500v2_ReceiveMessage(): timeout
avrdude: stk500v2_ReceiveMessage(): timeout
avrdude: stk500v2_ReceiveMessage(): timeout
avrdude: stk500v2_ReceiveMessage(): timeout
avrdude: stk500v2_ReceiveMessage(): timeout
avrdude: stk500v2_getsync(): timeout communicating with programmer
avrdude: ser_send(): write error: sorry no info avail
回复

使用道具 举报

 楼主| 发表于 2013-2-2 12:12:41 | 显示全部楼层
我个人估计是不是 因为watchdog的设置 ,让Bootloader程序 也不断地在重启,然后需要重新烧录bootloader?
回复 支持 反对

使用道具 举报

发表于 2013-2-2 15:33:57 | 显示全部楼层
严重同意楼上的观点,的确和bootloader有很大关系  我的经验是Arduino Duemilanove的就有问题,Arduino Uno的就可以通过。{:soso_e100:}
回复 支持 反对

使用道具 举报

发表于 2013-4-19 17:08:32 | 显示全部楼层
用最新的IDE1.04重新刷Bootloader。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 需要先绑定手机号

Archiver|联系我们|极客工坊

GMT+8, 2024-5-14 05:33 , Processed in 0.039060 second(s), 19 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表