Hallo,
ich möchte den Kontrast der Pollin Wintek LCD über PWM ansteuern. Ich
habe es probiert. Bei "geringeren" (gemessen mit Oszi: 1,2kHz und 5kHz)
PWM-Frequenzen "flimmert" es etwas im Halbsekunden- bis Sekundentakt
jeweils einmal. Bei höherer PWM-Frequenz (gemessen mit Oszi: 20kHz)
flimmert es nicht mehr, aber es ist so eine Art "Geisterbild" zu
erkennen.
Mit welcher PWM-Frequenz muss man den Kontrast ansteuern? Oder benötigt
das LCD eine Zusatzschaltung (=Tiefpass)? Andere LCD werden laut
Schaltplan auch ohne Zusatzbeschaltung über PWM angesteuert.
Aber vielleicht habe ich auch im AVR softwaremäßig was falsch gemacht?
So ganz habe ich nämlich nicht verstanden, wie die PWM-Frequenzen, die
ich nachgemessen habe, zustanden kommen. Vielleicht kann mir das jemand
erklären:
- Clock ist ein 20MHz Quarz
- genutzt wird Timer1 eines Atmega644
- diesen habe ich in Mode1 geschaltet: PWM, Phase Correct, 8-bit
(WGM10-Bit in TCCR1A gesetzt)
- Prescaler habe ich mit den Bits CS10 und CS11 in TCCR1B versuchsweise
auf 64, 8 und 1 gesetzt.
- In OCR1A wird das Tastverhältnis eingstellt (0-255)
Mit Prescaler 64 habe ich eine PWM-Frequenz von ~1,2kHz gemessen
Mit Prescaler 8 habe ich eine PWM-Frequenz von ~5kHz gemessen
Mit Prescaler 1 habe ich eine PWM-Frequenz von ~20kHz gemessen
Wie komme ich da mathematisch darauf bei einer Clock von 20MHz?
Eigentlich dachte ich "Clock Prescale 512" (512=2x256, weil er ja
bis 255 up und down counted und jeweils bei OCR1A den Ausgang ändert?)
Aber das haut nicht hin (außer bei Prescaler 8), also muss ich irgendwo
einen Denkfehler haben?
Danke im voraus,
Kermit
Hm, irgendwie sind die Slashes verschwunden. Kann den Beitrag leider
nicht editieren (auch sorry für die furchtbaren, grammatikalischen
Flüchtigkeitsfehler - ich denke man kann es aber trotzdem verstehen).
Da die Slashes fehlen, hier noch mal die Formel, womit ich nur bei
Prescaler 8 auf den richtigen Wert komme:
PWM-Frequenz = Clock : Prescaler : 512
@ Kermit (Gast)
>PWM-Frequenzen "flimmert" es etwas im Halbsekunden- bis Sekundentakt>jeweils einmal.
Komisch.
>Mit welcher PWM-Frequenz muss man den Kontrast ansteuern?
Gar nicht! Der muss analog eingestellt werden, meist manuell per Poti.
> Oder benötigt das LCD eine Zusatzschaltung (=Tiefpass)?
Ja. Siehe
http://www.mikrocontroller.net/articles/Pulsweitenmodulation#DA-Wandlung_mit_PWM> Andere LCD werden laut>Schaltplan auch ohne Zusatzbeschaltung über PWM angesteuert.
Sicher? Oder verwechselst du das nicht mit der Hintergrundbeleuchtung?
MFG
Falk
Per Poti funktioniert das Display natürlich einwandfrei. Aber das wollte
ich gerade weg haben und den Kontrast digital regeln.
Dafür habe ich schon eine fertige Software, nur ist die PWM-Frequenz für
mein Wintek Display wohl zu niedrig, bzw. das geht so nicht ohne
Tiefpass. Ein Tiefpass ist für das Display nicht vorgesehen und bei den
normalerweise eingesetzten 2x16 Dotmatrix-LCDs scheint es so auch keine
Probleme gegeben zu haben.
Mein Problem ist nun, wie ich den Tiefpass dimensioniere? Der Link hilft
mir dabei auch nicht wirklich weiter (warum soll ich V_Ripple
ausrechnen? Ich möchte den Werte für RC haben). Mit den im Beispiel
gezeigten 100K und 22n geht das Display gar nicht erst an. Selbst wenn
ich R um einiges verkleinere, wird der Kontrast sehr schwach im
Gegensatz zu keinem R. Am Kontrastpin fließt ein Strom von 0,5mA, wenn
ich ihn direkt gegen Masse schalte.
Vielen Dank,
Kermit
Hm, ich habe nun mit mehreren RC-Werten experimentiert. Es ist nahezu
immer so, dass ich kein sauberes GND mehr kriege, sobald ein RC-Glied
drin ist (selbst bei 0% PWM also 0V am uC).
Folgenden Kompromiss habe ich nun:
uC-Ausgang --- R=1K --- LCD-Contrasteingang
|
=== C = 330nF
|
--- GND
Wenn ich den PWM auf 0 stelle, dann habe ich einen vernünftigen Kontrast
(Direkt gegen Ground ohne RC-Glied habe ich viel stärkeren, bzw. zu
starken Kontrast). Da ich das Display aber im KFZ einsetzen will, wo es
im Winter -10Grad und im Sommer +50 sein können, weiß ich nicht ob man
bei jeder Temperatur den Kontrast noch vernünftig regulieren kann, wenn
ich das RC-Glied reinsetze? Ein OP-Amp oder ähnliches will ich auch
Platzgründen aber keinesfalls mehr einsetzen!
Hi
>Da ich das Display aber im KFZ einsetzen will, wo es im Winter -10Grad
Optimist. Wenn das keins mit erweitertem Temperaturbereich ist, solltest
du mit 0..50° rechnen.
MfG Spess
Ja, es ist eines mit angegebener Betriebstemperatur von 0..50Grad. Aber
die 0Grad sollten auch im Winter hoffentlich recht schnell erreicht
werden. Lagertemperatur ist mit -20 bis +70 Grad angegeben.
@ Kermit (Gast)
>ich das RC-Glied reinsetze? Ein OP-Amp oder ähnliches will ich auch>Platzgründen aber keinesfalls mehr einsetzen!
Wirst du wahrscheinlich aber müssen. Die gibte es aber recht klein im
SO8 Gehäuse, wenn man will auch SOT23.
MFG
Falk
@ Martin (Gast)
>Deinen Schaltungsvorschlag möchte ich gerne einsetzen, bekomme jedoch>"komische" Simulationsergebnisse. Hab' ich etwas übersehen?
Ja. Dein Tiefpass wird im Wesentlichen aus R2 und C1 gebildet. Macht
50µs Zeitkonstante. Bissel wenig für 3kHz PWM-Frequenz.
MFG
Falk