Buenas noches, soy nuevo en arduino y ando haciendo un app que controle el encendido y apagado de 2 reles, el problema esta en que apenas le mando corriente a la placa de arduino, los 2 reles se encienden y no están en reposo. E visto algunos videos donde explican que el problema es que los reles están con logica inversa, quería saber como hacer que mi código funcione para esa lógica, o otra posible solución.
const int alimentador = 2;
const int oxigenador = 3;
int estado = 'n';
void setup() {
Serial.begin(9600);
pinMode(alimentador, OUTPUT);
pinMode(oxigenador, OUTPUT);
// put your setup code here, to run once:
}
void loop() {
if (Serial.available() > 0) {
estado = Serial.read();
}
if (estado == 'a') {
digitalWrite(alimentador, HIGH);
}
if (estado == 'b') {
digitalWrite(alimentador, LOW);
}
if (estado == 'c') {
digitalWrite(oxigenador, HIGH);
}
if (estado == 'd') {
digitalWrite(oxigenador, LOW);
}
// put your main code here, to run repeatedly:
}escribe o pega el código aquí
Hola, si estas seguro que las placas funciona con logica inversa en tu codigo donde ponga HIGH cambialo a LOW y donde ponga LOW pon HIGH, Y añade como ultimas lineas del setup:
Moderador:
Por favor, lee las Normas del foro y edita tu código usando etiquetas de código.
Ve a edición, luego selecciona todo el error que has publicado, lo cortas y click en </>
También corrige el título. El titulo con palabras como estas " Ayuda con " debe modificarse.
Ver punto 5 de las Normas del foro.
Por favor, no sigas respondiendo sin antes hacer las correcciones.
¿Podés poner el modelo del módulo, link a una página que tenga uno como el tuyo (tal vez donde lo compraste) o una foto en lo posible de arriba para ver los componentes y tratar de identificarlo?
void setup() {
Serial.begin(9600);
pinMode(alimentador, OUTPUT);
pinMode(oxigenador, OUTPUT);
// put your setup code here, to run once:
digitalWrite(alimentador, HIGH); // para que arranque apagado
digitalWrite(oxigenador, HIGH); // lo mism
}