encender y apagar led cuando no tenga datos que enviar

compañeros tengo un proyecto de mi arduino con display 2x16 el cual recibo datos de una tarjeta externa en intervalos de 3 segundos aveces 1 segundo cada dato y lo guardo en una SD, el caso es que el dato que envio lo muestra en el display, pero quisiera que despues d unos 10 segundos que no este enviado datos,se apage un led y cuando nuevamente este enviando datos se vuelva encender hasta que detecte que si despues de 10 segundos no hay datos se apage el led.
Todo este lo quisiera hacer para conectarlo al led del display y evitar que mi bateria se descarge pues aveces esta horas sin enviar datos y el display permanece encendido.

  if(Serial.available()> 5){
    contaSd = 0;
    conta++;
  myFile = SD.open("BALANZA.csv", FILE_WRITE);
   
  while  (Serial.available()) {
  caracter = Serial.read();
  
  //Escribimos en el fichero de la siguiente manera: 

  myFile.write(caracter);//guardamos el peso
  delay(1);// esperamos una milesima de segundo
}
  //}
  myFile.print("DATO");
  myFile.print(" ");
  myFile.print("NUMERO"); 
  myFile.print(" ");  
  myFile.println(conta); 
 

   // Cerramos el fichero  
    myFile.close(); //cerramos archivo
      
 
    
  } 
  //mostramos la hora y numero de pesada en el display 

 
  lcd.setCursor(0,0);
  lcd.print("DATO"); 
  lcd.print(" ");
  lcd.print(conta);

Pues lo que puedes hacer es antes de ir a imprimir los datos en el display poner led=ON usar la funcion millis() para guardar el valor actual de tiempo, luego comparas ese valor con millis()+10000 y si se cumple pones led=OFF.

Ejemplo:

1.- recibo dato
2.- Enciendo LED
3.- Guardo el valor de millis en una varaiible: Ej. tiempo = millis();
4.- Imprimo en LCD el valor recibido;
5.- SI (millis()>(tiempo+10000)) entonces apago LED (he puesto 10000 porque querias 10Seg.)

Ahora solo has de transformar esto a código e implementarlo en tu programa.

gracias compañero voy a intentar hacerlo…

ok, ya comentaras resultados.