Forum: Mikrocontroller und Digitale Elektronik Verbindung zw µC und LCD


von Olaf (Gast)


Lesenswert?

Hallo,

warum befindet sich ab und zu noch ein Latch oder ein Octal Bus 
Transceiver zwischen dem LCD Controller und dem eigentlichem µC?

Ich möchte gern eine Verbindung vom µC über den Datenbus herstellen.

Olaf

von Christoph db1uq K. (christoph_kessler)


Lesenswert?

Ein Mikroprozessor hatte noch keine eingebauten Ports, da mußte man den 
Port noch mit einem externen Register nachrüsten.
Für ein Speichererweiterung zum Beispiel am ATmga8515 macht man das 
immer noch, da die Portleitungen nicht für 8 Daten und 16 
Adressleitungen plus RD,WR,CE reichen würden.

von Olaf (Gast)


Lesenswert?

d.h. um einen größeren Addressraum realisieren zu können...

also wenn der µC den Daten- und Addressbus hat (von der größe her), dann 
braucht man auch nichts dergleichen dazwischen zu schalten... sondern 
dann gehts direkt vom µC zum LCD-Display...

von Olaf (Gast)


Lesenswert?

installiert man bei jedem Out/Input beim LCD auch einen 10kOhm 
Pulldown-Widerstand zu GND, um die logische 0 sicher zu bekommen?

von Andreas K. (a-k)


Lesenswert?

Man kann ein Text-LCD auf mehrere Arten anbinden.

- Mit normalen I/O-Ports, wie bei AVRs meist der Fall. Dann meist in der 
4bit-Variante um Pins zu sparen.

- Als Peripheriebaustein an einem externen Adress/Daten-Bus, so 
vorhanden. Für diese Variante ist so ein HD44780 ursprünglich konzipiert 
worden. Dann meist in der 8bit-Variante.

Ein externer Bus überträgt oft Adressen und Daten auf den gleichen 
Leitungen, um Pins zu sparen. Im Jargon ist das ein gemultiplexter Bus. 
Will man Flash-ROMs oder SRAMs daran anschliessen, muss man die 
Adressleitungen erst einmal aus diesem Multiplexbus rausfischen. Dazu 
dient das externe Latch, meist vom Typ '573.

Zudem kann man mit externen Registern oder Latches fehlende 
Portleitungen nachrüsten. Auch das kommt hier in Frage.

von Andreas K. (a-k)


Lesenswert?

> installiert man bei jedem Out/Input beim LCD auch einen 10kOhm
> Pulldown-Widerstand zu GND, um die logische 0 sicher zu bekommen?

Wozu 0? Die Datenleitungen eines Text-LCD werden vom LCD-Controller 
selbst schon auf 1 gezogen, um offene Eingänge mit einem sauberen Pegel 
zu versorgen - was im 4bit-Modus nötig ist. Einzig bei E könnte man 
theoretisch dran denken, es bis zur Initialisierung des Controllers auf 
0 zu ziehen um irgendwelche Zufallswirkungen auszuschliessen. Ist aber 
effektiv überflüssig.

von Olaf (Gast)


Lesenswert?


von Andreas K. (a-k)


Lesenswert?

Mit diese Pulldowns will der Autor wahrscheinlich erreichen, dass alle 
Anschlüssen im offenen Zustand einen sauberen 0-Pegel haben. 
Ironischerweise erreicht er damit dank der internen Pullups (50-250µA) 
genau das Gegenteil.

von Auch einer (Gast)


Lesenswert?

Welche internen Pullups?

von Marvin M. (Gast)


Lesenswert?

Noch ein Grund, ein Latch zu verwenden: Bei µP kann es durchaus 
vorkommen, dass das Timing auf dem Bus einfach zu schnell für das LCD 
ist. In diesem Fall kann man mit dem Latch die Signale etwas strecken.

von Olaf (Gast)


Lesenswert?

wie nennt sich denn die Zeit, welche besagt, in welchem Rhythmus das LCD 
Signale an seinen Inputs bzw. Datenbus verarbeiten kann?

Olaf

von Andreas K. (a-k)


Lesenswert?

> Welche internen Pullups?

HD44780 und KS0066 haben auf allen Interface-Leitungen ausser E interne 
Pullups. Steht im Datasheet.

von Andreas K. (a-k)


Lesenswert?

> wie nennt sich denn die Zeit, welche besagt, in welchem Rhythmus das LCD
> Signale an seinen Inputs bzw. Datenbus verarbeiten kann?

Es wäre mal an der Zeit, den Typ des LCD-Controllers zu verraten. 
Grafik-LCDs arbeiten da etwas anders als Text-LCDs.

Und was die üblichen Text-LCDs mit HD44780 oder KS0066 angeht: Steht im 
Manual. Gibt einerseits die Zeitbeziehungen zwischen den Signalen 
selbst, andererseits die Laufzeit der LCD-Befehle.

von Simon K. (simon) Benutzerseite


Lesenswert?

Marvin M. wrote:
> Noch ein Grund, ein Latch zu verwenden: Bei µP kann es durchaus
> vorkommen, dass das Timing auf dem Bus einfach zu schnell für das LCD
> ist. In diesem Fall kann man mit dem Latch die Signale etwas strecken.

Aber doch nicht bei Mikrocontrollern...

von Marvin M. (Gast)


Lesenswert?

@Simon Küppers:
Durchaus. Ein M16C30245 @16Mhz, bei dem ein Standard HD44... LCD an den 
externen Adress/Datenbus angeschlossen wurde, war einfach zu schnell, 
trotz der maximalen Waitstates.
Bei der Ursprungsfrage ging es genau darum: Anschluss an den Datenbus. 
Hierbei unterscheiden sich µP und µC kaum voneinander, nur darin, dass 
man theoretisch für die Dauer des Zugriffs den Daten/Adressbus als 
ordinären Port verwendet. Aber dann wäre ja der Vorteil des einfachen 
Zugriffs per Schreib/Lese-Befehl von der Software aus dahin.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.