Arduino'坠毁了?' 12小时后

sto*_*nal 4 crash arduino

我是Arduino世界的新手.写下面的代码 - 使用DHT22传感器.12小时后,我的温室加热器低于所需温度时没有开启.

在关闭电源并重新开启之后,一切都恢复正常.我知道这段代码非常混乱 - 但它是否有任何内存泄漏?或者其他可能导致它停止工作的东西?

http://pastebin.com/CcdUN3jb

编辑 - 我发现一个开放的计数器,每2秒增加1.我无法想象就是这样,但我在这里改了:http://pastebin.com/nuRjHJkR

jdr*_*5ca 6

旧军建议:

如果你无法修复它,请将其涂漆.

看门狗定时器存在于这些微控制器中,只是为了让您的工厂保持活力,无论您的代码如何.每次通过循环(),你都会用简单的方式喂狗

wdt_reset();
Run Code Online (Sandbox Code Playgroud)

如果你的程序挂起并停止喂狗,MCU将重置.

您可以在setup()中配置监视程序的超时.出于您的目的,您可以使用8秒的大超时,这应该在最长的循环()执行时间上提供巨大的余量.这些传感器读取需要多长时间?

有关简单描述,请参阅Arduino页面中的链接: watchdog