beh ma basta aggiornare il tempo di delay PRIMA di lanciare la funzione, e quindi lanciare la funzione.
una cosa del genere:
loop(){
if ( tempoAttesa>=millis() ){
tempoAttesa=millis()+6000;
switch (count){
case 0:[blablabla];
}
}
}