arduino 中停止循环
本教程将讨论在 arduino 中停止循环的方法。arduino 中有两种循环:一个是默认情况下提供的 void loop(),而另一个是用户在其中创建的。用户创建的循环可以使用 break 方法轻松结束。要结束 arduino 的 void loop()
,可以使用以下方法。
使用 sleep_n0m1
库停止 void loop()
上面的方法可能适用于所有 arduino 板,但是 arduino 将继续使用电源。使用 sleep_n0m1
库,你可以将 arduino cpu 置于永久睡眠状态,直到你手动或使用计时器对其进行重置。请注意,这可能不适用于所有 arduino 开发板。
#include sleep sleep;
unsigned long sleeptime; // how long you want the arduino to sleep
void setup() {
sleeptime = 50000; // set sleep time in ms, max sleep time is 49.7 days
}
void loop() {
// your code
sleep.pwrdownmode(); // set sleep mode
sleep.sleepdelay(sleeptime); // sleep for: sleeptime
}
完成代码后,请确保使用 sleep_n0m1 库
。这种方法只会消耗一点能量。使用此链接了解更多详细信息。
使用 exit(0)
停止 void loop()
可以在代码后使用 exit(0)
方法来结束 arduino 的 void loop()
,但是请注意,arduino.cc
没有提供任何方法来结束此循环,因此该方法可能不起作用适用于所有 arduino 开发板。
void loop() {
// all of your code here
// exit the loop
exit(0); // 0 is required to prevent error.
}
请注意,exit(0)
之后,你的 arduino 将停止工作,直到你手动将其重置。因此,请确保在代码完成其任务之后使用此方法。
使用无限循环停止 void loop()
上面的方法可能不适用于所有的 arduino 板,因此我们必须使用另一种方法。无限循环方法将适用于所有 arduino 板,但是 arduino 将保持清醒状态并继续消耗功率。在此方法中,你可以在代码后插入无限循环。arduino 将处理你的代码,进入无限循环并停留在那里,直到你手动将其重置。
void loop() {
// all of your code
while (1) { // infinite loop
}
}
如果 arduino 进入无限循环,它将在你重置它之前不会返回,因此请确保在完成代码后使用无限循环
。
转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处
本文地址:
相关文章
arduino 复位
发布时间:2024/03/13 浏览次数:315 分类:c
-
可以通过使用复位按钮,softwarereset 库和 adafruit sleepydog 库来复位 arduino。
发布时间:2024/03/13 浏览次数:181 分类:c
-
可以使用简单的方法 toint()函数和 serial.parseint()函数将 char 转换为 int。
发布时间:2024/03/13 浏览次数:151 分类:c
-
可以使用 arduino 中的循环制作计数器。
arduino printf 函数
发布时间:2024/03/13 浏览次数:223 分类:c
-
通过使用 sprintf()函数和 serial.print()函数,可以获得与 printf()相同的输出。