Forum: Analoge Elektronik und Schaltungstechnik Schaltplan für i2c Schnittstelle für LCD-Modul


von Marco (marco7)


Lesenswert?

Hallo, folgende Gegebenheit:

Ich möchte an einem Teensy einen LCD Modul Display betreiben.
Dieses möchte ich über i2c ansteuern. Ich weiß (auch schon getestet), 
dass es hierfür fertige i2c Schnittstellen gibt, allerdings würde ich 
die Schnittstelle grundsätzlich gerne in den Schaltplan integrieren und 
auf die Platine direkt packen, so dass am Ende nur „reine“ Verbindungen 
von der Platine zum Modul geführt werden müssen. Das externe 
Schnitstellen-Modul soll wegfallen

Gibt es hierfür einen passenden Schaltplan oder könnt ihr etwas 
empfehlen? Im Internet konnte ich Unterschiedliches dazu finden.

Das LCD Modul läuft mit 5V, die Aus/Eingänge am Mikrocontroller sind 
nicht 5 V tolerant, sondern arbeiten mit 3,3V.
Ich möchte die gleichen Funktionen, wie beispielsweise die Regelung der 
Hintergrundbeleuchtung.

Um den Spannungsunterschieden entgegen zu wirken, habe ich an den 
PCA9517 gedacht.

Schon mal vielen Dank

von DerEinzigeBernd (Gast)


Lesenswert?

Und was für ein "LCD Modul" ist das? Welche Schnittstelle verwendet das?

Du brauchst dann einen 
I2C-auf-welche-Schnittstelle-auch-immer-Konverter.

Sollte das ungenannte Modul eines der üblichen HD44780-Displays sein, 
kannst Du es im 4-Bit-Mode mit einem I2C-Portexpander à la PCF8574 
ansteuern.

Siehe auch 
https://www.mikrocontroller.net/articles/Port-Expander_PCF8574

von Marco (marco7)


Lesenswert?

Ja, es handelt sich um eines der HD44780 Displays.

Danke

Gibt es hierfür einen konkreten Schaltplan?

von Marco (marco7)


Lesenswert?

Sorry, habe vorhin etwas verwechselt.

Es muss nicht zwingend die Hintergrundbeleuchtung eingestellt werden 
können, sondern der Kontrast zwischen Schrift und Hintergrund geregelt 
werden können.


Edit:
Habe jetzt das hier gefunden:
https://avrhelp.mcselec.com/index.html?lcd_i2c_pcf8574.htm
Kann jemand verifizieren, ob das so klappen könnte?

: Bearbeitet durch User
von Achim H. (pluto25)


Lesenswert?

Diese Schaltung ist weit verbreitet und funktioniert bei zig(tausend) 
LCDs.
Der Kontrast über Software? Das kann ein Pwm Ausgang erreichen. Aber ist 
noch ein PWM-Pin frei? Den Kontrast über den Pcf zu steuern benötigt 
eine gleichmäßige Datenrate. Nicht unmöglich aber schwierig - vielleicht 
besser eine I2C D-A Wandler?
Wenn alles auf einer Platine soll wäre es nicht einfacher einen MC mit 
mehr Beinchen zu nehmen?
PS Das Lcd arbeitet auch mit 3,3V, benötigt dann (mit etwas Pech) eine 
negative Vo

von Jochen (Gast)


Lesenswert?

A. H. schrieb:
> vielleicht besser eine I2C D-A Wandler?
Oder ein I2C-Poti?

von Walter T. (Gast)


Lesenswert?

Wenn Du den Kontrast nur per Software einstellbar machst, achte darauf, 
diesen auch über irgendeinen Debug-Port einfach und zuverlässig setzen 
zu können.

Wenn der Kontrast nur in einem tiefen Menü einstellbar ist, ist das 
schnell der perfekte Weg, sich selbst auszusperren.

von Achim H. (pluto25)


Lesenswert?

Sorry OffTropic
@ Walther T  auch schon die Batterie einer König leer gehabt? Mit eine 
starken Taschenlampe von unten gegen das Lcd konnte so gerade noch das 
Kontrast-menue erreicht werden ;-)

von Marco (marco7)


Lesenswert?

Alles klar, danke für die Antworten.

Grundsätzlich würde mir die Einstellung des Kontrastes über ein Poti 
ausreichen.

Was ist eurer Meinung nach der „bessere“ Weg:
- Display mit 5V betreiben und zum Mikrocontroller einen Pegelwandler 
einsetzten
- wie oben erwähnt mit 3,3V und zusätzlich einer negativen Spannung 
arbeiten?

Hat jemand für die zweite Möglichkeit einen funktionierenden Schaltplan?

von Falk B. (falk)


Lesenswert?

Marco schrieb:
> Was ist eurer Meinung nach der „bessere“ Weg:
> - Display mit 5V betreiben und zum Mikrocontroller einen Pegelwandler
> einsetzten

Würde ich machen.

> - wie oben erwähnt mit 3,3V und zusätzlich einer negativen Spannung
> arbeiten?

Dafür braucht man eine kleine Ladungspumpe, siehe ICL7662.

von olaf (Gast)


Lesenswert?

> Was ist eurer Meinung nach der „bessere“ Weg:

Warum willst du denn was du willst?

Viele moderne LCDs kommen heute mit 3.3V aus und brauchen
keine negative Spannung. Da wird anders wenn du den vollen
industriellen Temperaturbereich brauchst.
Soll das also in einer ungeheizten Garage dann kann
das notwendig sein. Es waere dann allerdings auch klug
den Kontrast automatisch temperaturabhaengig zu steuern.

Soll das fuer deine Bude sein wuerde ich drauf verzichten.

Oh...und es gibt wohl auch LCDs welche sehr aehnliche den
Hitachiteilen sind und bereits I2C eingebaut haben.


Olaf

von Marco (marco7)


Lesenswert?

olaf schrieb:
> Warum willst du denn was du willst?

Die Displays sollen sowohl innen als auch außen eingesetzt werden 
können. Wahrscheinlich wird es außen während dem Einsatz niemals kälter 
als 0 Grad, aber das soll nicht zum limitierenden Faktor werden. Somit 
soll theoretisch ein Einsatz außen (in unserer Umgebung) jederzeit 
möglich sein. Dabei werden diese aber nur zeitbeschränkt für ein paar 
Stunden am Stück eingesetzt.


Hast du eine Alternative? Grundsätzlich bin ich auch für andere Displays 
offen.
So gesehen wäre ein Display, dass mit 3,3V betrieben wird am besten, da 
ich mir die Pegelwandler sparen kann. Allerdings soll ein kein Produkt 
sein, dass in 2 Jahren ausverkauft ist und nicht mehr hergestellt wird 
(Ich weiß, dass das reine Spekulation ist)
Aber die HD44780 Module gibt es schon ewig und hier könnte ich jederzeit 
auf andere zurückgreifen und diese Einbauen, falls in ein paar Jahren 
die gewählten nicht mehr verfügbar sind.

Aktuell hat mein Display folgende Werte: 4x 20 Zeichen, Kosten etwa 10 - 
12€

Beispielsweise sind mit viele kleine oled-Displays, die es sehr günstig 
für Arduinos gibt, zu klein.

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

Marco schrieb:
> Beispielsweise sind mit viele kleine oled-Displays, die es sehr günstig
> für Arduinos gibt, zu klein.

Oled hält auch nicht so lange, schwankende Umgebungstemperaturen machen 
das auch nicht besser.
Direkt an 3,3V laufen die Display von EA, sinnvollerweise mit SPI 
betrieben. Die gibts auch schon recht lange:
https://www.reichelt.de/lcd-textmodul-59-x-21-3-mm-blau-ea-dogm204b-a-p140427.html
Die DOGM204 sind 4-Zeiler, es gibt aber auch Grafikmodule und welche mit 
weniger Zeilen. Hier noch ein 4-Zeiler mit 10 Chars/Zeile:
https://www.reichelt.de/lcd-textmodul-29-8-x-10-4-mm-weiss-ea-dogs104n-a-p156570.html

von Marco (marco7)


Lesenswert?

Matthias S. schrieb:
> Direkt an 3,3V laufen die Display von EA, sinnvollerweise mit SPI

Danke, die werde ich mir nochmal genauer anschauen. Letztes Mal sind die 
für mich ausgeschieden, da sie im Vergleich zu den anderen etwas kleiner 
sind, aber vielleicht findet man eine Möglichkeit.

von Stefan F. (Gast)


Lesenswert?

Bei mobilem Einsatz an wechselnden Orten wäre ein Potentiometer doch 
sicher viel praktischer, als den Kontrast über Menüs und Tasten 
einzustellen. Mit einem Poti kommt jeder klar. Warum kompliziert, wenn 
es einfach geht?

von DerEinzigeBernd (Gast)


Lesenswert?

Marco schrieb:
> So gesehen wäre ein Display, dass mit 3,3V betrieben wird am besten, da
> ich mir die Pegelwandler sparen kann.

HD44780-Displays funktionieren heutzutage auch mit 3.3V, Du musst Dich 
nur um die Kontrastspannung kümmern. Mit einem ICL7660 und zwei 
Kondensatoren (und einem Trimmer/Poti zum Einstellen) ist das Problem 
aber schnell gelöst.

Ja, und nimm ein Poti. Keine Software nötig, unschlagbar einfaches 
Userinterface ...

von Stefan F. (Gast)


Lesenswert?

DerEinzigeBernd schrieb:
> HD44780-Displays funktionieren heutzutage auch mit 3.3V

Mein erstes habe ich vor 30 Jahren gekauft und stammt aus einer 
Restposten Kiste. Es ist also vermutlich noch älter. Und da war schon 
normal, dass sie mit 3,3V funktionierten. Warum die Händler in ihre 
Kataloge immer nur 5 schreiben ist mir ein Rätsel.

> Du musst Dich nur um die Kontrastspannung kümmern

eben. Und eventuell braucht die Hintergrundbeleuchtung auch mehr 
Spannung, falls vorhanden.

von Gerald B. (gerald_b)


Lesenswert?

Der PCF 8574 wurde ja schon genannt. Achte aber auf 2 hundsgemeine 
Fallen. Es gibt den PCF 8574 und den PCF 8574A. Beide unterscheiden sich 
durch den Adressbereich! Außerdem kannst du beiden theoretisch 8 
unterschiedliche Adressen zuweisen.
Sinnvoll ich zunächst einen I2C Scanner zu nutzen und zu gucken, auf 
welcher Adresse sich der PCF meldet.
2. Falle ist das die Adressleitungen in Hardware unterschiedlich genutzt 
werden. Zwischen einem Pollinbausatz und einem Chinamodul hatte ich mal 
2 vertauschte Leitungen zum Display. Nicht bei den Adresseingängen aber 
bei den 3 Steueranschlüssen. Kann man durch Patchen in der Lib 
korrigieren, aber man muß es erst mal wissen und braucht dann mehrere 
unterschieldliche Libs für die Module.

von Stefan F. (Gast)


Angehängte Dateien:

Lesenswert?

Der angehängte Screenshot ist aus dem Datenblatt vom HD44780U von 
Hitachi.

von Marco (marco7)


Lesenswert?

Ja, den Poti werde ich auf jeden Fall verbauen, das ist wirklich 
deutlich einfacher.

Als HD44780 Display habe ich aktuell dieses: AZDelivery HD44780 2004 LCD 
Display

DerEinzigeBernd schrieb:
> HD44780-Displays funktionieren heutzutage auch mit 3.3V, Du musst Dich
> nur um die Kontrastspannung kümmern.

Hast du dafür zufällig einen konkreten Schaltplan, dann würde ich das 
mal testen?
Und ja, Hintergrundbeleuchtung ist und muss vorhanden sein.

Gerald B. schrieb:
> Es gibt den PCF 8574 und den PCF 8574A.

Hier muss ich mich nochmal genauer einlesen, aber beispielsweise bei 
reichelt habe ich etliche Versionen gefunden, ..an, ..n, ..t, ..at, 
(aber nicht den PCF8574), weiß aber noch nicht, was die genauen 
Unterschiede sind.
Aber zwischen den von dir genannten Varianten müssten doch beide 
klappen, oder?

von Stefan F. (Gast)


Angehängte Dateien:

Lesenswert?

Marco schrieb:
> Hast du dafür zufällig einen konkreten Schaltplan,

Ich bin nicht Marco, aber ich habe einen. Die Schaltung ist in Kapitel 
11.7 in 
http://stefanfrings.de/mikrocontroller_buch/Einstieg%20in%20die%20Elektronik%20mit%20Mikrocontrollern%20-%20Band%203.pdf 
erklärt.

> müssten doch beide (PCF8574 mit und ohne A) klappen, oder?

Ja

Die anderen Varianten die du gesehen hast beziehen sich womöglich auf 
die Gehäuseform.

von Walter T. (nicolas)


Lesenswert?

Walter T. schrieb:
> Wenn der Kontrast nur in einem tiefen Menü einstellbar ist, ist das
> schnell der perfekte Weg, sich selbst auszusperren.

A. H. schrieb:
> Sorry OffTropic
> @ Walther T  auch schon die Batterie einer König leer gehabt? Mit eine
> starken Taschenlampe von unten gegen das Lcd konnte so gerade noch das
> Kontrast-menue erreicht werden ;-)

Nein, das ist mir bei einer Eigenkonstruktion passiert und beim 
"Monkey-Test" aufgefallen. Habe dann zur Fehlerbehebung mit einem 
Widerstand auf der Leiterplatte herumgestochert, um das Menü wieder 
lesen zu können.

von Stefan F. (Gast)


Lesenswert?

Geil ist auch, wenn man sein Smartphone versehentlich auf Koreanisch 
umstellt.

von Schlaumaier (Gast)


Lesenswert?

A. H. schrieb:
> Der Kontrast über Software? Das kann ein Pwm Ausgang erreichen.

So ein Unsinn.  Der TO will die Adapter-Platine in seine Schaltung 
einbauen. Dann braucht er nur ein Schraubenzieher-Poti mit einzubauen 
und gut ist.

Helligkeitsregelung über PWM macht nicht mal die Industrie bei ihren Mio 
an Displays. Die schalten höchstens ein Widerstand davor zum abblenden.

von olaf (Gast)


Lesenswert?

> Beispielsweise sind mit viele kleine oled-Displays, die es sehr günstig
> für Arduinos gibt, zu klein.

Die sind fuer diese Anwendung ungeeignet! Nach 6monaten Dauerbetrieb
schlecht lesbar, nach 12monaten geht es gegen unlesbar.

Olaf

von Schlaumaier (Gast)


Lesenswert?

Die üblichen HD44780-Display bekommt man (jedenfalls was ich gesehen 
habe) bis zu 40 x 4 Zeichen.

Einziger Vor-/Nachteil ist, das sie sehr groß sind dann. Da ist mit 
einen Normalen Gehäuse nix mehr zu machen.

Über die Langzeitauswirkungen habe ich keine Ahnung.

@TO. Ich finde die Adapter super Praktisch. Weil man damit einige Meter 
Kabel spart. Immerhin musst du JEDEN Kabel der bis zu den Display 
schaffen.
Allein dafür sind die Adapter prima. Ich löte die hinter das Display. Es 
wird ca. doppelt so dick. Und ich muss nur 4 Leitungen durch das Gehäuse 
schicken.

Was bei der Demontage zur Fehlersuche einfach prima ist. Besonders da 
ich diese Kabel mit PSK-Stecker für ein paar Cent (unter 12 
Cent/Stecker+ Buchse) prima an die Platine anklemmen kann.

Solltest du also das Display nicht direkt auf die Platine löten kann ich 
dir von deiner Idee nur abraten.

Und der Adapter (ca. 1.50 aus DE) ist preiswerter als die Teile einzeln. 
Vom Arbeitsaufwand her ganz zu schweigen.

von Schlaumaier (Gast)


Lesenswert?

olaf schrieb:
>> Beispielsweise sind mit viele kleine oled-Displays, die es sehr günstig
>> für Arduinos gibt, zu klein.

JO. da bin ich auch drauf rein gefallen. Bei Amazon 2 Stück 6 Euro und 
sahen auf den Foto riesengroß aus. ;) Als ich den Brief bekam musste ich 
die im Brief suchen.  Sind zwar Kristallscharf, aber so süss.

Ich werde sie als Display für eine Luxus-Fernkontrolle verbauen. Die 
passen nämlich in einen "Batteriekasten". ;)

von Gerald B. (gerald_b)


Lesenswert?

https://www.nxp.com/docs/en/data-sheet/PCF8574_PCF8574A.pdf
Im Datenblatt findest du die Unterschiede zu den Bezeichnungen. Es gibt 
3 Gehäusevarianten: DIP16, SO16 und SSOP20 - und die dann noch 
unterschiedlich verpackt.
Ja, es klappt mit beiden Varianten. Nur die Slave Adresse, an die der µC 
die Daten raus schickt, muß angepasst werden. Das sind 2 Zeichen im 
Quellcode.

von olaf (Gast)


Lesenswert?

> Die üblichen HD44780-Display bekommt man (jedenfalls was ich gesehen
> habe) bis zu 40 x 4 Zeichen.

Es eine Weile das ich mit sowas rumgemacht habe, aber ich meine die
haben schon zwei Controller integriert.

> JO. da bin ich auch drauf rein gefallen. Bei Amazon 2 Stück 6 Euro und
> sahen auf den Foto riesengroß aus. ;)

Bei Alieexpress tauchen mittlerweile auch 2.4" oder aehnliches zu 
halbwegs
akzeptablen Preisen auf. (10-15Euro) Aber allen gemein ist, sie sind
nicht geeignet fuer Dauerbetrieb weil die LEDs stark an Helligkeit 
verlieren.

Ich wuerde vielleicht mal schauen was Pollin hat. Die verkaufen ja immer 
irgendwelche LCDs als Restposten die manchmal auch aus Industrieware 
stammt. Die wird man natuerlich nie mehr nachkaufen koennen, aber bei 
2-3Euro kann man sich vielleicht einfach 3-4Stk leisten.

Olaf

von Marco (marco7)


Lesenswert?

Gerald B. schrieb:
> Im Datenblatt findest du die Unterschiede zu den Bezeichnungen.

Super, vielen Dank.

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

olaf schrieb:
>> Die üblichen HD44780-Display bekommt man (jedenfalls was ich gesehen
>> habe) bis zu 40 x 4 Zeichen.
>
> Es eine Weile das ich mit sowas rumgemacht habe, aber ich meine die
> haben schon zwei Controller integriert.

Oder sind mit HD44100 Expandern bestückt. Dann reicht auch ein HD44780 
für so ein grosses Display.

von Schlaumaier (Gast)


Lesenswert?

olaf schrieb:
>> JO. da bin ich auch drauf rein gefallen. Bei Amazon 2 Stück 6 Euro und
>> sahen auf den Foto riesengroß aus. ;)
>
> Bei Alieexpress tauchen mittlerweile auch 2.4" oder aehnliches zu
> halbwegs
> akzeptablen Preisen auf. (10-15Euro) Aber allen gemein ist, sie sind
> nicht geeignet fuer Dauerbetrieb weil die LEDs stark an Helligkeit
> verlieren.

DIESE hier habe ich bestellt.

https://www.amazon.de/gp/product/B09BF7SQHS

Fein aber sehr klein.  Ansteuerung via i2c und fertiger sehr einfacher 
Libs.


Das ist meine Hucke-pack-Platine die ich meinte.

https://www.christians-shop.de/I2C-IIC-Serielle-Schnittstelle-fuer-LCD-Display-1602-und-2004

Das mit den 1602 muss man nicht so eng sehen. Ich habe mit der selben 
LIB und Modul schon 20x4 angesteuert. Sind nur ein paar andere Angaben 
in INI-Befehl.

von Schlaumaier (Gast)


Lesenswert?

Nachtrag:

Wenn ich in der Lib die richtige Schriftart einstelle bekomme ich auf 
das kleine Oled-Teil auch 20 x 4 Zeichen SAUBER und LESEBAR dargestellt.

Getestet.!!!

Aber eine 7 cm Platine ist halt was kleines feines. ;)

von Schlaumaier (Gast)


Lesenswert?

Davon abgesehen.

In ALLEN meinen Programmen gibt es eine Funktion die das Display 
abschaltet. Je nach Anwendung via Timer oder Taste.

Grund ist aber nicht das einbrennen sondern die Tatsache das mich das 
Licht einfach im Dunkeln nervt. Ich aber Displays liebe, weil ich damit 
eine sichere Kontrolle über die Anwendung habe die auf den MC läuft, und 
Rückmeldungen besser lesbar sind als irgendwelche blinkenden LED's.

von Walter T. (nicolas)


Lesenswert?

Wegschalten, was nervt. Gute Idee.

von Schlaumaier (Gast)


Lesenswert?

Walter T. schrieb:
> Wegschalten, was nervt. Gute Idee.

Danke und es spart Strom. Macht heutzutage jedes Handy. Man muss in der 
Anwendung halt nur mind. 1 Taste / Objekt dazu bringen das Display 
einzuschalten.

von Achim H. (pluto25)


Lesenswert?

Spart Strom ? (< 5mW) Da wäre es sinnvoller den Mc schlafen zu schicken.
Selbst die Beleuchtung braucht kaum Strom <1mA wenn sie nicht gegewn die 
Sonne arbeiten muß. Das lässt sich hervorragend mit PWM und einen LDR 
einrichten. Über den Pcf (ohne PWM) in drei Helligkeitsstufen, das 
reicht auch für die meisten Fälle.
Das mit der Temperaturabhängigkeit hatte ich noch nicht. (-5 bis +35°).
Ein Pegelwandler ist auch nicht nötig. Einfach die Pullups an den 3,3V 
und fertig.
Warum überhaupt 2 Spannungen wenns doch auf einer Platine sitzt?

von Schlaumaier (Gast)


Lesenswert?

A. H. schrieb:
> Spart Strom ? (< 5mW) Da wäre es sinnvoller den Mc schlafen zu schicken.

Da irrst du dich.

Lt. Datenblatt frisst ein 1602 bis zu 25 mA wenn die Lampe (Backlight) 
an ist.

Da ist ausschalten schon wichtig. Besonders wenn man nur begrenzt Strom 
zu Verfügung hat.

Aktuell ist das für mich wichtig, weil ich den Arduino + 3 Pumpen + 
Display und SD-Karte + Zeit-Modul (loggen) mit einer Solarmodul (18650) 
betreiben will. Und 25 mA können da schon auf Dauer zwischen geht und 
geht nicht entscheiden.

von DerEinzigeBernd (Gast)


Lesenswert?

Schlaumaier schrieb:
> JO. da bin ich auch drauf rein gefallen. Bei Amazon 2 Stück 6 Euro und
> sahen auf den Foto riesengroß aus.

In der Artikelbeschreibung steht drin, wie groß sie sind. Und wenn man 
nicht vollkommen erblindet ist, kann man auch auf dem Bild erkennen, wie 
groß die Dinger sind -- da sind nämlich links vom Displayglas ein paar 
Lötaugen im üblichen Raster angeordnet.

von Achim H. (pluto25)


Lesenswert?

Ich benütze sie nicht zur Raumbeleuchtung.
Hier hängt ein 470 Ohm Widerstand wo der Jumper hin kann und das ist mir 
abends noch zu hell. Die an einem Pwm Pin hängen haben 270 Ohm und 5 - 
30% ED
Zum Stromsparen besser die eingebaute LED oder ihr Vorwiderstabd 
auslöten und dem Vo Poti 47 kOhm Vorwiderstand gönnen oder es gleich 
gegen 1Mohm tauschen.

von Manfred (Gast)


Angehängte Dateien:

Lesenswert?

Marco schrieb:
> Gibt es hierfür einen passenden Schaltplan
Ein mir unverständliches Problem. Zu den China-Adapterplatinen finden 
sich Schaltbilder, abmalen und gut. Die Beschaltung der Displayseite 
musst Du halt beim Initialisieren des PCF8574 passend angeben.

> Um den Spannungsunterschieden entgegen zu wirken, habe ich an den
> PCA9517 gedacht.
Oder TXS0102. Für meinen Bastelkram nutze ich TX0108, weil es die billig 
beim als Chinaboards gab, aber wer braucht schon 8 Kanäle. Wenn es 
unkritisch nur um das Display geht, könnte man auch über zwei FETs 
nachdenken, die alte Philips-Applikation.

Ich weiß nicht, welchen µC und was Du sonst noch einsetzt, wenn eh schon 
5V da sind, vielleicht einen µC, der 5V kann?

Marco schrieb:
>> Im Datenblatt findest du die Unterschiede zu den Bezeichnungen.
> Super, vielen Dank.

Es sollte möglich sein, beide I2C-Adressen anzusprechen, falls mal der 
A-Typ zum Einsatz kommen muß.

Schlaumaier schrieb:
> https://www.amazon.de/gp/product/B09BF7SQHS
> Fein aber sehr klein.  Ansteuerung via i2c und fertiger sehr einfacher
> Libs.

Ich bin wieder mal beeindruckt, wie da Pfusch gezeigt wird: 3,3..5 Volt 
gilt nur für die Versorgung und wird per LDO auf 3V3 geregelt. Das Ding 
direkt an einen A*-Nano anzuklemmen, der mit 5 Volt läuft, überschreitet 
die zulässigen Pegel auf der I2C.

> Das ist meine Hucke-pack-Platine die ich meinte.
> 
https://www.christians-shop.de/I2C-IIC-Serielle-Schnittstelle-fuer-LCD-Display-1602-und-2004

Von den I2C-Adaptern sind unterschiedliche Varianten im Umlauf, nicht 
nur bzgl. deren Adresse, sondern auch in der Belegung abweichend. Die 
Adresse ist Zufall, der Chinese baut wahllos beide Varainten des PCF 
drauf, je nachdem, was er gerade recyclen kann.

Schlaumaier schrieb:
> In ALLEN meinen Programmen gibt es eine Funktion die das Display
> abschaltet.

Das habe ich nur bei meier OLED-Anwendung implementiert, wegen deren 
Lebenserwartung und der Stromaufnahme, wenn es unbeuafsichtigt 
dreistellige Stunden aus dem Akku läuft. Netzbetrieben 1602/2004 ist mir 
das egal, das steht nicht im Schlafzimmer.

A. H. schrieb:
> Spart Strom ? (< 5mW) Da wäre es sinnvoller den Mc schlafen zu schicken.

Du hast gemessen ... ich glaube, nicht. Mein 0,96"-OLED nimmt je nach 
Inhalt bis zu 30mA auf, die großen LCDs gehen Richtung 20mA.

Den µC "schlafen zu schicken" ist keine sinnvolle Idee, wenn der etwas 
zu tun hat!

A. H. schrieb:
> Ich benütze sie nicht zur Raumbeleuchtung.

Mir ist die Tage aufgefallen, dass das kleine OLED bei gutem Wetter 
draußen nicht ablesbar ist, viel zu dunkel.

von Marco (marco7)


Lesenswert?

Manfred schrieb:

Vielen Dank für die Rückmeldung. Ich werde verschiedene Möglichkeiten 
testen und mich danach entscheiden.

Einen Mikrocontroller mit 5V zu nehmen ist eher ausgeschlossen, da ich 
bereits andere Sachen mit dem Teensy ausprobiert und umgesetzt habe und 
diesen gerne weiter verwenden würde.
Aber zur Not werde ich Pegelwandler einsetzten.

von olaf (Gast)


Lesenswert?

> Du hast gemessen ... ich glaube, nicht. Mein 0,96"-OLED nimmt je nach
> Inhalt bis zu 30mA auf, die großen LCDs gehen Richtung 20mA.

Grafik-LCDs mit 128x64pixel und integriertem Controller nehmen knapp
unter 1mA auf. Und ja ich messe sowas oefters. .-)

Olaf

von Achim H. (pluto25)


Lesenswert?

Wir sprachen ja auch von LCDs, die liegen unter 1mA plus Beleuchtung. 
Das I2C Modul kann da erheblich mehr brauchen;-( Da es aber nicht 
eingesetzt werden soll bleibt der minimale Verbrauch des PCF. Auf der 
Platine braucht es nur den Pcf und ein Vo Poti. Die Pinbelegung ist 
dabei frei belegbar. Sie muß zur Software passen.
I2C arbeitet mit Open Collektor, da sind irgendwelche Pegelwandler 
kontraproduktiv. Einfach die Pullubs an die niedrigere Spannung. Da das 
LCd auch schon bei 2,7V arbeitet gibt es eigendliche keinen Grund für 
die 2. Spannung.
@marco7: Ist das Display schon vorhanden? Mal testen ob ihm 3,3V reichen 
(Vo) und wie viel Strom die Beleuchtung bekommen soll. Für 
Raumbeleuchtung evt eine Transistor vorsehen;-) Mehr als 10mA sollte ein 
Pcf/Mc Pin nicht dauerhaft leisten müssen.

von Schlaumaier (Gast)


Lesenswert?

DerEinzigeBernd schrieb:
> In der Artikelbeschreibung steht drin, wie groß sie sind.

JO. Seit dem liegt auch in Lineal neben mir wenn ich so Sachen bestelle 
;)

Manfred schrieb:
> Ich bin wieder mal beeindruckt, wie da Pfusch gezeigt wird: 3,3..5 Volt
> gilt nur für die Versorgung und wird per LDO auf 3V3 geregelt. Das Ding
> direkt an einen A*-Nano anzuklemmen, der mit 5 Volt läuft, überschreitet
> die zulässigen Pegel auf der I2C.

Mag sein. Hat aber im Test an einen Nano sehr gut funktioniert. Also 0 
Stress.

Manfred schrieb:
> Von den I2C-Adaptern sind unterschiedliche Varianten im Umlauf, nicht
> nur bzgl. deren Adresse, sondern auch in der Belegung abweichend.

1. Ich scanne aus Prinzip mit ein i2c-scanner und verlass mich 
ausnahmsweise NICHT auf Angaben.
2. Die Belegung ist zu 99,9 % aufgedruckt. Und i.d.R. stimmt das sogar. 
Nur eine IR-Diode war man falsch beschriftet. Hat mich 2 Std. gekostet 
bis ich auf die Inde kann die Platine zu analysieren.

Manfred schrieb:
> Mir ist die Tage aufgefallen, dass das kleine OLED bei gutem Wetter
> draußen nicht ablesbar ist, viel zu dunkel.

Danke für die Info. Aber draußen in der Sonne taugt in meinen Augen kein 
Display was außer E-Ink.

A. H. schrieb:
> Wir sprachen ja auch von LCDs, die liegen unter 1mA plus Beleuchtung.

Das 1602 frisst laut Datenblatt bis zu 25 mA + Adapter. Weshalb ich 
immer 40 mA kalkuliere. Bin ich auf der Sicheren Seite.

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

DOGM132-5 nimmt unter 200µA auf bei 3,3V. Typisch 140µA im Betrieb.

von Achim H. (pluto25)


Angehängte Dateien:

Lesenswert?

Schlaumaier schrieb:
> Das 1602 frisst laut Datenblatt bis zu 25 mA

Da habe ich ja Glück kein so schlechtes zu haben. Aber ein Datenblatt 
das das noch toppen kann: ein PC1502 von Powertip kann 122mA verbraten.

PS Ein Dog Datenblatt hatte ich vorher offen, die spachen aber auch von 
80mA.

: Bearbeitet durch User
von Stefan F. (Gast)


Lesenswert?

A. H. schrieb:
> I2C arbeitet mit Open Collektor, da sind irgendwelche Pegelwandler
> kontraproduktiv. Einfach die Pullubs an die niedrigere Spannung.

Vorsicht. Einem PCF8574 der mit 5V versorgt wird, sind 3,3V Pegel auf 
dem Bus zu niedrig. Das funktioniert nur mit Glück.

Anders herum kommen die allermeisten Mikrocontroller jedoch mit 3,3V am 
Bus klar, auch wenn sie mit 5V versorgt wurden.

von Marco (marco7)


Lesenswert?

Aktuell habe ich folgenden Display im Einsatz:

https://cdn.shopify.com/s/files/1/1509/1638/files/HD44780_2004_Grunes_LCD_Display_mit_I2C_Serielle_Schnittstelle_Bundle_Datenblatt_AZ-Delivery_Vertriebs_GmbH.pdf?v=1591270295

Für die i2c Leitung, brauche ich eine wirklich verlässliche Methode.
Daher tendiere ich aktuell dazu, das Display mit 5V und die i2c 
Schnittstelle ebenfalls mit 5V zu betreiben und für die Verbindung zum 
Mikrocontroller Pegelwandler einzusetzen.

von Schlaumaier (Gast)


Lesenswert?

Stefan F. schrieb:
> Anders herum kommen die allermeisten Mikrocontroller jedoch mit 3,3V am
> Bus klar, auch wenn sie mit 5V versorgt wurden.

Weshalb ich so gerne Nanos verbaue ;)  Da kommen 5 Volt rein und 3.3 
Volt raus.

Wenn ich den Chip einzeln auf die Platine knalle, muss ich eh 5 Volt und 
3.3 Volt haben. Weil irgend ein Sensor o.s. eh was anders haben will. ;)

von Manfred (Gast)


Angehängte Dateien:

Lesenswert?

olaf schrieb:
>> Du hast gemessen ... ich glaube, nicht. Mein 0,96"-OLED nimmt je nach
>> Inhalt bis zu 30mA auf, die großen LCDs gehen Richtung 20mA.
> Grafik-LCDs mit 128x64pixel und integriertem Controller nehmen knapp
> unter 1mA auf. Und ja ich messe sowas oefters. .-)

Hier wurde über die Beleuchtung gesprochen, die Schlaumaier generell 
abschaltbar macht. Da ist nichts mit 1mA, der Strombedarf ist deutlich 
höher.

A. H. schrieb:
> I2C arbeitet mit Open Collektor, da sind irgendwelche Pegelwandler
> kontraproduktiv. Einfach die Pullubs an die niedrigere Spannung.

Warum kommt stets jemand um die Ecke, der mangels Fachwissen Dummfug 
schreibt, und das gleich noch in passend falscher Schreibweise? 
Pegelwandler sind also etwas, was Texas und NXP (Philips) herstellen, 
obwohl sie niemand benötigt. Marco schrieb, einen Pegelwandler einsetzen 
zu wollen - so und nur so gehört sich das!

Schlaumaier schrieb:
>> Das Ding
>> direkt an einen A*-Nano anzuklemmen, der mit 5 Volt läuft, überschreitet
>> die zulässigen Pegel auf der I2C.
> Mag sein. Hat aber im Test an einen Nano sehr gut funktioniert. Also 0
> Stress.

Funktionieren mag es, aber ich baue nicht vorsätzlich außerhalb der 
Spezifikation.

Schlaumaier schrieb:
>> Mir ist die Tage aufgefallen, dass das kleine OLED bei gutem Wetter
>> draußen nicht ablesbar ist, viel zu dunkel.
> Danke für die Info. Aber draußen in der Sonne taugt in meinen Augen kein
> Display was außer E-Ink.

Schlecht zu bekommen und wenn, teuer: Transflektice LCDs gehen auch 
draußen.

Stefan F. schrieb:
> Vorsicht. Einem PCF8574 der mit 5V versorgt wird, sind 3,3V Pegel auf
> dem Bus zu niedrig. Das funktioniert nur mit Glück.

Das gilt für alle Kombinationen 3V3-5V0, auch wenn einige Arduidioten 
immer wieder beteuern, dass es problemlos sei.

Marco schrieb:
> Daher tendiere ich aktuell dazu, das Display mit 5V und die i2c
> Schnittstelle ebenfalls mit 5V zu betreiben und für die Verbindung zum
> Mikrocontroller Pegelwandler einzusetzen.

So, wie im pdf von shopify für den Raspberry empfohlen.

Schlaumaier schrieb:
> Weshalb ich so gerne Nanos verbaue ;)  Da kommen 5 Volt rein und 3.3
> Volt raus.
> Wenn ich den Chip einzeln auf die Platine knalle, muss ich eh 5 Volt und
> 3.3 Volt haben. Weil irgend ein Sensor o.s. eh was anders haben will. ;)

Nee, dessen Datenleitungen sind 5 Volt. In meinem letzten Aufbau habe 
ich einen 8 MHz ProMini verwendet, der läuft komplett an 3,3 Volt 
(Akku). Wenn ich am Nano 3,3V-Peripherie habe, kommt da ein Pegelwandler 
zwischen.

Falls Marco das nicht kennt, hänge ich mal wieder die alte 
Philips-Applikation an, Wandler mit Transistor. Dazu das Bild einer 
fertigen Platine, die FETs sind als "J1" markiert.

von Marco (marco7)


Angehängte Dateien:

Lesenswert?

Manfred schrieb:
> Falls Marco das nicht kennt, hänge ich mal wieder die alte
> Philips-Applikation an

Danke für die ausführliche Antwort.

Noch eine grundsätzliche Frage:
Ich habe verschiedene Arten bereits fertiger Pegelwandler gefunden 
(siehe Anhang).
- mit IC
- mit Mosfets (BSS 138)

Was davon eignet sich besser, oder ist es im Prinzip egal, für welche 
Variante man sich entscheidet? (Möchte dies dann direkt auf der Platine 
integrieren.

Ursprünglich wollte ich den i2c Teil den pca9517 verwendet, habe aber 
wahrscheinlich auch noch weitere Sensoren, bei denen ebenso Pegelwandler 
eingesetzt werden müssen.

von Manfred (Gast)


Angehängte Dateien:

Lesenswert?

Marco schrieb:
> Ich habe verschiedene Arten bereits fertiger Pegelwandler gefunden
> (siehe Anhang).
> - mit IC
> - mit Mosfets (BSS 138)

Kommen mir bekannt vor. Benutzt habe ich bislang nur die IC-Version mit 
dem TXS0108E. Nicht nur für I2C, damit fahre ich auch eine SD-Karte per 
SPI.

> Was davon eignet sich besser, oder ist es im Prinzip egal, für welche
> Variante man sich entscheidet? (Möchte dies dann direkt auf der Platine
> integrieren.

Mit der Transistorversion fehlt mir die Erfahrung. Für Dich wäre der 
Vorteil, dass Du mit zwei Transistoren und vier Widerständen unabhängig 
von der Verfügbarkeit eines ICs wärst.

Kann hier jemand Erfahrungen zur Transistorversion beitragen ?

> Ursprünglich wollte ich den i2c Teil den pca9517 verwendet, habe aber
> wahrscheinlich auch noch weitere Sensoren, bei denen ebenso Pegelwandler
> eingesetzt werden müssen.

I2C ist ein Bus und Du wirst (hoffentlich) nur zwei Spannungsebenen 3V3 
/ 5V0 haben, für was denn mehrere Pegelwandler?

von Marco (marco7)


Lesenswert?

Manfred schrieb:
> Benutzt habe ich bislang nur die IC-Version mit
> dem TXS0108E.

ah ok, bin davon ausgegangen, dass du die Transistor-Variante 
verwendest, da du sie im Beitrag vorhin angehängt hast.

Manfred schrieb:
> Für Dich wäre der
> Vorteil, dass Du mit zwei Transistoren und vier Widerständen unabhängig
> von der Verfügbarkeit eines ICs wärst.

Ja das stimmt, das wäre wirklich nicht schlecht.

Manfred schrieb:
> I2C ist ein Bus und Du wirst (hoffentlich) nur zwei Spannungsebenen 3V3
> / 5V0 haben, für was denn mehrere Pegelwandler?

Ja genau, ich habe nur 2 Spannungsebenen für den i2c Bus, (generell 
auch).
Aber ich möchte wahrscheinlich noch weitere Sensoren Verwendet (unter 
anderem wahrscheinlich ein Funk Modul), die ebenfalls mit 5V laufen.
Ich habe gedacht, dass der pca9517 als "Level translating I2C-bus 
repeater" nur für den i2c bus gedacht ist und ich für andere 
Verbindungen auf einen anderen Pegelwandler zurückgreifen sollte.
Vor allem bietet beispielsweise der TXS0108E mehr Übergänge als der 
pca9517.

von olaf (Gast)


Lesenswert?

> Hier wurde über die Beleuchtung gesprochen, die Schlaumaier generell
> abschaltbar macht. Da ist nichts mit 1mA, der Strombedarf ist deutlich
> höher.

Beleuchtung ist mit weiteren 1-2mA, vielleicht 4 bei hohe Anspruechen
machbar. Voraussetzung sind zwei LEDs guter Qualitaet, eine gute 
Lichtfuehrung(extra mechanisches Bauteil) und einen DCDC-Wandler als 
Stromregler und nicht nur ein Widerstand.

Olaf

von Schlaumaier (Gast)


Lesenswert?

olaf schrieb:
> Beleuchtung ist mit weiteren 1-2mA, vielleicht 4 bei hohe Anspruechen
> machbar.

Bei einen Oled vielleicht.

Aber wie erwähnt bei den 1602 liegt sie lt. Datenblatt bei 25 mA.

von Manfred (Gast)


Lesenswert?

Schlaumaier schrieb:
>> Beleuchtung ist mit weiteren 1-2mA, vielleicht 4 bei hohe Anspruechen
>> machbar.
> Bei einen Oled vielleicht.

Ich schrieb bereits, dass mein kleines 0,96"-OLED über 20mA aufnimmt, 
Extremfall inverse Schrift, also komplett leuchtender Hintergrund.

von Manfred (Gast)


Angehängte Dateien:

Lesenswert?

Ich bin irritiert, dass hier keine sinnvollen Beiträge anderer Benutzer 
kommen, Dein 'Problem' ist doch nicht so weltfremd oder abwegig.

Marco schrieb:
>> I2C ist ein Bus und Du wirst (hoffentlich) nur zwei Spannungsebenen 3V3
>> / 5V0 haben, für was denn mehrere Pegelwandler?
>
> Ja genau, ich habe nur 2 Spannungsebenen für den i2c Bus, (generell
> auch).
> Aber ich möchte wahrscheinlich noch weitere Sensoren Verwendet (unter
> anderem wahrscheinlich ein Funk Modul), die ebenfalls mit 5V laufen.
> Ich habe gedacht, dass der pca9517 als "Level translating I2C-bus
> repeater" nur für den i2c bus gedacht ist und ich für andere
> Verbindungen auf einen anderen Pegelwandler zurückgreifen sollte.
> Vor allem bietet beispielsweise der TXS0108E mehr Übergänge als der
> pca9517.

Den PCA9517 habe ich nie eingesetzt, weil ich zufällig an Texas geraten 
bin.

Letzendlich ist auch der TXS0108 für andere Schnitttellen 
überdimensioniert, wenn diese nur in eine Richtung laufen.

Reden wir über die einfache SPI-Schnittstelle, eine Leitung Daten hin, 
die andere Daten zurück, plus Clock und Enable. Auf den China 
Mikro-SD-Modulen sitzt ein 74LVC125:

"Operates From 1.65 V to 3.6 V"
"Inputs Accept Voltages to 5.5 V"

Der kann natürlich nur eine Richtung, Daten vom 5V-µC zur 3V3-Karte. In 
der Gegenrichtung verlassen sich die Pfuscher darauf, dass der 5V-µC 
noch die angelieferten 3V3 als high erkennt. Da lässt sich ein 74HCT125 
verwenden, der bei 5V-Ub bereits ab 2 Volt für high definiert ist. In 
einer Anwendung habe ich ihn eingesetzt, aber ist halt ein IC 
zusätzlich.

Auf den Platinchen für normale SD ist kein 74LVC drauf, da habe ich als 
Pegelwandler den TXS0108E verwendet.

Du musst wirklich mal vollständig aufreißen, was Du alles an Peripherie 
anbauen willst. Der TXS0108 hat 8 Kanäle, der könnte also I2C plus SPI 
umsetzen. Da bleiben sogar noch zwei für Enable über, also könnte er 
drei SPI-Devices bedienen.

von Stefan F. (Gast)


Lesenswert?

Manfred schrieb:
> Ich bin irritiert, dass hier keine sinnvollen Beiträge anderer Benutzer
> kommen

Die kamen zur Genüge.

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
Noch kein Account? Hier anmelden.