hi there,i try to give external LED indicator for Arduino board when i give voltage input 5v on arduino ,my external LED turn ON for 5 second and then turn off.i try use millis.but it likes i use delay().but my External LED still blinking. because i dont want blinking my LED.
unsigned long interval=1000; // the time we need to wait
unsigned long previousMillis=0; // millis() returns an unsigned long.
bool ledState = false; // state variable for the LED
void setup() {
pinMode(13, OUTPUT);
digitalWrite(13, ledState);
}
void loop() {
unsigned long currentMillis = millis(); // grab current time
// check if "interval" time has passed (1000 milliseconds)
if ((unsigned long)(currentMillis - previousMillis) >= interval) {
ledState = !ledState; // "toggles" the state
digitalWrite(13, ledState); // sets the LED based on ledState
// save the "current" time
previousMillis = millis();
}
}
A smarter way to do what @ridhoazhar313 says he/she wants to do
boolean timing = true;
void setup()
{
pinMode(13, OUTPUT);
digitalWrite(13, LOW); //start with LED off
}
void loop()
{
if (timing && millis() >= 5000) //test whether 5 seconds has elapsed
{
digitalWrite(13, HIGH); //turn LED on
timing = false; //no need to check again
}
}