Um mich herum ist ein Haufen Elektronik: Digitaluhren, mein Laptop, ein Kühlschrank, eine dimmbare Taschenlampe und mehr. Was sie alle haben, ist ein wahrnehmbares Flackern ihrer Displays aufgrund von PWM, insbesondere wenn ich schnelle Augenbewegungen mache (dh normales Alltagssehen).
Ich habe schon einmal mit PWM und LEDs herumgespielt; Flackern wird bei etwa 1000 Hz angenehm unmerklich, was für einen Mikrocontroller trivial, vielleicht sogar unbedeutend ist.
Mir ist klar, dass einige Geräte von der Netzfrequenz gesteuert werden können, aber meines Wissens verwendet ein Großteil meiner Elektronik gefilterten Gleichstrom.
Warum kann nicht jede LED-Anzeige so gestaltet werden, dass kein Flackern auftritt?
Mir fallen ein paar Gründe für unsere aktuelle Situation ein:
Gedanken, jemand? Ich hoffe, ich bin nicht der Einzige.
Es ist nicht wirklich PWM, sondern ein Multiplexing von Displays. Ich werde hier nicht im Detail auf die Vorteile des Multiplexing eingehen, aber es geht nicht um Energieeffizienz, sondern um eine Reduzierung der Kosten und der Komplexität von Antriebskomponenten. Es ist möglich, ein paar billige Teile zu verwenden, um ein 4-stelliges LED-Display (32 Segmente) mit nur 12 Port-Pins anzusteuern (falls erforderlich auf einer einseitigen Leiterplatte).
Die meisten Produkte dieser Art verwenden eher einen 8-Bit-Prozessor als einige. 32-Bit-Ding und normalerweise mit einer relativ niedrigen Taktfrequenz wie 4 oder 8 MHz. Sie sind im Allgemeinen nicht mit einem Hardware-Display-Controller ausgestattet, daher erledigt ein ISR die Arbeit. Wenn es andere Dinge mit hoher Priorität gibt, kann die Helligkeit der Anzeigeziffer aufgrund von Jitter beim Multiplexen sichtbar in der Helligkeit moduliert werden - ein gewisses Maß davon würde als akzeptabel, wenn nicht gar nicht wahrnehmbar angesehen werden. Das Gleiche gilt für Flimmern im Display. Trotzdem verbraucht das Mikro möglicherweise mehr als 20 % seiner Bandbreite, um nur das Display zu steuern. Ein schnellerer Takt würde mehr Stromverbrauch des Mikros, mehr EMI und mehr Kosten bedeuten. Für eine 8-stellige Anzeige, die bei 200 Hz gemultiplext wird, muss etwa alle 600 Sekunden eine neue Ziffer verarbeitet werden. +/- 30 usec (das wäre ein ziemlich hochwertiges Display für eine Anwendung ohne Vibration). Bei starken Vibrationen vielleicht 5x schneller.
Obwohl ein Designer beispielsweise vorschlagen könnte, ein kleines FPGA zu verwenden, um alle Zeitbeschränkungen vollständig zu eliminieren, und eine 6-Lagen-Platine, um mit der EMI umzugehen, wäre dies wahrscheinlich sein letzter Akt bei einem Unternehmen für Konsumgüter. Die Einstellung ist, dass eine Kostensenkung von 5 Cent ausreichen würde, um einen anderen Ingenieur einzustellen.
Digitale netzbetriebene LED-Uhren sind ein Sonderfall, und einige verwenden ein cleveres Biplexing-Schema, das das Display von einer ungeregelten Transformatorsekundärseite mit Mittelabgriff versorgt, sodass die Mux-Frequenz an die Netzfrequenz gebunden ist.
Es sind faule Ingenieure, Punkt. Besonders ärgerlich finde ich es bei Auto-Rücklichtern bei Nacht. Wenn ich meinen Blick über den Verkehr schweife, macht mich der „Stroboskop“-Effekt wahnsinnig.
Ich habe Multiplex-Displays entworfen und kann Ihnen sagen, dass es nicht mehr kostet, ein Display bei 1000 Hz zu multiplexen/PWM zu schalten als bei 50/60 Hz.
Vermutlich (da ich noch nie ein PWM-Display entworfen habe):
Kosten auch. ;)
Es gibt einen großen Unterschied, ob LED-Variablen-Dauerstrom oder PWM angesteuert werden. Wechselnde Momentanströme bewirken nicht nur die Helligkeit, sondern können auch das Emissionsspektrum (insbesondere bei weißen LEDs) und den Wirkungsgrad verändern. Auch die Steuerung der Helligkeit durch das PWM-Tastverhältnis ist streng linear.
Andi aka
Löffel
gbulmer
JYelton