Sensor de flujo de analógico a digital.

Buenas tardes,

Necesito ayuda con un sensor de flujo. Tengo puesto que cuando fluye me activa un led (simula un relé). Necesito que, cuando el nivel de flujo sea decreciente, pare de darme señal digital el led.
Tampoco estoy segura si coger la señal de la lectura del serial es buena idea, pero no he conseguido cogerla directamente del analogread del sensor.

Os estoy muy agradecida.

volatile int Contador; //variable que cuenta los pulsos
int PinSensor = 2;    // pin donde se conecta  el sensor


// función a ejecutarse en cada interrupción
void pulso ()
{
Contador++;
}

long funcion(void)
{
long cantidad;
Contador = 0;
interrupts();
delay(100);  //Se inician las interrupciones y se cuentan los pulsos
noInterrupts();//se suspenden las interrupciones
cantidad=10*Contador; // pulsos por segundo
return cantidad;
}

void setup()
{
pinMode(13, OUTPUT); //el led que simula el relé
Serial.begin(9600);
pinMode(PinSensor, INPUT);
attachInterrupt(0,pulso,RISING); // inicializamos las interupciones

}

void loop ()
{  if(Contador > 15.50) {       // Si el flujo esta por encima del parámetro >
  digitalWrite(13, HIGH);        // Enciende el led o relé
} else {                         // De lo contrario, si el flujo está por debajo del parámetro
  digitalWrite(13, LOW);         // Apaga el led o relé
  }
float frecuencia=funcion(); //frecuencia de los pulsos
float Caudal=frecuencia/7.5; //calculamos el caudal en L/m

Serial.print ("Flujo de agua: ");
Serial.println (Caudal);

  
}

Hola @albaaroiig, bienvenido al foro Arduino en Español.
Te invito a que leas las normas del foro y en ellas encontrarás como se deben postear los códigos/errores. Así como lo has hecho esta mal presentado.
Por favor, edita.

Vale, muchas gracias. Ya lo he editado. Disculpa las molestias.

Primero algunas correcciones según lo que he leído en tu comentario.
Ese sensor no entrega datos analógicos asi que de ningún modo puedes leer algo proporcional al caudal de ese modo.

Si quieres establecer una secuencia decreciente, solo debes comparar valores actuales con el anterior.
Podríamos incluso asegurarnos que hay al menos 5 muestras decrecientes como para enviar un msg via LED de que el caudal decrece.

No esta probado así que ya me dirás si funciona o no

#define NUMDEC   10   // canitdad de valores decrecientes
int PinSensor = 2;    // pin donde se conecta  el sensor
volatile  int Contador; //variable que cuenta los pulsos
long contadorAnt;
byte numDec = 0;
volatile bool flag = false; // se pone en true cuando la secuencia es decreciente en N grupos de números


// función a ejecutarse en cada interrupción
void pulso () {
  Contador++;
}

long funcion(void) {
  long cantidad;
  Contador = 0;
  interrupts();
  delay(100);  //Se inician las interrupciones y se cuentan los pulsos
  noInterrupts();//se suspenden las interrupciones
  cantidad = 10*Contador; // pulsos por segundo
  if (contador < contadorAnt) {
      contadorAnt = cantidad;
      if (++numDec >= NUMDEC)  // cuando se cuenten N valores decrecientes se activa el flag
          flag = true;
  }
  else {
      numDec = 0;
      flag = false;
  }

  return cantidad;
}

void setup() {
  pinMode(13, OUTPUT); //el led que simula el relé
  pinMode(12, OUTPUT); // Led que indica secuencia descendente
  Serial.begin(9600);
  pinMode(PinSensor, INPUT);
  attachInterrupt(0,pulso,RISING); // inicializamos las interupciones

}

void loop () {  

  if (Contador > 15.50) {            // Si el flujo esta por encima del parámetro >
      digitalWrite(13, HIGH);        // Enciende el led o relé
  } else {                           // De lo contrario, si el flujo está por debajo del parámetro
      digitalWrite(13, LOW);         // Apaga el led o relé
  }
  if (flag)
      digitalWrite(12, HIGH);        // secuencia decreciente
  else 
      digitalWrite(12, LOW);
  float frecuencia = funcion(); //frecuencia de los pulsos
  float Caudal = frecuencia/7.5; //calculamos el caudal en L/m

  Serial.print ("Flujo de agua: ");
  Serial.println (Caudal);
}

Muchas gracias. Cuando lo pruebe te lo comunico.