#include <Arduino.h>
#define BUTTON_PIN 7
#define BUTTON_LED_INCR 6
#define BUTTON_LED_DECR 5
#define LED_PIN 12
#define LED_BLINK_PIN 13
int ledState = 0;
int led2State = 0;
int buttonState = 0;
int lastButtonState = 1;
unsigned long timeDelay = 500;
unsigned long previousBlinkTime = 0;
void setup() {
pinMode(LED_PIN, OUTPUT);
pinMode(LED_BLINK_PIN, OUTPUT);
pinMode(BUTTON_PIN, INPUT);
pinMode(BUTTON_LED_DECR, INPUT);
pinMode(BUTTON_LED_INCR, INPUT);
Serial.begin(9600);
}
void loop() {
buttonState = digitalRead(BUTTON_PIN);
if (buttonState == 1 && lastButtonState == 0) {
ledState = !ledState;
digitalWrite(LED_PIN, ledState);
if (ledState == 1) {
digitalWrite(LED_BLINK_PIN, LOW);
}
lastButtonState = buttonState;
if (ledState == 0) {
unsigned long currentTime = millis();
if (currentTime - previousBlinkTime >= timeDelay) {
previousBlinkTime = currentTime;
if (led2State == 0) {
led2State = 1;
digitalWrite(LED_BLINK_PIN, HIGH);
} else {
led2State = 0;
digitalWrite(LED_BLINK_PIN, LOW);
}
}
}
if (digitalRead(BUTTON_LED_INCR) == 1) {
timeDelay = timeDelay + 100;
Serial.print("Увеличение времени мигания: ");
Serial.println(timeDelay);
delay(200);
}
if (digitalRead(BUTTON_LED_DECR) == 1 && timeDelay > 400) {
timeDelay = timeDelay - 100;
Serial.print("Уменьшение времени мигания: ");
Serial.println(timeDelay);
delay(200);
}
}