He revisado los dos métodos, y la multiplexación realmente solo parece tener una ventaja, que sería más fácil localizar un LED fallido que en una matriz Charlieplex.
¿Puede alguien con más conocimientos explicar otras concesiones?
He revisado los dos métodos, y la multiplexación realmente solo parece tener una ventaja, que sería más fácil localizar un LED fallido que en una matriz Charlieplex.
¿Puede alguien con más conocimientos explicar otras concesiones?
Sí, la multiplexación y la combinación de caracteres tienen sus ventajas y son las más adecuadas para diferentes tareas.
La principal ventaja de charlieplexing es que se puede realizar en un microcontrolador de tamaño medio, lo que genera más LED con menos pines de E / S y, posiblemente, ningún hardware externo además de los LED.
Ahora, la ventaja de "no hardware externo" solo se aplica a un número relativamente pequeño de LED, hasta que alcance el límite actual de su microcontrolador, e impone un límite de brillo que los arreglos multiplexados no tienen. Si elige no usar hardware externo, generalmente está limitado a conducir solo un LED en la matriz en un momento dado, a diferencia de una matriz multiplexada en la que maneja una fila completa a la vez.
Una vez que agrega hardware externo para controlar los LED con un brillo más alto para que coincida con el de una matriz multiplexada, charlieplexing pierde su brillo.
Primero, una matriz multiplexada se dirige estrictamente por fila y columna; Es muy sencillo hacer esto. Active la fila 1, active todas las columnas para la fila 1, desactive la fila 2, active todas las columnas para la fila 2 y así sucesivamente. Por el contrario, una matriz charlieplexed es mucho menos sencilla. Siempre hay una fila diagonal que es inútil, y yo personalmente uso tablas de búsqueda para relacionarme entre mis arreglos y una matriz rectangular donde almaceno mis datos.
En segundo lugar, y un asesino, es que charlieplexing generalmente requiere controladores de tres estados. Sin embargo, la multiplexación se realiza con una lógica binaria on-off estricta. Si tiene un microcontrolador de bajo número de pines y desea controlar una gran variedad de LED, es fácil usar chips lógicos externos (por ejemplo, registro de desplazamiento y / o controladores de LED) para controlar los ejes X e Y. La mayoría de los chips de tipo de registro de desplazamiento no son compatibles con el trámite necesario para hacer lo mismo en una matriz de caracteres complejos. Los controladores dedicados de charlieplexed están disponibles, pero no son tan versátiles.
En tercer lugar, en una matriz carléplex, cada pin que no está haciendo algo activo todavía está conectado a los LED a través de una conexión débil ("alta impedancia"). Y mientras que la conexión es débil, no es cero. Supongamos que tiene 25 pines de E / S conectados a una cuadrícula de LED. Si enciende un LED, tomando una de esas 25 líneas de alto y una de esas 25 líneas de bajo, dejará 23 líneas de alta impedancia. Cada lugar donde la línea de E / S alta pasa a través de un LED a una línea neutral, hay alguna posibilidad de fuga de corriente. No mucho. Tal vez un microampo aquí o allá. Pero con los LED modernos y eficientes, eso suele ser suficiente para crear imágenes fantasma visibles.
En cuarto lugar, es más difícil controlar el brillo del LED en una matriz carléplex. En una matriz multiplexada, puede usar cualquier número de chips de controladores LED de "hundimiento" que regulan la corriente y que están disponibles por separado y que regulan el brillo de cada columna por separado, al usar la regulación de corriente en combinación con un controlador PWM. En la medida en que las ubicaciones de matriz charlieplexed se dirijan individualmente y usen solo una resistencia por fila o columna, es mucho más difícil realizar la corrección del brillo de puntos y la animación completa en escala de grises / color en una matriz charlieplexed.
La desventaja más importante de las luces "Charlieplexing" es que limita el número de LED que pueden manejarse con la multiplexación de 'n' vías a n (n-1). No veo que el requisito del controlador de tres estados sea un gran problema con la técnica en general. Ciertamente, tener que usar dos controladores convencionales en lugar de un controlador de tres estados reducirá el beneficio de CharliePlexing, pero en algunos casos las ventajas pueden permanecer (por ejemplo, puede reducir el número de cables de interconexión entre un panel con los controladores y un panel con el controlador). luces o interruptores).
En cuanto a los interruptores de Charlieplexing, el artículo de Wikipedia no menciona la mayor desventaja: Charlieplexing no permite que un controlador espere pasivamente a que se presione un botón. Por otro lado, es demasiado pesimista sobre los requisitos de los componentes. En 1997, produje un dispositivo que escanea ocho botones usando tres pines de E / S y un pin de entrada solo en un PIC12C508, sin necesidad de diodos externos u otros componentes, excepto IIRC, un pull-up para un pin PIC que no tener uno construido en; el enfoque podría haber manejado diez botones con la adición de otra resistencia de extracción (para otro pin de E / S que no tenía uno), pero el cliente solo necesita ocho botones, por lo que no era necesario.
Lea otras preguntas en las etiquetas led multiplexer charlieplexing