variabile non si incrementa

Per semplificare di piú si potrebbe lasciar via il if e sommare lo stato del entrata direttamente alla variabile.

d=digitalRead(in);
a+=d;
delay(500);

oppure

a+=digitalRead(in);
delay(500);

ciao