скетч по ардуино

azamat alimkhan
Offline
Зарегистрирован: 17.02.2016

Доброго времени суток, товарищи! Сразу признаюсь новичок))))

нужна помощь! есть 4 кнопки и 3 светодиода! необходимо сделать так чтобы при нажатии на одну кнопку загорелись все 3 светодиода! А остальные 3 кнопки при нажатии по отдельносьти на одну кнопку, должен загореться один светодиод. нужно написать программу и желательно схему подключения 

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

azamat alimkhan пишет:
нужно написать программу и желательно схему подключения

Замечательно! Нужно - пишите. 

Вопрос то Ваш в чём? Я не увидиел вопроса в Вашем посте.

 

 

Voodoo Doll
Voodoo Doll аватар
Offline
Зарегистрирован: 18.09.2016

void setup(){
  DDRD|=B00000111;
  DDRD&=B10000111;
  PORTD|=B01111000;
}
void loop(){
  if(!((PIND&B00001000)>>3)) PORTD=B00000001;
  else if(!((PIND&B00010000)>>4)) PORTD=B00000010;
  else if(!((PIND&B00100000)>>5)) PORTD=B00000100;
  else if(!((PIND&B01000000)>>6)) PORTD=B00000111;
  PORTD|=B01111000;
}

ЯД 410011919696337. 1k достаточно.

Igor23
Offline
Зарегистрирован: 04.02.2017

Если пример Voodoo Doll  для вас сложен - можно представить ещё проще

byte led1 = A2; // светодиоды
byte led2 = A3;
byte led3 = A4;
byte key1 = 2; // кнопки
byte key2 = 3;
byte key3 = 4;
byte key4 = 5;

void setup() {
  pinMode(led1, OUTPUT); // устанавливаем как выходы для светодиодов
  pinMode(led2, OUTPUT);
  pinMode(led3, OUTPUT);
  pinMode(key1, INPUT); // устанавливаем как входы для кнопок
  pinMode(key2, INPUT);
  pinMode(key3, INPUT);
  pinMode(key4, INPUT);
}

// в цикле опрашиваем кнопки и зажигаем светодиоды
void loop() {
  if(digitalRead(2)==HIGH){   // кнопка1 включить все светодиоды
    digitalWrite(led1, HIGH);
    digitalWrite(led2, HIGH);
    digitalWrite(led3, HIGH);
  }
  if(digitalRead(3)==HIGH){
    digitalWrite(led1, HIGH); // кнопка2 включить 1й светодиод
  }
  if(digitalRead(4)==HIGH){
    digitalWrite(led2, HIGH); // кнопка3 включить 2й светодиод
  }
  if(digitalRead(5)==HIGH){
    digitalWrite(led3, HIGH); // кнопка4 включить 3й светодиод
  }
  if((digitalRead(2)==HIGH)&&(led1&&led2&&led3==HIGH)) { // кнопка1 если все светодиоды уже горят - выключить все
    digitalWrite(led1, LOW);
    digitalWrite(led2, LOW);
    digitalWrite(led3, LOW);
  }                                        
}

Когда разберётесь как это работает - код можно будет оптимизировать

Alex_Sk
Offline
Зарегистрирован: 06.01.2015

А зачем для поставленной задачи Ардуина вообще? Три диода ее полностью заменят.

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

Alex_Sk пишет:

А зачем для поставленной задачи Ардуина вообще? Три диода ее полностью заменят.

А деньги попилить )))

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

ua6em пишет:

А деньги попилить )))

Вы нас с кем-то путаете - это не наш метод. Наш - пропилить!

Клапауций 112
Клапауций 112 аватар
Offline
Зарегистрирован: 01.03.2017

azamat alimkhan пишет:

Сразу признаюсь новичок))))

*кто в курсе, зачем они все говорят, что они именно "новичок", а не кто-то другой - это какой-то НЛП-код?

Voodoo Doll
Voodoo Doll аватар
Offline
Зарегистрирован: 18.09.2016

ЕвгенийП, везёт же некоторым. Не пью вообще, всю жизнь. Не длинную конечно, но начинать уже поздно. Да и нельзя мне.

Клапауций 112
Клапауций 112 аватар
Offline
Зарегистрирован: 01.03.2017

Voodoo Doll пишет:

ЕвгенийП, везёт же некоторым. Не пью вообще, всю жизнь. Не длинную конечно, но начинать уже поздно. Да и нельзя мне.

рожать будешь?

Voodoo Doll
Voodoo Doll аватар
Offline
Зарегистрирован: 18.09.2016

Жить хочу.

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

Voodoo Doll пишет:

ЕвгенийП, везёт же некоторым. Не пью вообще, всю жизнь. Не длинную конечно, но начинать уже поздно. Да и нельзя мне.

С6H5OH конечно же ЯДЪ, но если группа крови позволяет, то может немного можно?
Посмотрел хрустальный шар, нет - нельзя

Клапауций 112
Клапауций 112 аватар
Offline
Зарегистрирован: 01.03.2017

ua6em пишет:

С6H5OH конечно же ЯДЪ, но если группа крови позволяет, то может немного можно?

если не чукча и не русский, то нормальный код ДНК.

Voodoo Doll
Voodoo Doll аватар
Offline
Зарегистрирован: 18.09.2016

А, ладна. Флудить - так флудить. Модератор потрёт.

ua6em, я выгляжу так же как на аве. Всмысле 173 см, 57 кг. Синька с людьми такой комплекции делает весьма и весьма печальные вещи.

Jeka_M
Jeka_M аватар
Offline
Зарегистрирован: 06.07.2014

ua6em пишет:

С6H5OH конечно же ЯДЪ, но если группа крови позволяет, то может немного можно?

Пить Фенол? Не, нельзя при любой группе крови: "Фенол довольно токсичен для животных и человека. Относится к высокоопасным веществам (Класс опасности II). При вдыхании вызывает нарушение функций нервной системы"