本文主要是介绍ESP8266 Arduino 不使用Delay让Led闪烁,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
因为Arduino Delay 函数会阻塞线程,使用millis 方法实现Led闪烁。
当然也可以使用Timer 来达到同样的效果。
//非阻塞
//LED灯闪烁
unsigned long previousMillis = 0;
const long interval = 1000; //灯闪烁的时间间隔
#define D5 14
void setup()
{pinMode(LED_BUILTIN, OUTPUT);pinMode(D5, OUTPUT);digitalWrite(D5, HIGH);//高电平使继电器
}
void loop() {unsigned long currentMillis = millis(); //获取当前的系统运行时间长度if (currentMillis - previousMillis >= interval){previousMillis = currentMillis;if (digitalRead(LED_BUILTIN) == LOW){digitalWrite(LED_BUILTIN, HIGH);digitalWrite(D5, HIGH);}else{digitalWrite(LED_BUILTIN, LOW);digitalWrite(D5, LOW);}}
}
这篇关于ESP8266 Arduino 不使用Delay让Led闪烁的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!