Hola, tenemos un proyecto de un carro controlado con un sensor infrarrojo, hemos ido modificando el código y verificando que nuestro diagrama este bien, pero, a la hora de cargar el código a la placa Arduino, en seguida uno de los motores arranca sin que le hayamos dado la orden con el control de infrarrojo, hemos verificado y cambiado, pero, no encontramos el error, solo regresamos a donde mismo. Suponemos que el error podría estar en el código, lo dejo acá.
#include <IRremote.h>
#define Boton_2 0xE718FF00
#define Boton_4 0xF708FF00
#define Boton_6 0xA55AFF00
#define Boton_8 0xAD52FF00
int SENSOR = 11;
IRrecv irrecv(SENSOR);
decode_results results;
int motor_izquierda = 7;
int motor_derecha = 8;
void setup()
{
Serial.begin(9600);
IrReceiver.begin(SENSOR, DISABLE_LED_FEEDBACK);
pinMode(motor_izquierda, OUTPUT);
pinMode(motor_derecha, OUTPUT);
}
void loop ()
{
if (IrReceiver.decode()) { // si existen datos ya decodificados
Serial.println(IrReceiver.decodedIRData.decodedRawData, HEX);;
irrecv.resume();}
delay(100);
if(results.value == 0xE718FF00){ //////////para avanzar
digitalWrite(motor_izquierda, HIGH);
digitalWrite(motor_derecha, HIGH);
}
if(results.value == 0xAD52FF00){ //////////para detenerse
digitalWrite(motor_izquierda, LOW);
digitalWrite(motor_derecha, LOW);
}
if(results.value == 0xF708FF00){ //////////para girar a la DERECHA
digitalWrite(motor_izquierda, HIGH);
digitalWrite(motor_derecha, LOW);
}
if(results.value == 0xA55AFF00){ //////////para girar a la izquierda
digitalWrite(motor_izquierda, LOW);
digitalWrite(motor_derecha, HIGH);
}
}