Как разделить режимы с использованием flag с одной кнопки на три кнопки

Вот так, правильный исходник поправил.

Оффтоп:
Тут последние сообщения на столько разно-инверсные, что я их читать стал «по ролям» (сам придумывая голос, индивидуальности речи. Которые, конечно же воспроизвести не смогу). Это признак шизофрении? Кстати, очень получается «живо» и интереснее.)))

Так, кнопки заработали, сейчас только окончательно режимы донастрою и скажу результат, что вышло. Чтобы не было недопониманий.

так как описано в коде, так и должны работать - это не всегда совпадает с желанием :slight_smile:

Это уж точно.

Огромное спасибо товарищи, что помогли исправить код и схему, что важно. А также за уделенное время. Постараюсь получше изучить синтаксис, да и в целом С+! :slightly_smiling_face:

Все заработало. Просто добавил еще режим! Возможно кому-то понадобиться помощь, может пригодится)

int R_LedPin = 2;             // Подключаем красный светодиод к порту 2
int Y_LedPin = 3;             // Подключаем зеленый светодиод к порту 3
int ButPin = 8;               // Подключаем кнопку 1 к выходу 7
int ButPin2 = 7;              // Подключаем кнопку 2 к выходу 8
int ButPin3 = 6;              // Подключаем кнопку 3 к выходу 6
int flag = 0;                  // флаг состояния
int regim = 0;                 // Переключалка

void setup()
{
  pinMode(R_LedPin, OUTPUT);   
  pinMode(Y_LedPin, OUTPUT);
  // Установили тип пина
  pinMode(ButPin, INPUT_PULLUP);
  pinMode(ButPin2, INPUT_PULLUP);
  pinMode(ButPin3, INPUT_PULLUP);
 
}  

void loop()
{ 
if(digitalRead(ButPin) == LOW )
  {                                                 
      regim = 1;
        }
if(digitalRead(ButPin2) == LOW )
  {                                                 
      regim = 2;
        }
if(digitalRead(ButPin3) == LOW )
  {                                                 
      regim = 3;
        }          
   
// ======= Вполняем задачу при выборе режима =======
// РЕЖИМ 0: OFF
  if(regim == 0)
    {
      digitalWrite(R_LedPin, LOW);
      digitalWrite(Y_LedPin, LOW);
    }
    
// РЕЖИМ 1: R
  if(regim == 1)
    {
      digitalWrite(R_LedPin, HIGH);
      digitalWrite(Y_LedPin, LOW);
      delay(1000);
      digitalWrite(R_LedPin, LOW);
      digitalWrite(Y_LedPin, HIGH);
      delay(1000);  
    }

// РЕЖИМ 2: Y
  if(regim == 2)
    {
      digitalWrite(R_LedPin, HIGH);
      delay(1000);
      digitalWrite(R_LedPin, LOW);
      delay(1000);
      digitalWrite(Y_LedPin, HIGH);
      delay(100);
      digitalWrite(Y_LedPin, LOW);
      delay(100);

    }
        // РЕЖИМ 3: RY
  if(regim == 3)
    {
      digitalWrite(R_LedPin, HIGH);
      digitalWrite(Y_LedPin, LOW);
      delay(100);
      digitalWrite(R_LedPin, LOW);
      digitalWrite(Y_LedPin, HIGH);
      delay(100);
    }
  }

Сколько ещё бОльших открытий дивных подарит мир программирования!

И не говорите)

и Мультиметр купите, если и дальше собираетесь что-то делать. Штука полезная, да и пользоваться научиться лишним не будет.

Хорошо, учту!

Еще раз огромное вам спасибо! :slightly_smiling_face:

а здесь ваше творение можно посмотреть в симуляторе

Один из множества, кому хочется верить, процентов на 50. Но и то!)))

Очень удобно, спасибо за наводку на будущее!

Во всяком случае, можете быть уверены, что есть мотивация разбираться дальше, т.к. тема интересная)

Охотно верю и могу только пожелать удачи в освоении!!