1, Hardware-Architektur: Multi-Unit-Treiber und Signalsynchronisation
Die Multi-Unit-Anzeige segmentierter LCDs basiert auf dem Hardware-Level-Multi-COM-Design (gemeinsames Ende) und dem Multi-SEG-Design (Segmentende). Nehmen wir als Beispiel einen 4-stelligen LCD-Segmentcode-Bildschirm, der normalerweise 4 COM-Ports und mehrere SEG-Ports enthält, wobei jede COM-SEG-Kombination einer Anzeigeeinheit entspricht (z. B. einer Ziffer oder einem Einheitensymbol). Beispielsweise steuert ein bestimmtes Modell eines Segmentcode-Bildschirms vier digitale Bits über vier COM-Ports und verwendet gleichzeitig zusätzliche SEG-Ports, um die Anzeige von Einheitensymbolen (V/A/Hz) zu steuern.
Wichtige Hardwareparameter:
Aufgabe: Bestimmen Sie die Anzahl der COM-Ports. Beispielsweise bedeutet 1/4 Duty, dass 4 COM-Ports abwechselnd angesteuert werden, wobei jeder Port ein Tastverhältnis von 25 % aufweist, was für eine 4-stellige Anzeige geeignet ist.
BIAS (Bias Ratio): Beeinflusst Kontrast und Antriebsspannung. . 1/3 BIAS bedeutet, dass die Antriebsspannung 1/3 der Betriebsspannung beträgt, was den Stromverbrauch senken und die Anzeigestabilität verbessern kann.
Spannungsstabilität: Flüssigkristallmoleküle müssen durch Wechselstromsignale angetrieben werden, und eine Gleichstromvorspannung kann zu Unschärfen auf der Anzeige führen. In einem bestimmten Projekt wird beispielsweise ein STM32F103C8T6-Mikrocontroller verwendet, um über einen Timer genaue Wechselstrom-Rechtecksignale zu erzeugen, wodurch eine stabile Spannungsdifferenz von 3,3 V gewährleistet und eine Alterung der Flüssigkristallmoleküle vermieden wird.
Typische Anwendungsszenarien:
Leistungsüberwachungsgeräte: Sie müssen Parameter wie Spannung (V), Strom (A) und Leistung (W) gleichzeitig anzeigen. Ein bestimmter Smart Meter verwendet einen 8-Bit-Segmentcode-Bildschirm, der über 8 COM-Ports und 32 SEG-Ports synchron 4 Zahlensätze (z. B. 220 V, 5,6 A) und 3 Einheitensymbole anzeigt.
Medizinischer Monitor: Bei der Anzeige von Parametern wie Herzfrequenz (Schläge pro Minute) und Blutsauerstoff (SpO2 %) müssen verschiedene Datentypen über mehrere COM-Ports unterschieden werden. Beispielsweise verfügt ein bestimmtes Monitormodell über ein 1/8-Zoll-Design und unterstützt die unabhängige Steuerung von 8 Ziffern und 4 Einheitensymbolen.
2, Treiberlogik: dynamisches Scannen und Datenzuordnung
Die Mehreinheitenanzeige des Segmentcode-LCD muss durch dynamisches Scannen erreicht werden. Die Kernlogik besteht darin, COM-Ports im Time-Sharing wiederzuverwenden, den Anzeigeinhalt schnell zu wechseln und den Persistenzeffekt der menschlichen visuellen Wahrnehmung zu nutzen, um stabile Bilder zu erzeugen. Die spezifischen Schritte sind wie folgt:
Datenzuordnung: Konvertieren Sie die anzuzeigenden Zahlen und Einheitensymbole in Segmentcodedaten. Beispielsweise lautet der Segmentcode für die Zahl „8“ 0x7F (entspricht vollständig beleuchteten Segmenten a-g) und der Segmentcode für die Einheit „V“ lautet 0x01 (nur beleuchtetes Segment a).
Dynamisches Scannen: Aktivieren Sie COM-Ports in einem festen Zyklus (z. B. 1 ms) und senden Sie entsprechende SEG-Daten. Bei einer 4-stelligen Anzeige werden beispielsweise COM1-COM4 abwechselnd aktiviert, wobei jedes Mal nur die Nummer und Einheit aktualisiert wird, die dem aktuellen COM-Port entsprechen.
Kontraststeuerung: Optimieren Sie die Anzeigeleistung durch Anpassen der Betriebsspannung oder des Arbeitszyklus. Beispielsweise hat ein bestimmtes Projekt in einer Umgebung mit starkem Licht den BIAS von 1/3 auf 1/4 angepasst, den Kontrast auf 1500:1 erhöht und sichergestellt, dass die Einheitensymbole klar und unterscheidbar waren.
3, Softwareprogrammierung: Multi-Task-Management und Datenaktualisierung
Die Softwareimplementierung der Anzeige mit mehreren Einheiten muss zwei große Herausforderungen bewältigen: Echtzeitdaten und Anzeigesynchronisierung. Im Folgenden sind die wichtigsten Optimierungsstrategien aufgeführt:
Unterbrechungsgesteuertes Scannen: Verwendung von Timer-Interrupts, um ein periodisches Scannen zu erreichen und eine Blockierung des Hauptprogramms zu vermeiden. Beispielsweise legt ein Projekt einen 1-ms-Timer-Interrupt fest, der jedes Mal die Daten für einen COM-Port aktualisiert und eine vollständige Bildschirmaktualisierung in 4 ms durchführt.
Doppelter Puffermechanismus: Bei Verwendung von zwei Anzeigepuffern (Vordergrund/Hintergrund) wird der Vordergrundpuffer für die aktuelle Anzeige und der Hintergrundpuffer für Datenaktualisierungen verwendet. Nachdem die Aktualisierung abgeschlossen ist, schalten Sie den Puffer durch das Flag um, um ein Flackern zu vermeiden, das durch Datenmutationen während des Scanvorgangs verursacht wird.
Dynamisches Umschalten von Einheitensymbolen: Laden Sie Einheitensymbole dynamisch basierend auf Parametertypen. Wenn beispielsweise in Frequenzmessszenarien das Eingangssignal als Rechteckwelle erkannt wird, wird die Einheit automatisch von „V“ auf „Hz“ umgeschaltet.
Fall: Intelligenter Frequenzmesser
Ein Projekt basiert auf STM32F103- und HT1621-Treiberchips, um die Messung und Anzeige von Rechteckwellenfrequenzen zu erreichen. Der Softwareprozess ist wie folgt:
Frequenzmessung: Verwenden Sie einen Timer, um die steigende Flanke des Eingangssignals zu erfassen, die Periode zu berechnen und sie in einen Frequenzwert umzuwandeln.
Datenzerlegung: Zerlegen Sie Häufigkeitswerte in Tausender-, Hunderter-, Zehner- und Einheiteneinheiten.
Beurteilung der Einheit: Wenn die Frequenz größer als 1 kHz ist, zeigt das Gerät „kHz“ an; Andernfalls wird „Hz“ angezeigt.
Anzeigeaktualisierung: Senden Sie die numerischen und Einheitensegmentcodedaten über die SPI-Schnittstelle an HT1621 und steuern Sie das 4-stellige LCD zur synchronen Aktualisierung.
4, Optimierungsstrategie: Verbesserung der Anzeigequalität und Zuverlässigkeit
Anti-Interferenz-Design: In stark elektromagnetischen Umgebungen (z. B. an Industriestandorten) werden abgeschirmte Drähte zur Verbindung von LCD und MCU verwendet, und am Netzteilende wird eine magnetische Perlenfilterung hinzugefügt, um Rauschstörungen zu reduzieren.
Kompensation bei niedrigen Temperaturen: Bei -20 Grad kann die Abnahme der Aktivität der Flüssigkristallmoleküle zu einer Verringerung des Kontrasts führen. Durch Erhöhen der Ansteuerspannung (z. B. von 3,3 V auf 3,6 V) oder Hinzufügen einer Vorheizlogik (Anzeige mit geringem Kontrast beim Start und allmähliche Rückkehr zu normalen Werten) kann das Problem gelöst werden.
Optimierung des geringen Stromverbrauchs: Bei batteriebetriebenen Geräten wird eine Strategie zur dynamischen Anpassung der Scanfrequenz angewendet. Wenn beispielsweise kein Betrieb stattfindet, reduziert die Reduzierung der Scanfrequenz von 1 kHz auf 100 Hz den Stromverbrauch um 90 %, während der Anzeigeinhalt durch Hardware-Halteschaltungen erhalten bleibt.