0504 knopka

Материал из УМКИwiki
Перейти к навигации Перейти к поиску
 //////////////////////////////////////////////
 //     2023.11.17 woronin,  umkiedu@gmail.com
 //     работа с кнопкой и переменной  различие между  INPUT_PULLUP,   и output
 //     Robot UMKI controller  K6_3
 //     делаем чтобы диод зажигался по первому нажатию, и гас по второму
 //////////////////////////////////////////////
 int knopkaPIN = 6;
 int 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);
 }