Problema funzione Millis() e servo

Salve a tutti, Ringrazio PaoloP ed uwefed per avermi risposto e dato consigli,
proverò a riscrivere il codice sfruttando la funzione switch case anziché del solito if per rendere più pulito il codice...

Per quando riguarda la seguente funzione:

if(SOUND > 550) {
    pan.write(SOUND);
    tilt.write(SOUND);

In pratica alla porta analogica 0 di arduino è collegato un un circuito con un integrato lm358
che funge da sensore di suono a cui ho assegnato la variabile SOUND,
quando la variabile SOUND supera un certo valore inizia a muovere i servo a ritmo di musica,
so che la funzione write accetta solo valori da 0 a 180 però funziona tutto perfettamente...

per quando riguarda il problema che avevo non sono ancora riuscito a risolverlo,
dovrei far muovere i servo da 0 a 180 gradi in loop (come nell'esempio sweep di arduino), e contemporaneamente accendere e spegnere in sequenza i led RGB,
penso debba usare la funzione millis() ma non so in che modo, cioè sono riuscito ad usare la seguente funzione per
accendere e spegnere i led, nel programma_3 del codice che ho passato sopra, ma non per far muovere i 2 servo...

Ci sarebbe qualcuno che potrebbe aiutarmi?

Grazie un saluto a tutti.