Hallo Leute Zurzeit versuche ich das Display EA Dogm204-A mit einem MSP430 über i2c zu betrieben. Den I2C benutze ich auf 1.8V, das Display Auf 2,8V. Eigentlich wäre 3,3V die richtige Spannung aber 2,8 geht laut Datenblatt auch(min. 2,4V). Ich benutze die 2,8V da ich diese sowieso auf meiner platine hatte und keinen seperaten Spannungsregler für 3,3 zusätzlich verwenden wollte. Zwischen den MSP430 und dem display sitzt deshalb ein Pegelwandler TXS0102DCU. Versuche ich nun aber die beiden über I2C kommunizieren zu lassen kann der Slave das ACK bit nicht kompett auf Low ziehen (siehe Bild). Hat jemand eine Idee an was das liegen könnte? Danke im Voraus Gruß Christian
Das sind eher 1.8V und nicht 2.8V, oder? Beim TXS0102DCU muss man aufpassen, auf welcher Seite die höhere Spannung ist (VCCA ≤ VCCB).
:
Bearbeitet durch User
Die Signale auf dem Bild sind vor dem Pegelwandler abgegriffen. Also auf der 1,8V I2C Seite
achso sorry, du schriebst ja, du hast 1.8V auf einer Seite (der MSP Seite nehme ich an). Die muss dann VCCA beim Levelshifter sein. Wie sieht denn SDA auf der Slave-Seite (2.8V) aus? Miss mal SDA gleichzeitig auf beiden Seiten. Welche Pullups verwendest du (auf den jeweiligen Seiten)?
:
Bearbeitet durch User
Der Pegelwandler müsste richtig beschalten sein. Auch an (VCCA ≤ VCCB) habe ich mich gehalten
Chris S. schrieb: > Der Pegelwandler müsste richtig beschalten sein beschalten --> tun beschaltet --> Eigenwchaft
Im angehängten Bild sind beide Seiten von SDA. Wobei Signal 2 Die 1,8V seite ist und Signal 3 die 2,8V Seite. Hierbei ist zu beachten,dass ich bei Signal 3 am Oszi 2V/Div eingestellt habe, damit sich die Signale nicht überschneiden. Pullups hatte ich ursprünglich auf der 1,8V Seite bei sda und scl jeweils 2k7. Als es so nicht ging hab ich nochmals ins Datenblatt des Pegelwandlers gesehen. und die internen 10k gesehen. Siehe Bild 2. Dann hab ich meine externen 2k7 rausgelötet, weil ich dachte dass man die nicht braucht wenn da ja 10k drin sind oder?. Auf der 2,8V seite hatte ich ursprünglich keine Pullups vorgesehen .. nur die im Pegelwandler internen 10k
Ist das die vollständige Sequenz einer wiederholten Verbindungsaufnahme, jeweilige START condition inklusive? Den Glitch beim ersten Puls finde ich nämlich interessant, im ersten Bild. Könnte lohnen, da mal näher ran zu gehen. Und mach mal etwas programmierte Pause zwischen die einzelnen Verbindungsversuche.
:
Bearbeitet durch User
Ist da noch ein Serienwiderstand in der Größenordnung 1-2K in der SDA Leitug zwischen Level-Shifter und Display?
Joe F. schrieb: > Ist da noch ein Serienwiderstand in der Größenordnung 1-2K in der SDA > Leitug zwischen Level-Shifter und Display? Also extern von mir hinzuGESCHALTET nicht. Aber vielleicht intern im Display Controller ? (SDD1803A)
A. K. schrieb: > Ist das die vollständige Sequenz einer wiederholten Verbindungsaufnahme, > jeweilige START condition inklusive? Den Glitch beim ersten Puls finde > ich nämlich interessant, im ersten Bild. Könnte lohnen, da mal näher ran > zu gehen. Hier nochmal die erste Sequenz. Habe jetzt auf beiden Seiten des Pegelwandler jeweils an SDA und SCL 3k3 als pullups hinzugefügt. Die müssten dann ja Parallel mit dem 10k intern im Pegelwandler jeweils einen Pullupvon 2k48 ergeben ... Jetzt könnte man meinen, dass der komische halbe Pegel am Ende beim ACK größer geworden ist. Zumindest bei der 1,8V Seite
Ja, genau solche Probleme häufen sich leider gerade... Beitrag "DOG XL 240-7 antwortet ab und zu mit NAK?" Beitrag "I2C Acknowledge Problem" Weniger als die im Level-Shifter eingebauten 10K pullups kannst du dann wohl nicht nehmen. Wird denn dieses ACK von deinem Controller noch erkannt?
:
Bearbeitet durch User
Der Display-Controller ist extrem stromschwach auf den Ausgängen. Maximal 100µA laut Datasheet. Die 10K Ohm des Pegelwandlers stellen also bereits eine zu hohe Last dar. http://www.lcd-module.de/fileadmin/eng/pdf/zubehoer/ssd1803a_2_0.pdf Auch das Datasheet vom Display weist darauf hin, wenngleich etwas zurückhaltend: "Bitte beachten Sie, dass aufgrund der COG-Technik die Strombelastbarkeit der Ausgänge begrenzt ist."
:
Bearbeitet durch User
A. K. schrieb: > Der Display-Controller ist extrem stromschwach auf den Ausgängen. > Maximal 100µA laut Datasheet. Die 10K Ohm des Pegelwandlers stellen also > bereits eine zu hohe Last dar. Ja aber wenn ich extern, wie bereits oben beschrieben, jeweils einen 3k3 pullup dran hänge. dan sind die 3k3 ja parallel zu den 10k und ich bekomme ca. 2k45 was ja eine kleinere Last ist... Oder begehe ich da einen Denkfehler?
Chris S. schrieb: > Oder begehe ich da einen Denkfehler? Ja. Der Display-Controller kriegt den Pegel nicht auf low runter gezogen. Deine Reduktion der Pullups macht das noch schlimmer, weil sie den Pegel noch weiter ansteigen lässt. Bitte auch beachten, dass bei Pegelwandlern dieser Bauweise der Ausgang die Pullups beider Seiten runter ziehen muss. Das sind also effektiv weniger als 10K Ohm. Mit diesem Pegelwandler wird das nichts.
:
Bearbeitet durch User
So hab jetzt einen "eigenen" Pegelwandler mit N-Mos Transistoren aufgebaut. Nach folgender Schaltung: https://de.wikipedia.org/wiki/Pegelumsetzer#/media/File:Bidirektionaler_pegelumsetzer_wikide.svg Wobei bei mir die linke Spannung wie gesagt 1,8V und die rechte 2,8V sind. R1 ist 20k und R2 hab ich auf 33k. Die Pullups kann ich doch berechnen mit U=2,8 die Spannung die ich runterziehen will und I= 100uA der Strom den das Display max. kann. Dann komme ich auf 28k was ich dan auf 33k aufgerundet habe. Wenn ich dann die Leitungen mit dem Oszi anschaue, sehen ich sie wie im hochgeladenen Bild. Kommen die Haifischflossen förmigen Aufladevorgänge durch die Gate Transistor? und wenn ja, wie kann ich das beseitigen? Habe folgenden N-Mos genommen: BSH 105 Und warum schaft er es bei der 2,8V seite (Signal 3) jetzt garnichtmehr auf 0V runterzuziehen?
Ich schrieb oben: "Bitte auch beachten, dass bei Pegelwandlern dieser Bauweise der Ausgang die Pullups beider Seiten runter ziehen muss." Strom R1 = 1,8V/20K = 90µA Strom R2 = 2,8V/33K = 85µA Strom Display: 90µ + 85µA = 175µA. Das dürfte hier aber nicht das Problem sein, da der Ausgang im gezeigten Screenshot wohl auf der 1,8V Seite liegt.
:
Bearbeitet durch User
Ja, die Chip on Glas LCDs sind Mist, jede Signalbahn hat ~1k Innenwiderstand. Besser den 4/8Bit Mode nehmen, dann sind alles nur Eingänge. Notfalls nen PCF8574 als Umsetzer.
> ca. 2k45 was ja eine kleinere Last ist
Zwei Widerstände parallel belasten mehr, als ein einzelner Widerstand.
2k45 ist weniger als 3,3k Ohm. Also fliesst dann mehr Strom -> Mehr
Last.
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.