Contador con Arduino Leonardo, Display 7 segmentos anodo cmn y sensor infrarojo.

Que tal Lectores.

De ante mano me disculpo, recién me regalaron un Arduino leonardo, y pues quiero utilizarlo para proyecto final de facultad, agregándolo a una linea de embotellado neumático, la cosa es que me toco la parte de programar el arduino para que un sensor infrarrojo al momento de ser interrumpido me cuente la cantidad de botellas que salen y me lo muestre en un display de 7 segmentos de anodo comun.

Nunca en mi vida eh llevado programación hasta hoy, y es básica, la cosa es que le pedí ayuda a mi profesor de programación pero solo me ayudo con poco y me explico como seguir con el ciclo de los “case”. Sin embargo no se como terminarlos.

El código es este:

int sensor=6;
int pin[]={13, 12, 11, 10, 9, 8, 7} //revisar cuales pines van a ser y cambiar si es necesario
int x, cont;
setup()
{
  for(x=0, x<7, x++)
  {
    pinMode (pin[ x ], OUTPUT); //aquí esta separado porque el foro me cambia datos pero es [sin espacio x sin espacio ]
  }
  pinMode (sensor,INPUT);
}
{
  loop ()
  sensor=digitalRead();
  if(sensor==HIGH)
  {
    cont++;
  }
  switch(cont)

  case 1;
  digitalWrite(11,HIGH); //revisar pines
  digitalWrite(8,HIGH);  //revisar pines

  case 2; 
  digitalWrite(12,HIGH);
  digitalWrite(11,HIGH);
  digitalWrite(10,HIGH);
  digitalWrite(9,HIGH);
  digitalWrite(8,HIGH);

  case 3;
 digitalWrite(12,HIGH);
 digitalWrite(11,HIGH);
 digitalWrite(10,HIGH);
 digitalWrite(7,HIGH);
 digitalWrite(8,HIGH);
 
  case 4;
  digitalWrite(13,HIGH);
  digitalWrite(10,HIGH);
  digitalWrite(11,HIGH);
  digitalWrite(7,HIGH);
  
  case 5;
  digitalWrite(12,HIGH);
  digitalWrite(13,HIGH);
  digitalWrite(10,HIGH);
  digitalWrite(7,HIGH);
  digitalWrite(8,HIGH);
  
  case 6;
  digitalWrite(12,HIGH);
  digitalWrite(13,HIGH);
  digitalWrite(10,HIGH);
  digitalWrite(9,HIGH);
  digitalWrite(8,HIGH);
  digitalWrite(7,HIGH);
  
  case 7;
  digitalWrite(13,HIGH);
  digitalWrite(12,HIGH);
  digitalWrite(11,HIGH);
  digitalWrite(17,HIGH);
  
  case 8;
  digitalWrite(13,HIGH);
  digitalWrite(12,HIGH);
  digitalWrite(11,HIGH);
  digitalWrite(10,HIGH);
  digitalWrite(9,HIGH);
  digitalWrite(7,HIGH);
  digitalWrite(8,HIGH);
  
  case 9;
  digitalWrite(13,HIGH);
  digitalWrite(12,HIGH);
  digitalWrite(11,HIGH);
  digitalWrite(10,HIGH);
  digitalWrite(7,HIGH);

Por otro lado en arduino es necesario especificar librerías?.