www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik GLCD die 295.000 te.


Autor: Nova (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Guten Morgen,

also ich habe mir im wissen das es eine bastel Arbeit wird bei Pollin 
ein Display mit 320 x 240 Pixel Bestellt mit 4 Bit Datenbus S/W (Wintek 
WD-H3224V)
soweit so gut ... Pollin Standard Zettel dabei auf dem steht:
Pin 1: VCC (5V)
Pin2: GND
Pin3: VCC (Kontrast ist mit 32V abgegeben was aber viel zu viel ist. Ich 
habs bei ca 22- 23V)
Pin4: FLM (Frame)
Pin5: Display Off
Pin6: M (AC Eingang, 700Hz)
Pin7: Load (load Row)
Pin8: CP (Pixel Clock, 5MHz)
Pin9: GND
Pin10 bis 13: Daten
.
.
.
+ Beleuchtung und Touch screen

Im Moment bekommt das Display 320 / 4 also 80 Pixel Clocks + Daten dann 
geht der Pixel Clock auf High und nach einer Pause von 700ns geht der 
Load auf High bleibt 2,6µs High geht dann auf low und nach 3µs kommt 
wieder die erste fallende flanke des Pixel Clocks.
Das wiederholt sich 240-mal und bei der letzten Zeile kommt stad dem 
load ein load UND ein Frame.
Ich habe ein zwischen schon was davon gehört das man den Frame während 
der ganzen letzten Zeile heigh lassen soll oder sowas wie Doppelscann wo 
ich eine Reihe 2-mal schreiben soll? Da bin ich mir nicht sicher...
Das ganze wird in einem Altera Cyclone FPGA im Moment noch ohne externes 
RAM nur so als Info am Rande.

zur Info der Bilder:
Eingang 8: Pixel Clock
Eingang 9: Row Load
Eingang 10: Debug (Ram Enabel)
Eingang 11: Frame
Eingang 12: Daten 0
Eingang 13: Daten 1
Eingang 14: Daten 2
Eingang 15: Daten 3

ps.: die Datenleitungen sind immer High sollte also einfach schwartz 
werden...

mfg Sascha

Autor: Nova (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
da das meine erstes Display ohne Controller ist würde is mir auch helfen 
wenn jemand mybe eine timing diagram hat da ich nur dieses habe:

http://mitglied.multimania.de/bk4/lcds.htm

Autor: g457 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: g457 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hast Du es inzwischen hinbekommen? Deine Frage hat mich nämlich daran 
erinnert, dass ich ebendieses Display mal (auf Halde..) mitbestellt hab. 
Und jetzt hab ichs in Betrieb genommen :-) Funktionierenden Quellcode 
hab ich zusammengeschustert - ist zwar nicht VHDL sondern C, und auch 
nicht FPGA sondern AVR, aber immerhin schon mal ein Startpunkt für die 
richtige Reihenfolge (mir kommt vor, Du hast hier..

> [..] geht der Load auf High bleibt 2,6µs High geht dann auf low und nach
> 3µs kommt wieder die erste fallende flanke des Pixel Clocks.

..die Reihenfolge verdreht - LOAD (und ggf. FRAME) müssten bei der 
fallenden CLOCK-Flanke high sein, nicht davor.

Achja in dem LCD sind (laut dem Datenblatt vom im oben verlinkten Post 
erwähnten Wintek WM-G3224Z-1WLWaV2) Novatek NT7701 und NT7702 verbaut - 
zu jenen gibt es bei den üblichen Verdächtigen etwas ausführlichere 
Datenblätter - sogar mit Timing :-)

HTH und HF

Autor: Michael B. (planlessmichi)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo g457,
bin eben über diesen Thread gestolpert. Du schreibst, dass Du für einen 
AVR C-Sourcen für das Teil hast? Wie sieht's aus? Besteht da eine 
Chance, dass Du die hier mal reinstellen könntest? Auch wenn die 
vielleicht noch fehlerhaft sind?
Wäre echt ein super Einstieg und eine enorme Erleichterung...
Nachdem es das "berühmte" DG-16080 nicht mehr gibt, wäre das hier 
vielleicht eine gute Alternative...

Viele Grüße,
Michael

Autor: G. 457 (g457)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
> Wie sieht's aus? Besteht da eine Chance, dass Du die hier mal reinstellen
> könntest?

Mach ich gerne, vorerst aber nur partiell (der Rest ist noch recht.. 
ähm.. nicht vorzeigbar..). Wenns mal fertig(tm) ist wird auch der Rest 
unter GPL veröffentlicht werden. Die Ansteuerung ist ziemlich primitiv, 
dafür dank Pixel-Clocking recht zeitaufwendig.

Sie besteht bisher im Wesentlichen aus einem Stapel eintöniger Defines 
und den beiden Funktionen WDH3224_init() und WDH3224_draw_next_line(). 
Die Defines und die Funktionsnamen sind selbsterklärend hoffe ich ;-)

Anmerkungen zur Hardware: M toggelt hier mit etwa 61Hz (16MHz CPU, timer 
overflow 255, Vorteiler 1024, 'toggle OCn on overflow'), die 
Zeilenfrequenz liegt bei 12.5kHz (timer overflow 255, Vorteiler 1, 
Softwareteiler 5) entsprechend etwa 52Hz Bildwiederholrate. Der 
Displayinhalt wird in einem SRAM (32kx8 mit echten 20ns.. welch 
Verschwendung..) gespeichert, dessen logische Ansteuerung erfolgt so, 
dass die 'oberen 8'(!) Adressbits den 240 Display-Zeilenadresse 
entsprechen und die 'unteren 7'(!) den 80 4-Pixel-Blöcken. (Ersteres 
wird in einem Achtfach-Latch zwischengespeichert). Die Ansteuerung von 
SRAM (Grafikroutinen) und LATCH erfolgen in der gram.[hc] (nicht dabei 
aber noch inkludiert).

Zum testen/basteln/.. kannst Du die jeweiligen gram_*-Aufrufe rauswerfen 
und stattdessen in der Schleife (..oder besser davor und nur 1x pro 
Zeile.. dauert sonst zu lang) die 4 Datenbits setzen.

Viel Spaß damit. Wenns Fragen gibt.. einfach fragen :-)

Autor: Michael B. (planlessmichi)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Cool; danke. Werde ich mir die Tage mal "reinziehen" :)

Ganz allgemein zum Anschluß: Laut "Pollin-Datenblatt" (hust, hust), 
benötigt man 3 Spannungen (3.8, 5 und 32 Volt); laut Pinbelegung stehen 
da aber nur die 5 und die 32; wofür sind die 3.8 und an welchem Pin 
liegen die an?
Stimmt es, dass man die 32V (für die ersten Tests) auch weglassen kann? 
Beim DG-16080 wurden die -15V für den Kontrast ja vom Display erzeugt, 
aber hier sind die 32V wirklich Eingang, oder? (aber auch "nur" für 
Kontrast, oder? Vcc = ??)

Autor: g457 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> 3 Spannungen (3.8, 5 und 32 Volt); laut Pinbelegung stehen da aber nur
> die 5 und die 32; wofür sind die 3.8 und an welchem Pin liegen die an?

Habs nicht genau nachgemessen aber damit dürften die Beleuchtungen 
gemeint sein (3 Stränge LEDs). Ich habs hier per Vorwiderstand (an 5V) 
auf 20mA eingestellt und es 'passt' (das ausführlichere Datenblatt 
(s.u.) gibt typische 3.5V bei 20mA an).

> Stimmt es, dass man die 32V (für die ersten Tests) auch weglassen kann?

Nein. Ohne Kontrastspannung kein Bild, die Hintergrundbeleuchtung 
dagegen kannst Du weglassen. Mach das übliche (feinfühlige..) 
Spannungsteilerpoti in die Kontrastspannung rein, so in der Gegend von 
21V wird tatsächlich benötigt. Die 5V werden für die Logik benötigt.

Ad Datenblätter: hol dir das vom bauähnlichen WM-G3224Z-1WLWa - per gugl 
leicht zu finden -, das liefert mehr Details. Und fürs Timing sind die 
Datenblätter vom NT7701/NT7702 (werden in besagtem Datenblatt als 'used 
IC' benannt) sehr aufschlussreich.

Autor: Dirk W. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich bastel gerade an einer Platine für das WD-H3224V und habe zwei 
Fragen zu dem Ding:

- Kann mir jemand sagen, wieviel Strom das Display aus der VEE-Leitung 
zieht (Kontrastspannung)?

- Hat mal jemand das Display mit 3,3V statt 5V betrieben? Ich möchte es 
an einen Controller anschließen der mit 3,3V läuft und mir eigentlich 
die Levelshifter ersparen...

Gruß, Dirk

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.