【发布时间】:2017-09-21 18:16:50
【问题描述】:
我的情况 我正在使用移位寄存器来控制 72 个 LED。 每个 LED 都可以通过特定请求激活。将 LED 设置为高电平很容易,但 LED 应该闪烁。通过“for”使 LED 闪烁不是问题。 我设法让 LED 闪烁,一旦它闪烁,当有新请求到来时它不会停止。LED 应该只闪烁直到有新请求到达。
我的问题是如果在闪烁周期(在示例中为 3 次)我无法停止它。如果我发送一个新的if(readString.indexOf("?button1onA2") > 0),例如另一个 LED (?button1onA2),只要之前请求中的 LED 仍在闪烁,该请求就会被忽略。
我的目标是让 LED 闪烁,但在通过“readstring”的新请求到达时停止。
我的问题:
- 有没有更好的方法让 LED 循环闪烁,而不是使用
for (i = 0; i < 3; i++)? - 我在循环中如何打破它并转到下一个 LED?
我的代码
if (readString.indexOf("?button1onA1") > 0)
在这种情况下,传感器 ID 为 4 的 LED 应闪烁。
if (readString.indexOf("?button1onA1") > 0) {
for (i = 0; i < 3; i++)
{
shifter.setPin(4, HIGH);
shifter.write();
delay(200);
shifter.setPin(4, LOW);
shifter.write();
delay(200);
}
【问题讨论】:
-
我投票结束这个问题,因为这个问题属于 arduino.stackexchange.com 网站。