Problema con contador Arduino

Buenas a todos, estoy empezando con arduino ,mi problema es el siguiente, quiero hacer un programa con un contador de pulsos,es decir que presionando un boton vaya aumentando el contador asta 10 y iluminando con cada pulsacion un led,y que estos numeros de 1 al 10 salgan en la pantalla lcd,al llegar a 10 aunque se pulsase el boton no siga contando ni ilumine el led y que tenga que apretar el boton de reset para que vuelva a cero.
He conseguido que funcione el contador y que salga en la pantalla lcd,pero cuando intento programar que pare,me salen signos raros y los numeros del contador me salen seguidos(1234567)en lugar de salir solo el 1, luego el 2 ....
Dejo aqui lo que he conseguido hacer funcionar,si alguien sabe como poner los numeros en la lcd de uno en uno y que se pare a los 10 pulsos

#include <LiquidCrystal.h>
LiquidCrystal lcd(1,2,4,5,6,7);
int salida=13;
int entrada=8;
int contador=0;

void setup()
{
lcd.begin(16,2);
lcd.print ( "LASER INSTRUCTOR");
delay(3000);
lcd.clear();
lcd.print(" DISPAROS ");
lcd.setCursor(4,1);
Serial.begin(9600);
pinMode(salida, OUTPUT);
pinMode(entrada, INPUT);
}

void loop()
{

if (digitalRead(entrada)==HIGH)
{

digitalWrite(salida, HIGH);

while (digitalRead(entrada)==HIGH )
{ delay(10); }

if (digitalRead(entrada)==LOW)
{ digitalWrite(salida, LOW);
contador++;
lcd.print(contador);

}
}
}

Siento las molestias jeje y gracias de todas maneras.

Veo que no te detuviste a leer las normas del foro y solo posteaste lo que es de tu interés.
Este consulta será movida a Software.
No reune las condiciones de la sección Proyectos.
Además si posteas un código debes usar la etiqueta de códigos que es esta asi que edita y usala por favor!!
Normas del foro