// Como uso pines analógicos necesito poner resistencias pulldown de 15 kohm en cada fotodetector.
// Además hay que poner una resistencia de 180 ohm en el diodo.
// El estado 0 significa que no está midiendo nada.
// El estado 1023 (o casi) significa que el sensor está midiendo algo.
#define pin_sensor_1 A1
#define pin_leds_IR 8
int contador_tercios_de_vuelta = 0;
int umbral_de_deteccion = 800; // Más o menos 4 V.
boolean deteccion_sensor_1 = false;
int estado_sensor_1_actual = 0;
int estado_sensor_1_actual_IR = 0;
int estado_sensor_1_actual_Ruido = 0;
int estado_sensor_1_anterior = 0;
void setup(){
  Serial.begin(9600);
  pinMode(pin_led_IR, OUTPUT);
  digitalWrite(pin_led_IR, LOW);
}
void loop(){
  digitalWrite(pin_transistor_leds_IR, HIGH);
  delay(1);
  estado_sensor_1_actual_IR = analogRead(pin_sensor_1);
  estado_sensor_2_actual_IR = analogRead(pin_sensor_2);
  estado_sensor_3_actual_IR = analogRead(pin_sensor_3);
  digitalWrite(pin_transistor_leds_IR, LOW);
  delay(1);
  estado_sensor_1_actual_Ruido = analogRead(pin_sensor_1);
  estado_sensor_2_actual_Ruido = analogRead(pin_sensor_2);
  estado_sensor_3_actual_Ruido = analogRead(pin_sensor_3);
  estado_sensor_1_actual = estado_sensor_1_actual_IR - estado_sensor_1_actual_Ruido;
  estado_sensor_2_actual = estado_sensor_2_actual_IR - estado_sensor_2_actual_Ruido;
  estado_sensor_3_actual = estado_sensor_3_actual_IR - estado_sensor_3_actual_Ruido;
  Serial.print("IR: ");
  Serial.print(estado_sensor_1_actual_IR);
  Serial.print(",");
  Serial.print("Ruido: ");
  Serial.print(estado_sensor_1_actual_Ruido);
  Serial.print(",");
  Serial.print("Filtrado: ");
  Serial.println(estado_sensor_1_actual);
}