2017-09-14 91 views
0

我试着在我的NodeMCU v3上做一个小定时器。为什么我的esp8266定时器不起作用

我想设置一个以毫秒为单位的时间后,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); 
    } 
} 

LED熄灭而不再次 它是低活性。

回答

0

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

如果你在Serial上键入内容,代码会执行一次。根据可能会溢出的millis()的值,LED将会关闭。

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