Deine Denkblockade lag daran, dass dein Sketch nach einer Ausgabe in der nixtu while Schleife hing:
unsigned long Wert=0;
while ( digitalRead ( 2 ) == LOW ) {
Serial.println ( ++Wert );
delay ( 500 );
}
sollte das tun was du beschrieben hast ( soweit ich es verstanden habe ):
Solange die Taste gedrückt ist, alle 500ms eine Zahl hochzählen und ausgeben, in 5 sec also von 1 bis 10 .
Bitte sehr

"Zeit eines Tastendrucks messen" heisst aber pulseIn(), und mit millis() oder interrupt zu arbeiten ist noch besser, da möchte ich Uwe absolut zustimmen.