Forezz

Две лампочки

Nov 7th, 2019
170
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. boolean butt_flag = 0; //poslednee znachenie knopki
  2. boolean butt; //текущее значение кнопки
  3. boolean led_flag = 0; //флажок кнопки 13 пина
  4. unsigned long last_press; //время последнего нажатия
  5. boolean lamp = 0; //действие для лампы
  6. int nomer = 1;// текущий номер лампы(1 первая, 2 вторая)
  7. int dey = 1;//номер действия(1-вкл лампу, 2- выкл лампу)
  8.  
  9. void setup() {
  10. Serial.begin(9600);
  11. pinMode (A5, INPUT);
  12. pinMode (7, OUTPUT);
  13. pinMode (2, OUTPUT);
  14. }
  15.  
  16. void loop() {
  17.   butt = digitalRead(A5); //
  18.   if(butt == 1 && butt_flag == 0 && millis() - last_press > 200) { //считываем параметры кнопки, здесь она нажата.
  19.   butt_flag = 1;
  20.   lamp = !lamp;
  21.   led_flag = !led_flag;
  22.   Serial.println("Кнопка замкнута");
  23.   digitalWrite(13, led_flag);
  24.  
  25.   if(nomer == 1 && dey == 1 ) {
  26.   digitalWrite(7, lamp);
  27.   dey = 2;
  28.   } else if (nomer == 1 && dey == 2) {
  29.   digitalWrite(7, lamp);
  30.   nomer = 2;
  31.   dey = 1;
  32.   } else if (nomer == 2 && dey == 1) {  
  33.   digitalWrite(2, lamp);
  34.   dey = 2;
  35.   } else if (nomer == 2 && dey == 2) {
  36.   digitalWrite(2, lamp);
  37.   nomer = 1;
  38.   dey = 1;
  39.   }
  40.  
  41.  
  42.   last_press = millis();
  43.   }
  44.  if (butt == 0 && butt_flag == 1) { //здесь расжалась
  45.   butt_flag = 0;
  46.   Serial.println("Кнопка разомкнута");
  47.   }
  48. }
Add Comment
Please, Sign In to add comment