Forum: Mikrocontroller und Digitale Elektronik VFD auf 4 Bit-parallel-Mode stellen


von Jefe (Gast)


Angehängte Dateien:

Lesenswert?

Moin,

ich habe so ein Display. Die Jumper sind so gesetzt, dass 
M68-parallel-Mode verwendet wird. Im PDF unter 4-4-6 steht, dass man 
4-Bit oder 8-Bit einstellen kann.
Und unter 4-5 sind die Reset Conditions angegeben. Da steht 8 Bit. Aber 
wie bekomme ich den auf 4 Bit gestellt, wenn man eben nur vier 
Datenleitungen zur Verfügung hat?


Jefe

von Waldorf Fan (Gast)


Lesenswert?

Die Bits, die du im 4-Bit Modus verwendest, sind die oberen 4 (DB4-DB7). 
Siehe Seite 4/19 im Datenblatt, Abschnitt 3-1.

von Jefe (Gast)


Lesenswert?

Waldorf Fan schrieb:
> Die Bits, die du im 4-Bit Modus verwendest, sind die oberen 4
> (DB4-DB7). Siehe Seite 4/19 im Datenblatt, Abschnitt 3-1.

Das ist klar. Beantwortet aber nicht meine Frage.

von Thomas Z. (usbman)


Lesenswert?

Jefe schrieb:
> Das ist klar. Beantwortet aber nicht meine Frage.
doch eigentlich schon.
Du sendest einfach
0010    //function set Hi nibble
1x00    // 2 Zeilen volle Helligkeit

von Jefe (Gast)


Lesenswert?

Okay, probiere ich morgen aus. Aber wozu muss (kann) man dem Modul 
mitteilen, dass 4-Bit-Modus eingeschaltet werden soll, wenn das sowieso 
verstanden wird. Oder ist das nur bei diesem einen Befehl so?

von Hmmm (Gast)


Lesenswert?

Jefe schrieb:
> Aber wozu muss (kann) man dem Modul
> mitteilen, dass 4-Bit-Modus eingeschaltet werden soll, wenn das sowieso
> verstanden wird. Oder ist das nur bei diesem einen Befehl so?

Du kannst alles tun, wofür die oberen 4 Bits ausreichen. Dazu gehört 
praktischerweise auch das Umschalten in den 4-Bit-Modus, um mit dem 
Display etwas Sinnvolles anstellen zu können.

von Peter D. (peda)


Lesenswert?

Jefe schrieb:
> Aber wozu muss (kann) man dem Modul
> mitteilen, dass 4-Bit-Modus eingeschaltet werden soll

Weil es im 8Bit-Mode nicht auf das 2. Nibble wartet.

Die ganze Sache ist aber noch deutlich komplexer. Wenn z.B. kein 
sauberes Power-On Reset erfolgt oder die CPU durch eine andere Quelle 
resettet wird, weiß man nicht, in welchem Mode und welchem Nibble sich 
das VFD gerade befindet. Um sicher zu synchronisieren und in den 
4Bit-Mode zu schalten, muß man daher erst 3* in den 8Bit-Mode schalten. 
Die korrekte Sequenz findet man z.B. im HD44780 Datenblatt (mit einer 
kleinen Ungenauigkeit).

von Jefe (Gast)


Lesenswert?

Moin, vielen Dank für die Infos. Auf dem VFD ist kein HD44780 verbaut. 
Die Init-Sequenz ist wie folgt:

0b00101011
0b00001100
0b00000110
0b00000001

Kein Cursor, kein Blinken, inkrement nach rechts, kein Displayshift, 
Helligkeit 25%.


Jefe

von Peter D. (peda)


Lesenswert?

Jefe schrieb:
> Auf dem VFD ist kein HD44780 verbaut.

Hat auch keiner behauptet. Nur daß die Umschaltung 4/8Bit kompatibel zum 
HD44780 ist.
Im Datenblatt steht allerdings folgendes:
"The module is reset automatically at power-up by internal R-C circuit."

D.h. die VCC muß längere Zeit aus gewesen sein und dann schnell und 
monoton ansteigen. Ansonsten ist der Zustand des Moduls unbestimmt.
Aber auch bei einem CPU-Reset außer Power-On ist der Zustand unbekannt.
Will man eine zuverlässige Initialisierung, muß man daher die Sequenz 
mit 3* 8Bit benutzen.

von Jefe (Gast)


Lesenswert?

Peter D. schrieb:
> Aber auch bei einem CPU-Reset außer Power-On ist der Zustand unbekannt.

Soooo, habe die Sequenz eingebaut. Ohne diese Sequenz werden auf dem 
Display nach dem ISP-Programmiervorgang wilde Zeichen ausgegeben und die 
Initializierung und die Textausgabe funktionierte erst nach einem 
weiteren expliziten Reset des µC mittels Resettaster. Ab und zu hakte es 
dann noch.

Mit der Sequenz läuft das Display !!!immer!!! wie es soll.

@Peter D.: besten Dank!


Jefe

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.