domingo, 20 de enero de 2019

Arduino: Display 7 segmentos

En esta entrada veremos como funciona un display de 7 segmentos con Arduino




Código;


//array con los pines donde van conectados los segmentos
int ledes[8]={2,3,4,5,6,7,8,9};

/* array con las combinaciones de encendido/apagado para cada núnero
      pin 2
   **********
 8 *        *3
   *   9    *
   **********
 7 *        *4
   *        *
   **********  * 5
       6
*/
int numeros[10][8]={
  //0
  {1,1,1,1,1,1,1,0},
  //1
  {0,1,1,1,0,0,0,0},
  //2
  {1,1,0,1,1,1,0,1},
  //3
  {1,1,1,1,1,0,0,1},
  //4
  {0,1,1,1,0,0,1,1},
  //5
  {1,0,1,1,1,0,1,1},
  //6
  {0,0,1,1,1,1,1,1},
  //7
  {1,1,1,1,0,0,0,0},
  //8
  {1,1,1,1,1,1,1,1},
  //9
  {1,1,1,1,0,0,1,0},
};

void setup() {
  for(int i=2;i<10;i++){ 
  pinMode(i,OUTPUT);  //modo de salida para todos los segmentos
  }
}

void loop() {
  // vamos recorriendo el array. Si es 0 no se enciende el led (segmento)
  //si es 1 se enciende el led (segmento)
  for(int i=0;i<10;i++){
    for (int j=0;j<8;j++){
       digitalWrite(ledes[j],numeros[i][j]);
    }
    delay (1000);  //esperamos 1 segundo
 }
}

No hay comentarios:

Publicar un comentario