如何修改Arduino的void loop,执行30次开关操作后退出循环?
修改方案
要实现30次开关操作后停止循环,你需要添加计数器变量追踪操作次数,具体修改如下:
修改后的完整代码
int relay = 8; // 全局计数器,记录已完成的开关循环次数 int cycleCount = 0; // 定义目标循环次数 const int targetCycles = 30; void setup() { pinMode(relay, OUTPUT); } void loop() { // 仅在未达到目标次数时执行开关逻辑 if (cycleCount < targetCycles) { digitalWrite(relay, HIGH); delay(5000); digitalWrite(relay, LOW); delay(200); // 完成一次完整开关后,计数器加1 cycleCount++; } // 达到次数后,loop会持续空运行,但不再触发继电器操作 }
关键改动说明
- 新增全局变量
cycleCount用于累计开关循环次数,targetCycles常量固定目标次数(30次),后续调整次数只需修改这个常量即可。 - 在
loop中加入条件判断,仅当计数器未达到目标值时才执行继电器的开-关逻辑,每次完成一次完整循环后计数器自增。 - 当计数器达到30次后,
loop函数会持续空转,但不再执行任何继电器操作,等同于实现了"停止循环操作"的需求。
内容的提问来源于stack exchange,提问作者Saif
相关产品推荐
相关产品推荐

