首页 > 解决方案 > 在 Arduino 中,为什么要故意创建无限循环?

问题描述

ASCII 表示例草图中有一个有意的无限循环:

  if (thisByte == 126) {    // you could also use if (thisByte == '~') {
// This loop loops forever and does nothing
while (true) {
  continue;
}

这样做有什么意义void main()?为什么不把所有东西都放进去void setup()?这对于运行一次函数有用吗?我认为如果要在特定功能中使用它,它将陷入无限循环...

标签: arduinoarduino-c++

解决方案


无限循环使 Arduino 在loop()满足特定条件时停止执行任何操作。这只是一种简单的方法,可以让它在完成它所做的事情后停止循环。将 MCU 无限期地置于深度睡眠或断电模式也适用于此。

是的,你可以在 中做任何事情setup(),情况总是如此。任何 Arduino 程序都可以重写以在setup().

按照惯例,不这样做的主要原因setup()是用于设置,loop()用于循环和运行主要功能,否则,这两个函数将具有愚蠢的名称。

不过,每个人都可以自由地按照自己的方式去做。


推荐阅读