Startseite Lösungen Leitfaden zur STN Character LCD Steuerungsschnittstelle

Leitfaden zur STN Character LCD Steuerungsschnittstelle

Jan 19, 2023

Einführung

Winstar bietet eine breite Auswahl an standardisierten Character-LCD-Modulen für industrielle und Embedded-Anwendungen. Die verfügbaren Standard-Displaytypen umfassen die Serien WH0802, WH1202, WH1601, WH1602, WH1604, WH2002, WH2004, WH2402 und WH4002. Durch die Ansteuerung mit einer minimalen Anzahl an Steuerpins lässt sich das Display einfach integrieren und die Auswahl eines geeigneten MCU wird erleichtert.

Bei herkömmlichen Character-LCD-Modulen auf dem Markt wird häufig eine zusätzliche Konverterplatine zur Unterstützung der I2C-Schnittstelle eingesetzt, wie in Abbildung 1 dargestellt. Diese Lösung führt jedoch zu einer größeren LCM-Bauhöhe, zusätzlichen Fertigungsschritten und einer geringeren Produktionsausbeute.
 

Herkömmliches Character LCD Modul mit zusätzlicher I2C Konverterplatine

Abbildung 1: Herkömmliches Character-LCD-Modul mit zusätzlicher Konverterplatine zur Unterstützung der I2C-Schnittstelle.

Winstar WH1602 Character LCD Modul mit integrierter I2C und SPI Schnittstelle

Abbildung 2: Das WH1602 Character-LCD-Modul von Winstar unterstützt I2C- und SPI-Schnittstellen ohne zusätzliche Konverterplatine.

 

Ohne zusätzliche Konverterplatine muss lediglich die Entwicklungsplatine Arduino Uno angeschlossen werden, um die folgenden Character-LCD-Module von Winstar direkt über verschiedene Kommunikationsschnittstellen anzusteuern.

  • WINSTAR WH1602 LCM: 16 Zeichen × 2 Zeilen
  • WINSTAR WH2002 LCM: 20 Zeichen × 2 Zeilen
  • WINSTAR WH2004 LCM: 20 Zeichen × 4 Zeilen
 

Diese drei LCM-Serien verfügen über den integrierten LCD-Controller RW1063 und unterstützen sowohl serielle Schnittstellen (I2C und SPI) als auch die parallele Schnittstelle (6800).

Hinweis: Weitere Informationen zu Display-Schnittstellen finden Sie unter "Grundlagen der Display-Schnittstellen".

LCM-Pinbelegung

Pin-Nr. Symbol Beschreibung
No.1 Vss Masse
No.2 Vdd Versorgungsspannung für die Logik
No.3 V0 Kontrasteinstellung
No.4 RS Auswahl von Befehl/Daten
No.5 RW Lese-/Schreibauswahlsignal nur für 6800 8/4-Bit-Schnittstelle
No.6 E Enable-Signal nur für 6800 8/4-Bit-Schnittstelle
No.7 DB0/SA0 Datenbusleitung 0 nur für 6800 8-Bit-Schnittstelle
SA0 Adress-Einstellleitung für I2C-Schnittstelle
No.8 DB1/SA1 Datenbusleitung 1 nur für 6800 8-Bit-Schnittstelle
SA1 Adress-Einstellleitung für I2C-Schnittstelle
No.9 DB2 Datenbusleitung 2 nur für 6800 8-Bit-Schnittstelle
No.10 DB3 Datenbusleitung 3 nur für 6800 8-Bit-Schnittstelle
No.11 DB4 Datenbusleitung 4 nur für 6800 8/4-Bit-Schnittstelle
No.12 DB5/CSB/CSB Datenbusleitung 5 nur für 6800 8/4-Bit-Schnittstelle
CSB Enable-Auswahlsignal für I2C- und SPI-Schnittstelle
No.13 DB6/SDA/SCLK Datenbusleitung 6 nur für 6800 8/4-Bit-Schnittstelle
SDA-Datenleitung für I2C-Schnittstelle
SCLK-Taktsignal für SPI-Schnittstelle
No.14 DB7/SCL/SID Datenbusleitung 7 nur für 6800 8/4-Bit-Schnittstelle
SCL-Taktleitung für I2C-Schnittstelle
SID-Datenleitung für SPI-Schnittstelle
No.15 A+ Versorgung für Hintergrundbeleuchtung (B/L) +
No.16 K- Versorgung für Hintergrundbeleuchtung (B/L) -
 
Tabelle 1:LCM-Pinbelegung

 

Für den in der obigen Tabelle angegebenen V0-Anschluss wird ein 20-kΩ-Potentiometer zur Einstellung des Zeichenkontrasts verwendet. Falls während des Tests keine Zeichen sichtbar sind oder weiterhin nur das Hintergrundbild angezeigt wird, kann der Kontrast durch Drehen des Potentiometers angepasst werden.

Die Anschlussmethode des V0-Potentiometers ist in Abbildung 3 dargestellt:

Anschlussmethode des V0 Potentiometers
 
Abbildung 3:Anschlussmethode des V0-Potentiometers

 

Anschluss des LCM an die Entwicklungsplatine Arduino Uno

 

Abbildung 4 zeigt die Anschlussmethoden der vier LCM-Kommunikationsschnittstellen (I2C, SPI, 6800 8-Bit/4-Bit) an Arduino Uno. Dabei ist zu erkennen, dass die I2C- und SPI-Schnittstellen nur eine geringe Anzahl an GPIO-Pins benötigen, um Character-LCD-Module anzusteuern.

Bei der I2C-Schnittstelle verfügt Arduino Uno über interne Pull-up-Widerstände an den I2C-Pins, sodass keine zusätzlichen Pull-up-Widerstände an den SDA- und SCL-Pins erforderlich sind. Wird der interne Pull-up-Widerstand im Programm deaktiviert, muss ein externer Pull-up-Widerstand angeschlossen werden.

(a) Anschluss der I2C-Schnittstelle

Verbindung der I2C-Schnittstelle zwischen LCM und Arduino Uno

(b) Anschluss der SPI-Schnittstelle

Verbindung der SPI-Schnittstelle zwischen LCM und Arduino Uno

(c) Anschluss der 6800-4-Bit-Schnittstelle

Verbindung der 6800 4-Bit-Schnittstelle zwischen LCM und Arduino Uno

(d) Anschluss der 6800-8-Bit-Schnittstelle

Verbindung der 6800 8-Bit-Schnittstelle zwischen LCM und Arduino Uno

Abbildung 4: Anschlussmethoden der vier LCM-Kommunikationsschnittstellen an Arduino Uno.

 

LCM-Befehle

Nicht jede Kommunikationsschnittstelle unterstützt den vollständigen Befehlssatz des LCM. Bei der SPI-Schnittstelle sind keine RW-Steuerleitung und keine MISO-Pins vorhanden, daher wird der Lesebefehl nicht unterstützt. Beim Schreiben bestimmt die RS-Steuerleitung, ob Befehlsdaten oder Anzeigedaten übertragen werden.

Auch bei der I2C-Schnittstelle ist keine RW-Steuerleitung vorhanden, daher werden Lesebefehle ebenfalls nicht unterstützt. Vor dem Schreiben von Befehlsdaten oder Anzeigedaten muss zunächst der Befehlssteuercode (A0=0) oder der Datensteuercode (A0=1) übertragen werden, um festzulegen, ob das nächste gesendete Byte Befehlsdaten oder Anzeigedaten enthält.

Timing der SPI- und I2C-Schnittstellen

Die Abbildungen 5 und 6 zeigen die Timing-Diagramme zur Steuerung des LCM über die SPI-Schnittstelle. Dabei ist zu erkennen, dass die vom LCM verwendete SPI-Schnittstelle nicht der typischen SPI-Schnittstelle entspricht, die üblicherweise von einem MCU bereitgestellt wird. Es ist ein zusätzliches RS-Signal erforderlich, um zu bestimmen, ob das aktuell übertragene Byte ein Befehl oder ein Datenwert ist. Die Bitdaten (BIT7~BIT0) auf der Datenleitung (SID) ändern sich, wenn sich die Taktleitung (SCLK) auf Low-Pegel befindet. Die Bitdaten (BIT7~BIT0) werden erfasst, wenn sich die Taktleitung (SCLK) auf High-Pegel befindet.

Timing der SPI-Befehlsübertragung

Abbildung 5:Timing der SPI-Befehlsübertragung

Timing der SPI-Datenübertragung

Abbildung 6:Timing der SPI-Datenübertragung

Die Abbildungen 7 und 8 zeigen die Timing-Diagramme zur Steuerung des LCM über die I2C-Schnittstelle. Abgesehen vom Chip-Select-Signal (CSB) erfolgt die I2C-Steuerung durch die Übertragung von jeweils drei Bytes, um Befehlsdaten oder Anzeigedaten zu schreiben. Dabei bestimmt das A0-Bit des zweiten Bytes, ob das dritte Byte Befehlsdaten oder Anzeigedaten enthält.

Timing der I2C-Befehlsübertragung

Abbildung 7:Timing der I2C-Befehlsübertragung

Timing der I2C-Datenübertragung

Abbildung 8:Timing der I2C-Datenübertragung

Code

Durch Anpassung der Programmeinstellungen kann der Code für das LCM direkt kompiliert und verwendet werden.

Step1: Festlegen der maximalen Anzahl an Zeichen pro Zeile des LCM.
Beispielsweise wird mit der folgenden Einstellung eine maximale Anzahl von 16 Zeichen pro Zeile definiert.

Step1: Einstellung der maximalen Zeichenanzahl pro LCM-Zeile

Step2: Festlegen der maximalen Anzahl an Zeilen des LCM.
Beispielsweise wird mit der folgenden Einstellung das LCM auf 2 Zeilen konfiguriert.

Step2: Einstellung der maximalen Zeilenanzahl des LCM

Step3: Festlegen der LCM-Schnittstelle.
Beispielsweise wird mit der folgenden Einstellung die I2C-Schnittstelle ausgewählt.

Step3: Einstellung der LCM-Schnittstelle

Step4: Kompilieren Sie das Programm und laden Sie es auf die Arduino Uno Entwicklungsplatine.
Abbildung 9 zeigt eine schematische Darstellung der Anzeigen von drei LCMs.
Wenn der Displaykontrast zu hell oder zu dunkel ist, kann der am V0-Pin angeschlossene variable Widerstand entsprechend angepasst werden, um den optimalen Kontrast einzustellen, wie in Abbildung 10 dargestellt.

(a) Heller Kontrast
Nur schwach sichtbare Zeichen sind erkennbar.
(b) Optimaler Kontrast (c) Dunkler Kontrast
Jedes Zeichen weist einen deutlichen Schatten auf.
figure9-a-1-Anzeige von drei LCMs figure9-b-1-Anzeige von drei LCMs figure9-c-1-Anzeige von drei LCMs
figure9-a-2-Anzeige von drei LCMs figure9-b-2-Anzeige von drei LCMs figure9-c-2-Anzeige von drei LCMs
figure9-a-3-Anzeige von drei LCMs figure9-b-3-Anzeige von drei LCMs figure9-c-3-Anzeige von drei LCMs
Abbildung 9:Schematische Darstellung der Anzeigen von drei LCMs

 

Abbildung 10: Einstellbarer V0-Pin

Abbildung 10:Einstellbarer V0-Pin

Wenn Sie den vollständigen Demo-Code benötigen, kontaktieren Sie uns.

Haben Sie Fragen zu Displaylösungen für Ihr Unternehmen? Kontaktieren Sie uns!

Abonnieren

Erhalten Sie E-Mails mit den aktuellsten Neuigkeiten von Winstar

Kontaktieren Sie uns

Preis /Datenblatt/ Allgemeine Anfrage

Technischer Support

Kontaktieren Sie uns wegen technischer Informationen

go top
Kontakt
close

Wir schätzen Ihre Privatsphäre

Durch Klicken auf „Alle Cookies zulassen“ stimmen Sie der Speicherung von Cookies auf Ihrem Gerät zu, um die Navigation auf der Website zu verbessern, die Nutzung der Website zu analysieren und unsere Marketing- und Leistungsbemühungen zu unterstützen. Weitere Informationen zu diesem Thema finden Sie in unserer Richtlinie. Datenschutzrichtlinie

Wir schätzen Ihre Privatsphäre

Winstar und bestimmte Drittparteien verwenden Cookies auf www.winstar.com.tw. Die Einzelheiten zu den Arten von Cookies, ihrem Zweck und den beteiligten Drittparteien sind unten sowie in unserer Cookie-Richtlinie beschrieben. Klicken Sie auf „Alle zulassen“, um unserer Verwendung von Cookies zuzustimmen und die bestmögliche Erfahrung auf unseren Websites zu erzielen. Sie können auch Ihre Präferenzen festlegen oder Cookies ablehnen (mit Ausnahme der unbedingt erforderlichen Cookies).

Einwilligungspräferenzen verwalten

Immer aktiv
Notwendige Cookies

Diese Cookies sind unerlässlich, um Ihnen das Navigieren auf der Website zu ermöglichen und ihre Funktionen zu nutzen, wie z. B. das Festlegen Ihrer Datenschutzpräferenzen, das Einloggen oder das Ausfüllen von Formularen.

Analyse-Cookies

Diese Cookies, auch als „Statistik-Cookies“ bekannt, sammeln Informationen darüber, wie Sie eine Website nutzen, z. B. welche Seiten Sie besucht und auf welche Links Sie geklickt haben. Siehe Details.