En este artículo voy a explicar mis pruebas con una matriz de LEDs RGB de las que se encuentran baratas en Aliexpress, que son paneles rectangulares de 32×32, 64×32 ó 64×64 pixels normalmente. En Internet se puede encontrar información sobre su funcionamiento pero hay varios modelos que no funcionan de la misma manera y no todas las explicaciones me han servido con el panel que muestro aquí, que es uno catalogado como P3-6432, que significa LEDs con una separación de 3 mm y de 64 pixels en horizontal y 32 pixels en vertical. Sólo he probado éste pero en teoría otros paneles con distintas separaciones o número de LEDs deberían funcionar de igual forma.
Para hacer funcionar estos paneles hay que tener las siguientes consideraciones:
- Las conexiones internas de los LED no son como en una cadena WS8211. En cambio se organizan por filas pero no de forma lineal, sino más compleja. El conector para enlazarlo con el microcontrolador tiene 16 patillas y se necesitan varias en el microcontrolador para hacerlo funcionar. En definitiva, es recomendable usar una librería. La que me ha funcionado mejor es la PxMatrix, que se puede descargar en el enlace de github: https://github.com/2dom/PxMatrix
- Para un panel de 64×32 significa 2048 pixels, y RGB quiere decir que hay que transmitir 2048×3 bytes de información en una pantalla y rápidamente para que no se noten las imágenes con poca calidad. Eso es mucha información para un microcontrolador Arduino, así que lo recomendable es usar otro del tipo ESP o superior. Aquí se ha hecho la prueba con un ESP32.
- Un panel de este tipo con los LEDs encendidos puede consumir mucha corriente así que hay que usar una fuente de alimentación externa. No se puede usar a través del microcontrolador. Además la tensión de uso es de 5 V y el ESP funciona a 3.3 V.
Dicho esto, hay que hacer unas conexiones de cableado adecuadas, porque se conectan varios entre la pantalla y el microcontrolador. Para esto nos tenemos que fijar en la información que aparece en el siguiente instructable:
https://www.instructables.com/Arduino-WiFi-Tetris-Clock/?utm_source=newsletter&utm_medium=email
El panel LED tiene dos conectores, uno marcado P in o similar y otro marcado como P out o similar. Esto es porque se pueden conectar varios paneles en cascada. El caso es que hay que conectar varios cables entre P in y P out, que son:
P-in -> P-out
R2 -> R1
G1 -> R2
G2 -> G1
B1 -> G2
B2 -> B1
(NOTA: las patillas B2, B1, G2, G1, R2 y R1 pueden cambiar los números finales al 1 y 0 en cada pareja, como se observa en las imágenes adjuntas, pero eso no afecta al orden de las conexiones)
Para el controlador ESP hay que conectar las patillas restantes de la siguiente forma:
P-in -> ESP32
A -> 19
B -> 23
C -> 18
D -> 5
E -> 15
STB/LAT -> 22
P_OE -> 2
CLK -> 14
R1 -> 13
(NOTA: la patilla E no se usa y algunos paneles tienen GND en lugar de E)
La librería tiene algunos ejemplos para probar el panel pero son escasos y no todos ellos funcionan bien. La librería que se propone aquí, PxMatrix, usa además otra librería de gráficos: Adafruit_GFX. De esta librería se pueden obtener las funciones gráficas que se pueden usar en el panel.
Con todo ello, a continuación pongo un programa de ejemplo de algunas características variadas que se pueden conseguir con estos paneles.
Aquí dejo una muestra en vídeo de la prueba.
Deja una respuesta