kenwood120s:
Try this...//8 second led blink
// and 2 second buzzer when led goes on
//1 oct 2017
//forum thread 503188
byte ledPin = 2;
int ledInterval = 2000; //should be 8000, 2000 for quick test
bool ledState = 0;
unsigned long ledPreviousMillis = 0;
byte buzzerPin = 3;
int buzzerInterval = 500; //should be 2000, 500 for quick test
unsigned long buzzerPreviousMillis = 0;
unsigned long currentMillis;
void setup()
{
pinMode(ledPin, OUTPUT);
digitalWrite(ledPin, ledState);
pinMode(buzzerPin, OUTPUT);
digitalWrite(buzzerPin, LOW);
}//setup
void loop()
{
currentMillis = millis();
if (currentMillis - ledPreviousMillis >= ledInterval)
{
ledState = !ledState;
digitalWrite(ledPin, ledState);
ledPreviousMillis = currentMillis;
if (ledState == HIGH) //turn buzzer on if led just came on
{
digitalWrite(buzzerPin, HIGH);
buzzerPreviousMillis = currentMillis; //buzzer went on at..
}
}
if (ledState == HIGH) //see if it's time to turn buzzer off
{
if (currentMillis - buzzerPreviousMillis >= buzzerInterval)
{
digitalWrite(buzzerPin, LOW); //buzzer only on for first part of led on
}
}
}//loop
Thank you ..
That's exactly what I want ... It works !!!! _