7-segment display steren

Hace unos días me compré en Steren un display de 7 segmentos, el vendedor no tenia idea de si era ánodo común o cátodo común y menos el color del led y ya ni hablar de como conectarlo

Asi que hay que dar un poco de luz a los que como yo compran en Steren un display y no saben como conectarlo.

Lo primero, unos diagramas para saber como es el display, dimensiones y demás cosas que son útiles a la hora de hacer circuitos impresos, aquí viene algo muy importante: cada segmento se le asigna una letra y sigue un orden según las manecillas del reloj.

Free Image Hosting at www.ImageShack.us

A pesar de que el display en Steren lo manejan como DA03 (aunque hay DA04 y nunca me supieron decir la diferencia, capaz es el color, capaz me compro uno para averiguar) en internet el modelo lo llaman LD3011A o LD3011B dependiendo si es catado común o ánodo común. (el A es cátodo común y el B es para el ánodo común).

El orden de los pins es importantísimo, el 1 (el que esta junto al punto decimal en el display) es el ánodo común (en el LD3011B) y el pin 6 también, estos los mandamos a corriente a través de una resistencia de 110 ohm (para 5V)

Ya dependiendo si usamos un shift register o un arduino o transistores o lo que queramos va a ser el orden de los pins, siempre respetando las letras (segmentos) y el sentido de manecillas de reloj.

Free Image Hosting at www.ImageShack.us

Listo de cosas técnicas [sic], vamos a conectarlo al Arduino, tomando los puertos digitales del 2 al 9 (siempre que se pueda hay que reservar el 0 y el 1 para tx y rx)

Free Image Hosting at www.ImageShack.us

Y ponemos un poco de código en el IDE, para probar que todas las conexiones están bien, vamos a prender todos los segmentos al mismo tiempo, así que tenemos un código como este

// Prueba de display 7 segmentos DA03 de Steren
// Ivan Capdeville - ivan@darkapple.org

int F = 2;
int G = 3;
int E = 4;
int D = 5;
int Dp = 6;
int C = 7;
int B = 8;
int A = 9;

void setup()
{

  pinMode (F, OUTPUT);
  pinMode (G, OUTPUT);
  pinMode (E, OUTPUT);
  pinMode (D, OUTPUT);
  pinMode (Dp, OUTPUT);
  pinMode (C, OUTPUT);
  pinMode (B, OUTPUT);
  pinMode (A, OUTPUT);
  
  
}


void loop()
{
  digitalWrite(F, LOW);
  digitalWrite(G, LOW);
  digitalWrite(E, LOW);
  digitalWrite(D, LOW); 
  digitalWrite(Dp, LOW);
  digitalWrite(C, LOW);
  digitalWrite(B, LOW);
  digitalWrite(A, LOW);
 
}

si todo sale bien, tenemos un 8 y un punto decimal, ya después podemos hacer cosas mas interesantes con los dígitos o incluso letras (siempre que podamos representarlas con 7 segmentos)

Actualizacion

Se me olvido mencionar un detalle importante:

Al ser ánodo común el display tenemos la ventaja de usar menos resistencias (solo 2 para los pin 1 y 6) y a nivel Arduino, vamos a activar el segmento al poner nuestra salida digital como LOW en vez de HIGH, o sea, activamos con LOW y apagamos con HIGH ya que las salidas digitales deben cerrar el circuito proporcionando tierra (ground).

Pase al mismo Steren y ahora si ya entendí la diferencia entre sus display de 7 segmentos

Tienen la descripcion en el codigo:

DA = Display Anodo comun
03 = tamaño del segmento

Asi que hay tamaños 03,04 y 05 (con variaciones en la distribución de los pin)

y hay DA y DC (DC es por catodo comun)

Me compre un DA05 y en ese los pin para el ánodo común son el 3 y el 8

Al final me parece mas como el usar el display con ánodo común (por aquello de simplificar las conexiones con menos resistencias).