ARDUINO Датчики припятствия

svetos

✩✩✩✩✩✩✩
2 Май 2022
2
0
Помогите написать программу. Есть 2 датчика припятствия, когда один замечает объект он должен всегда подавать плюс(даже если объекта уже нет на другом пине должен быть плюс), как только другой датчик замечает объект, то он убирает плюс с этого пина. P.S Плюс должен быть на 13 пине датчики на 2 и 9. Заранее благодарю за помощь.
 

viktor1703

★★★✩✩✩✩
9 Дек 2021
531
131
Если датчик1, например, на пин 2, увидел препятствие, то зажечь светодиод if (digitalRead(2)) { digitalWrite(13, HIGH);} Появилось препятствие на датчике2, пин 9, погасить светодиод if ( digitalRead(9)) {digitalWrite(13, LOW);}
Как-то так.
 

svetos

✩✩✩✩✩✩✩
2 Май 2022
2
0
Если датчик1, например, на пин 2, увидел препятствие, то зажечь светодиод if (digitalRead(2)) { digitalWrite(13, HIGH);} Появилось препятствие на датчике2, пин 9, погасить светодиод if ( digitalRead(9)) {digitalWrite(13, LOW);}
Как-то так.
да я так пробывал не получилось он загает светоидиод только когда датчик видит предмет и я не знаю почему но светоидиод тухнет как только датчик его не видит
 

minash87

✩✩✩✩✩✩✩
1 Мар 2022
32
1
@svetos,
Вроде так:
#define Sens1 2      // Первый датчик препятствия и его пин
#define Sens2 9      // Второй датчик препятствия и его пин
#define Ind 13    // Индикатор прохода и его пин

void setup() {
  pinMode(Sens1, INPUT);    // Режим работы пина - вход
  pinMode(Sens2, INPUT);    // Режим работы пина - вход
  pinMode(Ind, OUTPUT);  // Режим работы пина - выход
}

void loop() {
  if (digitalRead(Sens1) == HIGH) digitalWrite(Ind, HIGH);  // Если есть сигнал на первом датчике, включить индикатор
  if (digitalRead(Sens2) == HIGH) digitalWrite(Ind, LOW);    // Если есть сигнал на втором датчике, выключить индикатор
}
 

viktor1703

★★★✩✩✩✩
9 Дек 2021
531
131
Значит на Sens2 что-то появляется высокий уровень. Ведь в коде только при одном условии (Sens2==HIGH) светодиод должен отключаться.
 

poty

★★★★★★✩
19 Фев 2020
2,956
886
Как подключены датчики и светодиоды? Я не исключаю, что логика датчиков или светодиодов инвертирована.
 

viktor1703

★★★✩✩✩✩
9 Дек 2021
531
131
я так пробывал не получилось
Этот код полностью отвечает твоему заданию датчик1 включает светодиод, датчик2 отключает. Если светодиод тухнет сразу, как только датчик1 перестает видеть препятствие, значит с датчика2 идёт сигнал (постоянно) (неисправен датчик2 или ошибка в подключении или ещё что-нибудь). Сколько вольт на Пине 9 когда датчик2 видит/не видит препятствие?