a)
bist dir sicher dass dein 1 byte großer Zähler groß genug ist für die Impulse die in einer Sekunden reinkommen können?
b)
du hast so ein schönes Millis Konstrukt zur Übernahme der Variable,
warum verwendest dann für deine Serielle Ausgabe wieder einen blockierenden delay()?