Конфликт команды Serial.begin() и реле
- Войдите на сайт для отправки комментариев
Пнд, 21/10/2019 - 01:27
При использовании Serial.begin() отваливается одна из реле на модуле реле, при этом мерцает индикатор и замыкается контакт примерно каждую секунду. Все остальные реле работают как надо. Реализуется это всё в проекте автоматизированного полива.
Вот сам модуль реле:
https://sun9-23.userapi.com/c857624/v857624288/b504f/0hNVYg7F5E4.jpg
И код:
#define PIN_RELAY1 1
#define PIN_RELAY2 2
#define PIN_RELAY3 3
void setup()
{
Serial.begin(9600);
pinMode(PIN_RELAY1, OUTPUT); // Объявляем пин реле как выход
digitalWrite(PIN_RELAY1, HIGH); // Выключаем реле - посылаем высокий сигнал
pinMode(PIN_RELAY2, OUTPUT); // Объявляем пин реле как выход
digitalWrite(PIN_RELAY2, HIGH); // Выключаем реле - посылаем высокий сигнал
pinMode(PIN_RELAY3, OUTPUT); // Объявляем пин реле как выход
digitalWrite(PIN_RELAY3, HIGH); // Выключаем реле - посылаем высокий сигнал
}
void loop()
{
int val1 = 0;
int val2 = 0;
val1 = analogRead(0);
val2 = analogRead(1);
val1 = map(val1, 327, 1023,100, 0);
val2 = map(val2, 327, 1023,100, 0);
Serial.println(val1);
Serial.println(val2);
if(val1 < 40)
{
digitalWrite(PIN_RELAY3, LOW);
delay(2000);
}
else
{
digitalWrite(PIN_RELAY3, HIGH);
}
delay(500);
if(val2 < 40)
{
digitalWrite(PIN_RELAY2, LOW);
delay(2000);
}
else
{
digitalWrite(PIN_RELAY2, HIGH);
}
}
Для начала сравните, какие пины использует Serial, и какие - реле.
Помогло, разобрался, спасибо большое!