mettere in pausa arduino finchè non riceve un dato da seriale

Si. Puoi bloccare l'esecuzione con un while. Come scritto nel primo codice.

while (Serial.available() > 0);

Finché non si riceve un carattere dalla seriale il codice rimane bloccato nel ciclo while