Hallo, ich möchte den MAX9768 per I2C ansteuern. Der Baustein selbst läuft mit 3V3. Der Mikrocontroller (ATmega1284P) und ein weiterer Sensor, die auch an dem Bus hängen, werden mit 5V betrieben. Im Datenblatt des MAX9768 steht nur eine Angabe zu dem Mindestpegel für ein High-Signal (0,7xVdd), allerdings kein Max-Pegel, wie z.B. beim ATmega. Kann ich den MAX9768 somit auch mit einem 0V <-> 5V Signalpegel ansteuern? Danke schonmal Gruß
Im Datenblatt steht ganz klar drin, daß die absolute Obergrenze bei 4 Volt liegt. Steht unter Absolute Maximum Ratings. Ohne Pegelwandler geht es also nicht. Zitat: SCLK, SDA/VOL to GND -0.3V to +4V
@ Andreas H. (heilinger) >ATmega. Kann ich den MAX9768 somit auch mit einem 0V <-> 5V Signalpegel >ansteuern? Klemm die Pull Ups vom I2C auf 3,3V, dass passt, siehe Pegelwandler. MFG Falk
Falk Brunner schrieb: > Klemm die Pull Ups vom I2C auf 3,3V, dass passt, siehe Pegelwandler. Wenn ich die pull-ups auf 3,3V klemme, dann bekommen meine 5V-Teilnehmer nicht genügend Spannung, oder? Ich hatte jetzt daran gedacht, einen Widerstand (1k) in Reihe zu schalten und dann an den Pins von dem MAX9768 jeweils ne Zenerdiode BZV55 3V3 gegen Masse zu klemmen... So würden meine Pegel die 3,3 V doch nie überschreiten, oder?
Hallo Solange die anderen Bausteine 3.3V als high erkennen, ist das alles kein Problem. Gruß Joachim
@ Andreas H. (heilinger) >Wenn ich die pull-ups auf 3,3V klemme, dann bekommen meine 5V-Teilnehmer >nicht genügend Spannung, oder? Lies den Artikel Pegelwandler.
Falk Brunner schrieb: > Lies den Artikel Pegelwandler. den habe ich gelesen. Spannungsteiler fällt leider aus, da leider noch nen anderer Teilnehmer am Bus hängt, der die 5V (min. 0,9 * Vdd) braucht und ich einen pull-up auf jeden Fall für den I2C benötige. Wollte nur wissen, ob ich doch um den Pegelwandler-IC drumherum kommen könnte, eben durch so eine Zenerdiode....? Die I2C-Kommunikation zum MAX9768 läuft unidirektional, bzw. er muss mir nur das ACK-Bit auf low ziehen. Quasi diese Methode: "1 kOhm Vorwiderstand. Dadurch wird der Strom vom 5V Ausgang in die 3.3V Versorgung durch die internen Schutzdioden auf ca. 1mA begrenzt. Diese Lösung ist auch relativ langsam (ca. 5MHz). Ggf. kann man den Vorwiderstand auf 100 Ohm reduzieren, das erhöht dann wieder die Geschwindigkeit. Aufpassen, einige ICs vertragen nur 1mA oder weniger durch die Schutzdioden! Ausserdem muss man aufpassen, das jetzt von der 5V Seite Strom in die 3.3V Versorgung eingespeist wird. Besonders in Schaltungen mit sehr niedrigem Stromverbrauch kann das zum Problem werden, wenn weniger Strom verbraucht wird als über die Vorwiderstände eingespeist wird. Dann nimmt es meist der Spannungsregler für 3.3V übel wenn jemand "schiebt", sprich, Strom einspeist. Denn die allermeisten Spannungsregler können nur Strom liefern (source), aber keinen Strom aufnehmen (sink). Es gibt 4-fach-Diodennetzwerke, die die internen Schutzdioden entlasten können (Schottkydioden mit kleinerer Flusspannung von ~0,3V als die internen Silizizumdioden mit ~0,7V), außerdem ist teilweise noch eine Zenerdiode enthalten, die ggf. den überschüssig eingespeisten Strom aufnehmen kann. " Und da intern wohl keine Zenerdiode dranhängt, wollte ich extern eine dranhängen...
Andreas H. schrieb: > den habe ich gelesen. Spannungsteiler fällt leider aus, da leider noch > nen anderer Teilnehmer am Bus hängt, der die 5V (min. 0,9 * Vdd) braucht Min Vih von 0,9 * Vdd ist extrem. Bist du sicher dass dies nicht Vih mit Voh verwechselt hast? I2c Spec verlangt bei auf Vdd bezogenen Devices 0,7 * Vdd. 5V Devices sind allerdings meistens fixed Level nach I2C Spec, d.h. min Vih = 3V.
Kopie aus dem Datenblatt: I²C Interface Parameters Parameter Min. Typ. Max. Unit Input high level 90 100 Input low level 0 10 % of Vs Output low level 10
Andreas H. schrieb: > Kopie aus dem Datenblatt: Welcher Baustein ist denn so kaput? Der Trick mit dem Vorwiderstand von 1k in Serie für den MAX9768 um den Strom zu begrenzen funktioniert nicht, da er dann nicht mehr in der Lage für das Ack die I2C Leitung auf Low zu ziehen, es sei denn man macht die Pullups auf 20k. Aber ob dann noch alles zuverlässig funktioniert? Als Pegelwandler tuts auch ein einfacher Transistor (P-Channel FET wenn ich mich recht entsinne).
Klaus schrieb: > Vs = Vdd ? Also damit ist die Versorgungsspannung von 5V gemeint... ist halt in jedem Datenblatt anders benannt. Es geht um nen Drucksensor...
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.