Ich würde gerne ein LCD-Display durch einen AVR nur bei Bedarf einschalten/aktivieren, um Strom zu sparen. Hatte mir überlegt dafür einen kleinen N-Channel Mosfet (IRLML 2502) zu verwenden. Ist meine Beschaltung, wo ich VDD, RW, sowie BLK dazu über den FET nach GND schalte korrekt? Gruß Olaf
Wenn du GND unterbrichst, musst du sicherstellen, dass alle Eingänge des Displays zu diesem Zeitpunkt auf HIGH liegen. Ich würde lieber VSS (und BLA) schalten. Die meisten LC-Displays (ohne Backlight) nehmen so wenig Strom auf, dass du sie direkt an einen I/O Pin anschließen kannst. Beim Backlight musst du mal schauen, da gibt es große Unterschiede. 20mA sollten jedenfalls kein Problem sein.
:
Bearbeitet durch User
Kann man so machen, muss aber vor und während des abschaltens dafür sorgen, dass die Daten- und Steuerleitungen auf High-Pegel liegen.
Stefan ⛄ F. schrieb: > Ich würde lieber VSS (und BLA) schalten. Wobei dann die Daten- und Steuerleitungen auf Low zu schalten sind.
H. H. schrieb: > muss aber vor und während des abschaltens dafür > sorgen, dass die Daten- und Steuerleitungen auf High-Pegel liegen. Was wäre denn, wenn nicht? Also warum müssen die einen High-Pegel haben?
> Also warum müssen die einen High-Pegel haben?
Weil du GND abschalten willst. Abschalten heisst, alle Pinne sind
auf gleichem Potential.
Olaf
Olaf schrieb: > H. H. schrieb: >> muss aber vor und während des abschaltens dafür >> sorgen, dass die Daten- und Steuerleitungen auf High-Pegel liegen. > > Was wäre denn, wenn nicht? Also warum müssen die einen High-Pegel haben? Weil du dem Display sonst doch wieder GND lieferst, über die entsprechende Daten/Steuerleitung und ihre Eingangsschtzbeschaltung.
Olaf schrieb: > Ich würde gerne ein LCD-Display durch einen AVR nur bei Bedarf > einschalten/aktivieren, um Strom zu sparen. Das Ding zieht kaum 1mA. Die Hintergrundbeleuchtung ist der wahre Stromfresser! > Ist meine Beschaltung, wo ich VDD, RW, sowie BLK dazu über den FET nach > GND schalte korrekt? Lass es. Schalte VCC mit einem P-Kanal MOSFET. Es muss auch kein Super-Duper moderner sein, es reicht ein old school BSS84. Vor dem Abschalten müssen aber alle Signal am LCD auf LOW geschaltet werden. P1 ist nicht ganz korrekt. Der +5V Anschluß wird nicht gebraucht, denn das LCD hat intern schon einen Spannungsteiler. Deine Schaltung verbraucht nur unnütz zusätzlichen Strom, auch wenn das nur ein paar hundert uA sind. http://elm-chan.org/docs/lcd/lcd3v.html
Olaf schrieb: > Was wäre denn, wenn nicht? Also warum müssen die einen High-Pegel haben? Weil sonst der Strom über die Schutzdioden der Eingänge von GND des Moduls nach low abfließt, das LCD also immer noch genug Strom zum Arbeiten bekommt und du genau gar nix sparst.
Olaf schrieb: > Was wäre denn, wenn nicht? Also warum müssen die einen High-Pegel haben? https://www.mikrocontroller.net/articles/Pegelwandler#Schutzdioden GND wird dann über einen Eingang und dessen ESD-Schutzdiode verbunden. GND schalten ist bei den meisten ICs und Geräten keine gute Idee und muss GUT überlegt sein. VCC schalten ist besser.
Olaf schrieb: > Was wäre denn, wenn nicht? Also warum müssen die einen High-Pegel haben? Weil im Datenblatt des Display-Controllers (wie bei fast allen IC) steht, dass die Spannung an sämtlichen Pins zwischen VSS und GND liegen muss. Wenn der GND Pin in der Luft hängt, aber ein Eingang auf LOW, dann ist diese Bedingung nicht mehr erfüllt. Dann kann alles möglich passieren, von Fehlfunktionen bis hin zum Defekt.
Das LCD kann man bei einem AVR oder ähnlichem uC mit starken Ausgängen auch direkt mittels eines IOs mit Spannung versorgen, da spart man sich den MOSFET. 1mA ist kein Problem, da entsteht auch kein nennenswerter Spannungsabfall. Nur die Hintergrundbeleuchtung braucht deutlich mehr. Da sollte man schon einen MOSFET nutzen. Da kann man beliebig Anode (P-Kanal) oder Kathode (N-Kanal) schalten, die ist galvanisch vom Rest getrennt.
> Das Ding zieht kaum 1mA. Die Hintergrundbeleuchtung ist der wahre > Stromfresser! Also ich finde ja das 1mA schon echt heftig sind. :) Aber vielleicht das Display ja auch noch einen Sleepmode und man kann das per Software loesen. Wuerde auch mal pruefen. Olaf
Habs umgezeichnet, nur noch das Backlight wird geschaltet, reicht. Wäre das Poti jetzt richtig beschaltet? Hatte es hier anders verstanden: https://www.mikrocontroller.net/articles/AVR-GCC-Tutorial/LCD-Ansteuerung
Olaf schrieb: > Wäre das Poti jetzt richtig beschaltet? Nein. Das geht so:
1 | Poti |
2 | 10k 33k |
3 | GND |----[===]---[===]---o VSS |
4 | ^ |
5 | | |
6 | VO |
:
Bearbeitet durch User
Wenn doch aber VSS mit GND zu beschalten ist, wie soll dann ein Poti (Spannungsteiler) zwischen GND und GND funktionieren? Und warum ist es unter https://www.mikrocontroller.net/articles/AVR-GCC-Tutorial/LCD-Ansteuerung anders beschrieben?
Stefan ⛄ F. schrieb: > Olaf schrieb: >> Wäre das Poti jetzt richtig beschaltet? > > Nein. Das geht so: Poti > 10k 33k > GND |----[===]---[===]---o VSS > ^ > | > VO Der Widerstand nach Vss ist überflüssig, der steckt bereits im Display. Und wenn man dort nach den Werten schaut, dann kann man den sinnvollsten Wert fürs Poti ermitteln.
Olaf schrieb: > Wenn doch aber VSS mit GND zu beschalten ist, wie soll dann ein Poti > (Spannungsteiler) zwischen GND und GND funktionieren? Tschuldigung, ich meinte VDD.
Olaf schrieb: > Habs umgezeichnet, nur noch das Backlight wird geschaltet, reicht. > Wäre das Poti jetzt richtig beschaltet? Ist OK, man kann aber ein Ende des Potis auch offen lassen. Beim Backlight würde ich einen Vorwiderstand vorsehen. Manchmal ist der im LCD schon drin, manchmal nicht.
Falk B. schrieb: > GND schalten ist bei den meisten ICs und Geräten keine gute Idee und > muss GUT überlegt sein. VCC schalten ist besser. Das ist egal, dann kommt der Strom halt über high-Eingänge. Da müssten alle Eingänge (vorher) auf low. Blöd, wenn bei denen aber low aktiv ist, wie E und R/W beim LCD. Schlauer ist es dann, E und R/W auf high zu legen, Chip inaktiv, und dann GND zu trennen. Auch bei I/O wo man gerade nicht weiss ob er als Eingang oder Ausgang arbeitet kann man einfach den pull up aktivieren um den Pin, falls er gerade ein Eingang sein sollte, auf high zu halten. Pull Downs gibt es ja eher selten. Sonst bekommt der Chip vor allem beim Einschalten gleich mal ein E(nable) Signalimpuls vorgesetzt.
Nein, es ist keine gute Idee, einen Pin auf HIGH zu schalten, während das ICH keine Versorgungsspannung an VDD hat. Genau so wenig soll kein Pin auf LOW liegen, während GND in der Luft hängt. Beachte die absolute maximum Ratings im Datenblatt! Die heißen nicht umsonst so.
Ist mir an der Stelle jetzt egal, Backlight aus reicht mir als Stromsparmaßnahme. Nur die Potigeschichte verunsichert mich. Stefan macht es dann ja quasi doch wie auch im Tutorial mit noch zusätzlichem Widerstand. Also wie ich es auch anfangs hatte bis auf den 33k. Falk hingegen macht es anders, was ja scheinbar auch richtig wäre, ich aber so nicht im Tutorial oder anderswo gefunden habe. Auch sollte man doch beim Poti das offene Ende auf den Schleifer legen, damit es immer einen definierten Widerstand gibt. Hab ich zumindest auch mal hier im Forum so erzählt bekommen und leuchtet mir auch ein.
Hier kannst du die Spannungsteilerkette sehen, rechts die fünf 2,2kOhm Widerstände. https://1.bp.blogspot.com/-BH6g5IAKD70/WtuK0zxHS9I/AAAAAAAAAcs/UuTFpxEoo8QgVa7xlqZte37_t79gnqN2QCLcBGAs/s1600/IMG_3051.JPG Das eine Ende hängt an der Versorgungsspannung (Vdd) und das andere Ende am Anschluss für die Kontrastspannung (Pin3).
OK, also die Variante von Falk verwenden. Aber warum in diesem Fall beim Poti einen Anschluss offen lassen?
Olaf schrieb: > Ist mir an der Stelle jetzt egal, Backlight aus reicht mir als > Stromsparmaßnahme. Das wäre mein erster Ansatz gewesen, mal messen, was das LCD ohne Beleuchtung an Strom zieht. > Nur die Potigeschichte verunsichert mich. Auszug aus einem China-I2C-Adapter im Anhang, so und nur so gehört das Poti, man kann also zwischen 0V und Betriebsspannung einstellen. Interessant wäre mal, wie groß das Porti werden darf, falls die 0,5mA über 10k stören.
Achtung beim Backlight. Nicht jedes LCD will da 5V direkt dran haben, sondern braucht einen Widerstand zur Stromeinstellung.
Stefan ⛄ F. schrieb: > Wenn du GND unterbrichst, musst du sicherstellen, dass alle Eingänge des > Displays zu diesem Zeitpunkt auf HIGH liegen. Ich würde lieber VSS (und > BLA) schalten. Müssen dann nicht alle Eingänge auf LOW (GND-Potential) liegen, sonst tritt eine Versorgung des LCDs uber die internen Schutzdioden gegen Vcc ein.
Bei vielen Displaybeleuchtungen kommt man übrigens auch mit weitaus weniger Strom aus, ohne daß die Helligkeit allzu deutlich abnimmt. Ich hatte mal eines, das war mit 30mA angegeben, aber 20mA taten es genauso.
Olaf schrieb: > OK, also die Variante von Falk verwenden. Aber warum in diesem > Fall beim > Poti einen Anschluss offen lassen? Ob man den offen lässt, oder mit dem Schleifer verbindet, spielt hier keine Rolle. Es entsteht ja keine kritische Situation wenn der Schleifer mal durch ein Staubkorn abhebt.
Nop schrieb: > aber 20mA taten es genauso. Ich würede den benötigten Strom mal messen. Hier hängt sie über 1k an GND. Mit einem AVR Pin könnte sie dann abgeschaltet werden.
Olaf schrieb: > Ist meine Beschaltung, wo ich VDD, RW, sowie BLK dazu über den FET nach > GND schalte korrekt? Es gibt in dieser Welt verschiedene "LCD-Displays" Das kommt drauf an, was deins für ein Typ ist (Datenblatt?) ;-) Nop schrieb: > Ich hatte mal eines, das war mit 30mA angegeben, aber 20mA taten es genauso. Das ist ein Unterschied von weniger als 1.8dB. Den siehst du mit dem Auge allenfalls, wenn du zwei Quellen direkt nebeneinander vergleichen kannst.
Bei der Kontrastspannung sollte man wissen, das sie sich auf VDD bezeiht, nicht auf GND. Bei den mir bekannten Display liegt der optimale Wert im Bereich zwischen -4 und -4,5 Volt. Wenn du nun ein Poti verwendest, dass den ganzen Versorgungsspannungsbereich überstreicht, kannst du nur 10% der Strecke sinnvoll nutzen. Die Einstellung wird dadurch unkomfortabel. Deswegen habe ich den Vorwiderstand empfohlen. Soll dieser sich bereits auf dem Display-Board befinden, kann man das Poti zweipolig zwischen VO und GND anschließen. Übrigens lassen sich die meisten dieser Displays auch problemlos mit 3,3V betreiben. Allerdings muss man dann eine Ladungspumpe basteln, um eine ausreichend hohe Kontrastspannung zu erzeugen. Wenn man dafür PWM oder eine variable Frequenz verwendet, kann das Poti entfallen.
:
Bearbeitet durch User
MaWin schrieb: > Das ist egal, dann kommt der Strom halt über high-Eingänge. Hi, der Begriff "Backpowering" fällt in dem Zusammenhang. Das heißt auf Deutsch: Der "Verbraucher" bekommt nicht über dafür vorgesehene Anschlüsse seine Versorgungsspannung, sondern über andere Eingänge bzw. Ausgänge (in dem Zusammenhang Datenbus/Steuerbus-etc.-Anschlüsse.) Bei hochohmiger Aussenbeschaltung gibt es nach einhelliger Auffassung keine größeren Probleme. Beitrag "Backpowering_CMOS" Bei üblichen LCDs wäre ich da vorsichtiger. (Und das LED-Backlight ist besser separat zu schalten. Mit Transistor sogar "dimmbar".) ciao gustav
Hi, es gibt noch etwas anderes bei diesen LCDs zu beachten. Nach Abschalten der Versorgungsspannung und Wiedereinschalten, ist das LCD nicht in der Lage, sofort Befehle auszuführen. 1.) Laut Dabla: "The busy state lasts for 10 ms after VCC rises to 4.5 V. Das heißt, erst noch 10 ms Wartezeit. In einigen Datenblättern steht noch, dass der Einschaltvorgang nicht zu lang dauern darf, d.h. ein "dicker" Elko zwischen Vcc und Vss wäre hier Fehl am Platze. 2.) Das Display muss wieder initialisiert werden, da ja die Speicherinhalte verlorengehen. Das Programm muss dahingehend ausgelegt sein. Etwas anderes wäre es, wenn man zwischen zwei oder mehreren Dislplays im laufenden Betrieb umschalten möchte. Das geht dann mit "Bustreiber-Ics" wohl am praktikabelsten. ciao gustav
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.