(NOVATO) display de 7 segmentos

hola soy nuevo en esto y necesito ayuda con poner un push butom para iniciar un contador del 0 al 9 con un display del 0 7 aquí esta lo que llevo pero no logro que funcione ademas necesito que al llegar al 9 se detenga

*const int entrada = 2; *
const int salida = 3;
int buttonState = 0; //estado del push buttom
void setup()
{

  • pinMode(entrada, INPUT);*
  • pinMode(salida, OUTPUT);*
  • pinMode(6, OUTPUT); // Asignación de las salidas digitales*
  • pinMode(7, OUTPUT);*
  • pinMode(8, OUTPUT);*
  • pinMode(9, OUTPUT);*
  • pinMode(10, OUTPUT);*
  • pinMode(11, OUTPUT);*
  • pinMode(12, OUTPUT);*
    }
    void display (int a, int b, int c, int d, int e, int f, int g)
    // Funcion del display
    {
  • digitalWrite (6,a); //Se reciben 7 variables y se asignan*
  • digitalWrite (7,b); *
  • digitalWrite (8,c);*
  • digitalWrite (9,d);*
  • digitalWrite (10,e);*
  • digitalWrite (11,f);*
  • digitalWrite (12,g);*
    }
    void loop() //Funcion principal
    {
  • // read the state of the pushbutton value:*
  • buttonState = digitalRead(entrada);*
  • if (buttonState == HIGH) { *
  • digitalWrite(salida, HIGH); *
  • }*
    {
  • display (0,0,0,0,0,0,1); //escribe 0*
  • delay(500);*
  • display (1,0,0,1,1,1,1); //escribe 1*
  • delay(500);*
  • display (0,0,1,0,0,1,0); //escribe 2*
  • delay(500);*
  • display (0,0,0,0,1,1,0); //escribe 3*
  • delay(500);*
  • display (1,0,0,1,1,0,0); //escribe 4*
  • delay(500);*
  • display (0,1,0,0,1,0,0); //escribe 5*
  • delay(500);*
  • display (0,1,0,0,0,0,0); //escribe 6*
  • delay(500);*
  • display (0,0,0,1,1,1,1); //escribe 7*
  • delay(500);*
  • display (0,0,0,0,0,0,0); //escribe 8*
  • delay(500);*
  • display (0,0,0,1,1,0,0); //escribe 9*
  • delay(500);*

}
}

Por favor, publique esto en el foro español. Las palabras no se traducen muy bien para entender lo que quieres hacer.

Gracias.
El Moderator