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
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
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
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
> 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 :-)
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 = ??)
> 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.
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