Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Vorhergehende Überarbeitung | |||
— | artikel:led-multiplex [2024/02/06 09:43] (aktuell) – Externe Bearbeitung 127.0.0.1 | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
+ | ====== Grundlagen ====== | ||
+ | Angenommen man möchte gerne 16 Leuchtdioden ansteuern und verwendet dafür einen Mikrocontroller. | ||
+ | |||
+ | Mit einem Atmega8 wäre dies kein Problem, man könnte jede der LEDs auf einen Portpin legen und könnte somit alle einzeln ansteuern. | ||
+ | |||
+ | Was passiert aber wenn man nicht mehr genügend Portpins frei hat? | ||
+ | |||
+ | Dann kann man sich mit LED-Multiplexing helfen. | ||
+ | |||
+ | Das ist zwar nur grad mal die Hälfte, wenn man aber zB 64 LEDs ansteuern möchte benötigt man statt 64 Pins nur 16. | ||
+ | |||
+ | Und wie soll das jetzt funktionieren? | ||
+ | |||
+ | Ganz einfach: | ||
+ | |||
+ | Das menschliche Auge ist langsam. Wenn man die LEDs in Zeilen und Spalten aufteilt kann man mit Hilfe der Software jede LED einzeln ansteuern. | ||
+ | |||
+ | Tut man dies sehr schnell (>50Hz) kann das Auge dies nicht mehr wahrnehmen. | ||
+ | |||
+ | Prinzipiell gibt es drei einfache Methoden zum Multiplexen: | ||
+ | |||
+ | ====== Bitweises Multiplexing ====== | ||
+ | |||
+ | Bei dieser Methode wird jede LED einzeln angesteuert. Ein Bildaufbau benötigt also bei 16 LEDs 16 Durchläufe. | ||
+ | |||
+ | Diese Methode ist also sehr langsam und lässt weniger Rechenzeit übrig. | ||
+ | |||
+ | |||
+ | {{: | ||
+ | |||
+ | ====== Zeilenweises Multiplexing ====== | ||
+ | |||
+ | Hier werden erst alle Spalten die leuchten sollen gesetzt. Danach folgt ein kurzer Impuls auf die Zeile. | ||
+ | |||
+ | Sämtliche LEDs die leuchten hängen parallel und haben nur einen Vorwiderstand. Dadurch kann es bei abweichenden LED-Durchlassspannungen zu unterschiedlichen Helligkeiten führen. | ||
+ | |||
+ | Ein Bildaufbau benötigt also bei 16 LEDs 8 Durchläufe. | ||
+ | |||
+ | |||
+ | {{: | ||
+ | |||
+ | ====== Spaltenweises Multiplexing ====== | ||
+ | |||
+ | Hier werden erst alle Zeilen die leuchten sollen gesetzt. Danach folgt ein kurzer Impuls auf die Spalte. | ||
+ | |||
+ | Jede LED hat einen eigenen Vorwiderstand. Die Helligkeiten sind also gleich. Diese Methode ist also allen anderen vorzuziehen. | ||
+ | |||
+ | Ein Bildaufbau benötigt also bei 16 LEDs 8 Durchläufe. | ||
+ | |||
+ | |||
+ | {{: |