помогите со скетчем arduino nano

Тема в разделе "Arduino & Shields", создана пользователем eg12, 21 мар 2018.

  1. eg12

    eg12 Нуб

    у меня есть 2 скетча , как сделать так чтобы при нажатии тактовой кнопки эти коды переключались между собой. сначала запускался 1 а со вторым нажатием другой а первый отключался
     
    Последнее редактирование: 21 мар 2018
  2. b707

    b707 Гуру

    Например, оформить каждый код в виде функции, а в loop() запускать то один, то другой по нажатию кнопки
     
    eg12 нравится это.
  3. eg12

    eg12 Нуб

    спасибо , попробую
     
  4. Tomasina

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

    Код (C++):
    void code1()
    {
       // тут первый код
    }

    void code2()
    {
       // тут второй код
    }

    loop()
    {
       static byte variant = 1;
       if(BUTTON_PRESSED) variant = ++variant%2 + 1;

       switch(variant)
       {
         case 1: code1(); break;
         case 2: code2(); break;
       }
    }
     
  5. ostrov

    ostrov Гуру

    Да, но при этом требуется, чтобы каждый код не зацикливался внутри функции, а проскакивал насквозь.
     
  6. parovoZZ

    parovoZZ Гуру

    Что за бред? Частота обхода лупа в ардуино какая? Вот с такой скоростью и будут переключаться ваши функции. А ещё не забывайте про дребезг. Но им можно пренебречь в данной реализации)))) горе инженеры)))))
     
  7. eg12

    eg12 Нуб

    здравствуйте , мне нужно чтобы по второму нажатию кнопки 1 код заканчивался .
    Я работаю с дисплеем tm1637 , поэтому нельзя чтобы два кода выполнялись одновременно иначе будет ошибка.
    спасибо!