Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //реле включения с задержкой и выключения с задержкой
- #define ledPin1 12 //Реле 1 - управление
- #define ledPin2 11 //Реле 2 - управление
- byte valA; //переменная времени
- byte flagA;
- long previousMillisA = 0;
- byte valB; //переменная времени
- byte flagB;
- long previousMillisB = 0;
- void setup()
- {
- pinMode(ledPin1, OUTPUT); //иниц выхода
- pinMode(ledPin2, OUTPUT); //иниц выхода
- pinMode(8, INPUT);//этот пин вход
- pinMode(9, INPUT); //этот пин вход
- }
- void loop()
- {
- //**************************первый таймер , включаемый через Н-секунд после нажатия**********************************
- if(digitalRead(8)==HIGH)//если кнопка нажата ...
- {
- flagA=1;
- }
- if(flagA==1)
- {
- if (millis() -previousMillisA >1000)
- {
- previousMillisA = millis();
- valA++; // работает счет,ledPin1 выключен
- digitalWrite(ledPin1,LOW);
- }
- }
- if(valA>=5) //кол-во секунд((millis() -previousMillisA >1000) при достижении этого значения , ledPin1 включается
- {
- digitalWrite(ledPin1,HIGH);
- }
- if(digitalRead(8)==LOW)//если кнопка не нажата ...
- {
- flagA=0;
- digitalWrite(ledPin1,LOW); //выключаем ledPin1
- valA=0;//обнуляем переменную
- }
- //********************************таймер второй*********************
- if(digitalRead(9)==HIGH)//если кнопка нажата ...
- {
- previousMillisB = millis();
- flagB=1;
- valB=0;
- }
- if(flagB==1)
- {
- digitalWrite(ledPin2,HIGH);
- }
- if(flagB==1&&digitalRead(9)==LOW)
- {
- if (millis() -previousMillisB >1000)
- {
- previousMillisB = millis();
- valB++; // работает счет,ledPin1 включен
- // digitalWrite(ledPin2,LOW);
- }
- }
- if(valB>=10) //кол-во секунд ,при достижении этого значения , ledPin2 выключается
- {
- digitalWrite(ledPin2,LOW);
- flagB=0;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement