为什么我的esp8266计时器不起作用

时间:2017-09-14 09:27:00

标签: esp8266 arduino-esp8266

我尝试在NodeMCU v3上做一个小计时器。

我想设置一个时间,以毫秒为单位,之后led应该继续。 当我设定一个新的时间时,它应该会消失。

unsigned long times;

void setup() {
  Serial.begin(9600);
  pinMode(2, OUTPUT);
  times = 0;

}

void loop() {

  while(Serial.available()==0){}
  times=Serial.parseInt();
  times=times+ millis();
  Serial.print(times);
  Serial.println(" Millis");

  if (millis() > times )
  {
    digitalWrite(2, LOW); 
  } else {
    digitalWrite(2, HIGH);
  }
}

指示灯熄灭而不再打开 它活跃度很低。

1 个答案:

答案 0 :(得分:0)

while(Serial.available()==0){} 这一行说:执行括号之间的代码,只要串行上没有数据。

如果您在Serial上键入内容,代码将执行一次。取决于可能溢出的millis()的值,led将在我们的关闭。

所以你必须让你的逻辑正确!