Prroblema con matriz led. Leds que no funcionan

Hola a todos,

Primero de todo, comentar que soy nuevo en el mundo de la electrónica. Una vez dicho esto, expongo los antecedentes. Para fin de año me compré un kit con un Arduino Uno en el que venían entre otros componentes una matriz led de 8x8 roja. En la matriz solamente hay una inscripción que pone SH1388ASR C. Como sabréis tiene 16 pines: 8 en el lado de la inscripción y 8 en el lado opuesto. No tengo esquema de conexión pero he descubierto que el ánodo és el lado donde hay la inscripción y el cátodo el opuesto.

El tema es el siguiente: como solamente quería probar si la matriz funciona correctamente he usado el ejemplo Blink de Arduino pero modificado para que el led no parpadee. He usado una resistencia de 220 Ohm. El problema viene en que no consigo que se enciendan todos los leds. Es decir empiezo conectando el pin 1 del ánodo y voy cambiando el cable a través de los pines del cátodo. El resultado es que:

Con el pin 1 del ánodo: se encienden los leds con los pines 1, 2, 4, 6 y 7 del cátodo. No se encienden con el 3, 5 y 8
Con el pin 2 del ánodo: se encienden los leds con los pines 1, 2, 4, 6 y 7 del cátodo. No se encienden con el 3, 5 y 8
Con el pin 3 del ánodo: no se enciende ningún led con ningún pin
Con el pin 4 del ánodo: no se enciende ningún led con ningún pin
Con el pin 5 del ánodo: se encienden los leds con los pines 1, 2, 4, 6 y 7 del cátodo. No se encienden con el 3, 5 y 8
Con el pin 6 del ánodo: no se enciende ningún led con ningún pin
Con el pin 7 del ánodo: se encienden los leds con los pines 1, 2, 4, 6 y 7 del cátodo. No se encienden con el 3, 5 y 8
Con el pin 8 del ánodo: se encienden los leds con los pines 1, 2, 4, 6 y 7 del cátodo. No se encienden con el 3, 5 y 8

Como ya he dicho no soy experto pero entiendo que cualquier combinación de pines me debería de encender un led, no? De no ser así, me podríais indicar dónde está mi error?

Muchas gracias!!!

Bueno amigo, date una vuelta por las normas del foro para que veas que hay que entregar codigos, diagrams, fotos y todo lo que ayude para que entendamos bien tu problema y podamos darte una mano.

Siempre siempre siempre siempre siemmmmmmmmmmmmmprrrrrrrrrrrre busca en GOOGLE antes de preguntar.

puse en google Matrix SH1388ASR y?

Hola surbitye,

Primero de todo gracias por contestar. No puse el código porque como os comenté, estaba basado en el Blink de ejemplo de Arduino pero quitando la orden de apagado del led (usé el pin 9). De todos modos para que quede constancia lo dejo puesto:

/*
  Blink
  Turns on an LED on for one second, then off for one second, repeatedly.
 
  This example code is in the public domain.
 */
 
// Pin 13 has an LED connected on most Arduino boards.
// give it a name:
int led = 9;

// the setup routine runs once when you press reset:
void setup() {                
  // initialize the digital pin as an output.
  pinMode(led, OUTPUT);    
}

// the loop routine runs over and over again forever:
void loop() {
  digitalWrite(led, HIGH);   // turn the LED on (HIGH is the voltage level)
  delay(1000);               // wait for a second
}

Y en segundo lugar comentarte que hice la búsqueda por Google pero mi error fue que busqué solamente "SH1388ASR" y me salían suministradores del componente. Si la búsqueda la hacía más genérica como "dot matrix" o similar, me salía sobretodo gente que usaba una matriz pero con el shift register.

El esquema que aparece en el link que me pasaste (Link) lo recuerdo haber visto a través de Google Images pero no lo supe relacionar con mi matriz.... en programación aun me puedo defender pero en electrónica soy novato (4 nociones básicas básicas básicas...)

Así pues sabiendo que el esquema que me mandaste es el de mi matriz y intentando comprender el esquema, mi problema era que suponía que todos los pines de un lado de la matriz serian del 1-8 y serian para las columnas (por ejemplo) y que los del otro lado de la matriz serían del 9-16 y serían para las filas (no lo he podido comprobar). En realidad hay pines que son de de columnas y de filas en cada grupo de 8 pines... Estoy en lo correcto?

De nuevo muchas gracias.

Ya lo irás aprendiendo pero las estructuras en electrónica suelen respetarse. Si alguien hace un display de LED de 7 Segmentos muchos suelen copiarla y lo mismo con la matricial.
Hay que aprender a buscar en internet, muchas veces cuesta encontrar las palabras y si te salen datasheet y cosas asi usa el signo menos para negar esas salidas y priorizar otros resultados.
Luego es importante que lo busques en ingles mas que en español. Yo diría que estamos un 20/80 y a veces mas de diferencia español/inglés. No importa si no lo entiendes, usas el traductor google o bien solo debes ver el diagrama.

Ahora vamos a tu tarea. Intenta ver si el diagrama que te pase se ajusta a tu matricial. Debes verlo con la numeración indicada y no con la que posteaste.
Si todo va bien tienes ese código que esta el link para probarlo.
Intentalo y nos comentas.

Hola surbyte,

En cuanto el tema de las búsquedas te puedo asegurar que en el resto de temas (laborales, estudios, etc...) hago como dices. En el tema de electrónica también lo he hecho pero por falta de conocimientos o falta de práctica, etc... no supe relacionar bien la información que encontraba con mi problema...

Al tema... Ya he probado mi led según lo indicado en el link. Todo correcto así que muchas gracias. Puedo confirmar que mi error fue el de estar convencido (supongo que los pocos conocimientos que tengo me llevaron a pensar así) de que un grupo de pines (el de un lado de la matriz) eran las columnas y el otro eran las fila y no es así. En realidad, en los pines de un lado hay unos pins tanto para filas como para columnas y lo mismo en el otro grupo. Para los que ya lo sabéis igual esto lo veis muy básico pero lo quiero dejar escrito por si le puede servir a alguien.

Y para finalizar querría hacer una pregunta relacionada con el tema que seguro que encontráis bien sencilla pero a mi ahora se me hace extraña. En el poco tiempo que llevo me ha quedado claro que el led tiene que tener una tensión determinada y que generalmente habrá que acompañarlo con una resistencia. Entonces, porqué el ejemplo que hay en el link que os he puesto en el que solamente se enciende un solo led, no usa ninguna resistencia? Es un error y lo que hago es reducir su vida útil o tiene un porqué?

De nuevo muchas gracias!

es simple y se debe a que los pines del arduino no entregan mas de 40mA. Como el sketch funciona de modo que no todos estan prendidos al mismo tiempo sino que la velocidad de barrido es tan alta que a nosotros nos da esa sensación pero en realidad todo ocurre de a 1, por lo tanto no superamos el máximo de corriente del arduino y no quemamos nada.
Si lo usas externo, usa resistores de limitación con 220 ohms estaras bien, solo en filas o columnas, no en ambas.

Un buen ejemplo de lo que te digo

Todo el articulo para que lo consultes

Hola surbyte,

Muchas gracias por el apoyo!

Saludos!