0504 knopka: различия между версиями

Материал из УМКИwiki
Перейти к навигации Перейти к поиску
(Новая страница: «<code> ////////////////////////////////////////////// // 2019.07.17 woronin, umkiedu@gmail.com // работа с кнопкой и переменно…»)
 
Нет описания правки
Строка 1: Строка 1:
<code>
<syntaxhighlight lang="C++">
  //////////////////////////////////////////////
  //////////////////////////////////////////////
  //    2019.07.17 woronin,  umkiedu@gmail.com
  //    2019.07.17 woronin,  umkiedu@gmail.com
Строка 40: Строка 40:
   delay(100);
   delay(100);
  }
  }
</code>
</syntaxhighlight>


[[Категория:Видео эпизоды УМКИ]]
[[Категория:Видео эпизоды УМКИ]]

Версия от 16:49, 3 ноября 2023

 //////////////////////////////////////////////
 //     2019.07.17 woronin,  umkiedu@gmail.com
 //     работа с кнопкой и переменной  различие между  INPUT_PULLUP,   и output
 //     Robot UMKI controller  K6_3
 //     делаем чтобы диод зажигался по первому нажатию, и гас по второму
 //////////////////////////////////////////////
 #define knopkaPIN 6
 #define blinkPIN A0
 int blink_diod  ; // задаем статическую целочисленную  состояния диода 0- погашен, 1 - горит
 void setup()
 {
  pinMode(knopkaPIN,   INPUT_PULLUP);
  pinMode(blinkPIN, OUTPUT);
  Serial.begin(9600);
 }
 void loop()
 {
  int statusPIN = 1 ; // задаем целочисленную переменную  для памяти 0 - нажат, 1 - отпущена
  statusPIN = digitalRead(knopkaPIN); // считываем состояние кнопки: 0 - нажата, 1- отпущена
  Serial.print(" statusPIN=");
  Serial.print(statusPIN);
  if (statusPIN == 0) // если кнопка нажата
  {
    if (blink_diod == 1) // если диод горит
    {
      digitalWrite(blinkPIN, LOW); // гасим светодиод
      blink_diod = 0;
      delay(100);
    }
    else // if (blink_diod == 0) // если диод погашен
    {
      digitalWrite(blinkPIN, HIGH); // включаем светодиод
      blink_diod = 1;
      delay(100);
    }
  }
  Serial.print(" blink_diod=");
  Serial.println (blink_diod);
  delay(100);
 }