Помогите со скетчем

Тема в разделе "Посоветуйте детальки", создана пользователем Тимати, 22 ноя 2017.

  1. Тимати

    Тимати Нерд

    Нужно сделать так чтобы при пятикратном нажатии кнопки, светодиод включался, а при однократном выключался. Написал скетч, но не работает
     
  2. Тимати

    Тимати Нерд

    01 int knopka=0;
    02
    03 void setup ()
    04
    05 {
    06
    07 pinMode(13,OUTPUT);
    08 pinMode(2,INPUT);
    09 pinMode(3,INPUT);
    10
    11 }
    12
    13
    14 void loop()
    15
    16 {
    17 if(digitalRead(2)==HIGH)
    18
    19 {
    20 knopka++;
    21 delay(500);
    22
    23 }
    24 if(knopka>=4)
    25
    26 {
    27 digitalWrite(13,HIGH);
    28
    29 }
    30
    31
    32 if(digitalRead(2)==HIGH&&knopka>=4)
    33
    34 {
    35 knopka=0;
    36
    37 }
    38 if(knopka<4)
    39
    40 {
    41 digitalWrite(13,LOW);
    42
    43 }
    44
    45
    46 }
     
  3. Tomasina

    Tomasina Сушитель лампочек Модератор

    Вставьте скетч нормально, без нумерации и в тег КОД
     
  4. Тимати

    Тимати Нерд

    Он у меня без нумерации, это тут так получилось
     
  5. null

    null Гик

    Код (C++):
    int knopka=0;
    void setup ()
    {
    pinMode(13,OUTPUT);
    pinMode(2,INPUT);
    pinMode(3,INPUT);
    }
    void loop()
    {
    if(digitalRead(2)==HIGH)
    {
    knopka++;
    delay(500);
    }
    if(knopka>=4)
    {
    digitalWrite(13,HIGH);
    }
    if(digitalRead(2)==HIGH&&knopka>=4)
    {
    knopka=0;
    }
    if(knopka<4)
    {
    digitalWrite(13,LOW);
    }
    }
    @Тимати вот это код
     
  6. ImrDuke

    ImrDuke Гик

     
  7. Тимати

    Тимати Нерд

    Когда я его залил то после третьего нажатия светодиод загорается, но если кнопку отпустишь тухнет. Почему это? Как это исправить
     
  8. vvr

    vvr Инженерище

    а что такое пятикратное нажатие, объясните.

    да, и не плохо перед началом программирования кнопки почитать что такое дребезг контактов и как с этим бороться.
     
  9. DetSimen

    DetSimen Guest

    и как бедной Дуне отличить хотел ты 1 раз кнопку нажать, или 5?
     
    Airbus нравится это.
  10. Тимати

    Тимати Нерд

    У меня получилось что, после пятого нажатия светодиод действительно загорался, но когда отпускаешь кнопку он гаснет. Как это исправить
     
  11. shpock

    shpock Гик

    Вот идеальное видео по теме.
    http://wiki.amperka.ru/видеоуроки:2-кнопки-pwm-функции
     
  12. Аппаратная фильтрация сигнала нажатия при помощи триггера Шмидта:


     
  13. ARDUIN-щик

    ARDUIN-щик Гик

    У меня с этим триггером Шмидтом не заладилось, лучше себя показал конденсатор с резистором, но без триггера
     
  14. Airbus

    Airbus Радиохулиган Модератор

    Аппаратная хорошо а програмная лучше!А вместе еще лучше.