[HELP] Filtro software anti-polvere per fotocellula

Ho modificato con il millis() e work fine, per ora me lo faccio andare bene.

if (Fotocellula_1 == 0)
  {
     if(millis() - milli_precedente > intervallo)
      {
       ++contatore;
       if(contatore == 999) contatore = 0;
       Riempi();
       while(Fotocellula_1 == 1)
            {
              Fotocellula_1 = digitalRead(in_NPN);
             } 
       }     
    }