Hallo Leute, ich habe eine Frage bezüglich der Kombination uC (3,3V) und HD44780. Im Datenblatt des Displays steht, dass es am besten mit 5V betrieben wird (die Logik, nicht das Backlight). Im Datenblatt des Controllers (Hitachi HD44780) steht, dass auch niedrigere Spannung für die Logik verwendet werden kann. Hat schonmal jemand ein Display mit 3,3V betrieben? Es geht mir eigentlich nur um die Pegelanpassung zwischen 3,3V und 5V. Das Display erkennt auch ein 'high'-Signal, wenn dieses 3,3V vom uC ist. Ich glaube es sollte mindestens 0,7*Vcc sein, also 3,5V. Mit nem 74F125D (Buffer) könnte ich ja die Spannung anpassen, jedoch nur in eine Richtung. Wenn ich die Read/Write-Leitung ebenfalls benutzen möchte, so würde bei direktem Anschluss das Display ja wahrscheinlich 5V an die Leitung setzen, oder? Das wäre natürlich für den uC nicht so gut. Der Buffer geht aber nur in eine Richtung... Hat da jemand eine Meinung zu, wie ich das lösen kann?
ichmirselber schrieb: > Wenn ich die Read/Write-Leitung ebenfalls benutzen > möchte, so würde bei direktem Anschluss das Display ja wahrscheinlich 5V > an die Leitung setzen, oder? Der Busy-Test wird völlig überbewertet. Auch mit festen Delays ist bei sinnnvoller Programmablaufplanung die CPU-Auslastung durch das LCD unerheblich. Peter
Ja, hab ich mir auch schon gedacht, das einfach wegzulassen. Dachte nur, jetzt habe ich mal Port-Leitungen frei :) - da kann ich mal alle Leitungen des Displays anschließen und brauche nichtmal Nibbles zu versenden - da wollte ich mir den Luxus gönnen und auch mal die Read-Funktion benutzen, aber jetzt stehe ich halt vor dieser Frage.
Nimm in die Richtung zum Display einen 74HCT541, für die Richtung zurück ein 74LVC541, dann geht das. Oder gleich einen Bidirektionalen wie den 74AVC8T245. fchk
Moin, wie Peter Dannegger schon schrieb, der Aufwand lohnt sich nicht, auch wenn genug Portleitungen zur Verfügung stehen. 5V für Versorgung und Kontrast, Logik 3V3. Die Abfrage des Busy Flags hat einen groben Nachteil: deine Software bleibt stehen wenn das Display nicht angeschlossen ist. /RW fest auf auf GND legen! MfG
> Die Abfrage des Busy Flags hat einen groben Nachteil: deine Software > bleibt stehen wenn das Display nicht angeschlossen ist. Mal abgesehen davon das sowas ein Zeichen von schlechter Programmierung ist, so wird es wohl in der Regel akzeptabel sein wenn ein Geraet nicht mehr funktioniert wenn sein LCD ausgefallen ist. Ich haette allerdings auch keine Hemmungen bei der Busyleitung einen Spannungsteiler zu verwenden. Das diese Loesung relativ langsam ist, ist ja gerade bei Busy vernachlaessigbar. Olaf
Moin, Olaf schrieb: > Mal abgesehen davon das sowas ein Zeichen von schlechter Programmierung > ist, so wird es wohl in der Regel akzeptabel sein wenn ein Geraet nicht > mehr funktioniert wenn sein LCD ausgefallen ist. na was den nun, schlechte Programmierung, akzeptabel oder doch was ganz anderes :-) MfG
Ein 5V Display kann übrigens mit einer Villard-Schaltung vom 3V3-Controller versorgt werden, einfach einen Pin schnell toggeln lassen. Abschließend kann man noch einen Widerstand und eine Z-Diode dahinterhängen, damit die Spannung nicht unzulässig hochläuft. Bei genügend hoher Frequenz können die Elkos im Schaltplan durch Keramikpillen 100nF ersetzt werden. Die Dioden sollten Schottkys sein (BAR43S oder ähnlich).
> schlechte Programmierung, akzeptabel oder doch was ganz anderes :-)
Beides!
Sachen wie:
while(no_busy());
Sind immer boese!
Bei mir sieht das immer so aus:
tickerstart(100);
while(no_busy() && tickerask());
Aber wenn das LCD ja sowieso kaputt ist wird es hier wohl keiner
merken. Trotzdem bleibt sowas Murks. Man koennte ja z.b auch bei
defekten LCD noch ein File auf seiner MMC Karte schliessen wollen
oder mit der StatusLED den Fehlercode morsen.
Olaf
Travel Rec. schrieb: > Ein 5V Display kann übrigens mit einer Villard-Schaltung vom > 3V3-Controller versorgt werden, einfach einen Pin schnell toggeln > lassen. Kannst du dazu konkrete Bauteilwerte und die Frequenz angeben?
Travel Rec. schrieb: > Ein 5V Display kann übrigens mit einer Villard-Schaltung vom > 3V3-Controller versorgt werden, einfach einen Pin schnell toggeln > lassen. Abschließend kann man noch einen Widerstand und eine Z-Diode > dahinterhängen, damit die Spannung nicht unzulässig hochläuft. Bei > genügend hoher Frequenz können die Elkos im Schaltplan durch > Keramikpillen 100nF ersetzt werden. Die Dioden sollten Schottkys sein > (BAR43S oder ähnlich). Das Display läuft ja mit den 3,3V als Logikansteuerung.
Micha schrieb: > Kannst du dazu konkrete Bauteilwerte und die Frequenz angeben? Frequenz über 10kHz, am besten ein OCR-Pin, PinToggle oder PWM. Schottky-DoppelDiode BAR43S im SOT23, Kondensatoren 100nF/16V/X7R. Gegebenenfalls hinter die Spannungsverdopplung noch 100 Ohm Serienwiderstand und eine 5.1V-Z-Diode. --- schrieb: > Das Display läuft ja mit den 3,3V als Logikansteuerung. Ist schon klar, aber für die Versorgung und den Kontrast braucht es bei Standard-LCDs 5V.
Travel Rec. schrieb: > Ist schon klar, aber für die Versorgung und den Kontrast braucht es bei > Standard-LCDs 5V. Ja für die Versorgung schon, das stimmt. Der Kontrast liegt jedoch meist nahe 0V.
gasst schrieb: > Ja für die Versorgung schon, das stimmt. Der Kontrast liegt jedoch meist > nahe 0V. Ja. Gegenüber 5V! Bei 3V3 muß man knapp -2V als Kontrastspannung anlegen.
Aso, gut zu wissen, da hab ich noch garnicht drüber nachgedacht :) Stimmt!
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.