Hallo, kennt jemand eine Interface Schaltung womit ich 5 und 3,3 Volt koppeln kann für iic Bus. Das Problem ist ja das beide Teilnehmer die Leitung auf Masse ziehen müssen. Reicht es einfach bei dem 5 Volt baustein mit einer Z Diode und einem Wiederstand die 5 Volt auf 3,3 zu begrennzen ? Oder kann ein Atmel der mit VCC= 5 Volt betrieben wird den Bus mit 3,3 Volt zu pullen und der Atmel erkennt die 3,3 Volt trotzdem als High Pegel?
für sowas gibts pegelwandler... max232 heissen die dinger für rs232, gibt auch für 5V/3,3V... schau mal in die sd karten beiträge...
Hi, also wie im Anhang mit den Mosfets lösen. Oben wird 3,3Volt eingespeist. Die 5 Volt werden an der Verbindung R9 und R10 angelegt. Die Drain Seiten sind dann jeweils die 5V Seite der SDA und SCL. Gruß Sven
Sven Vielen Dank. Aber bei deiner Schaltung können die 5 volt seiten die 3,3 volt nicht auf masse ziehen. Oder? Das gate liegt immer an 3,3 volt. Sollte der drain an 0 volt liegen, liegt die source immer noch auf 3,3 volt also ist der transistor gespert.
micro1 wrote: > Aber bei deiner Schaltung können die 5 volt seiten die 3,3 volt nicht > auf masse ziehen. Oder? Doch. > Das gate liegt immer an 3,3 volt. Sollte der drain an 0 volt liegen, > liegt die source immer noch auf 3,3 volt also ist der transistor > gespert. Ja, aber dann ist die Body Diode des Mosfets leitend.
Hallo, hier die entsprechende AN von Philips (nur mit MOS-FETs und Widerständen): http://www.standardics.nxp.com/support/documents/i2c/pdf/an10441.pdf Gruß Fred
Ah jetzt klar. Stimmt die diode wird leitend. Jetzt habe ich die Schaltung verstanden. Stimmt sollte perfekt funktionieren. Vielen Dank an alle
Kann man den ATMega16 nicht auch einfach mit 3,3V versorgen? (Um den Pegelwandler zu sparen) mfg Christoph
Hallo Fred, "http://www.standardics.nxp.com/support/documents/i..." Welche Transistoren kann man denn für den Pegelwandler benutzen ? In der NXP-Applikation steht leider nichts über die geeigneten Typen. Vielen Dank, Rufus
Hallo Rufus, > http://www.standardics.nxp.com/support/documents/i2c/pdf/an10441.pdf > Welche Transistoren kann man denn für den Pegelwandler benutzen ? > In der NXP-Applikation steht leider nichts über die geeigneten Typen. spezifiziert ist ein N-Kanal-Enhancement-Mode-MOSFET. Ich denke, ein BS170 oder BSS100 sollten funktionieren. Gruß Fred
BSP125 scheint auch geeignet.
Hi, also ich hab jetzt fleißig schlau gemacht - fühl mich aber grad nicht schlau genug, zumindest nicht so schlau dass ich ein 40 Eur Modul in Rauch aufgehen lassen möchte... Zur Schaltung: ATMega32L bei 3,3 V (wegen diversem anderen 3,3V Kram, der schon dranhängt) Über den I2C Bus soll jetzt noch ein CMPS03 Kompassmodul das mit 5 Volt betrieben wird mit dran. In http://www.nxp.com/acrobat_download/applicationnotes/AN97055.pdf ist Levelshifting in allen Varianten beschrieben. Die die mir natürlich am Besten gefällt, ist natürlich die erste in Kapitel 2.2 (Seite 9), wo man 3,3V und 5V Geräte einfach am gleichen Bus betreiben kann, wenn die 3,3V Geräte "5V Tolerante" Eingänge haben. Da ein ATMega32 ja mit 5V betrieben werden kann, würde ich frei aus dem Bauch raus sagen, er hat 5V tolerante Eingänge. Liege ich damit richtig? Grüsse Tobias
> Da ein ATMega32 ja mit 5V betrieben werden kann, würde ich frei aus dem > Bauch raus sagen, er hat 5V tolerante Eingänge. > Liege ich damit richtig? nein
schau dir mal den 74LVC07 an. Gibt es bei Farnell. Art.Nr.:9592660 Gruß Udo
Danke, das war zumindest kurz und fast schmerzlos :( Dann werde ich wohl die Variante mit den 2 Mosfets als Levelshifter von Seite 10 aus http://www.nxp.com/acrobat_download/applicationnotes/AN97055.pdf aufbauen. Da ich gerade eine Bestellung bei Kessler-Eletronik fertig mache, der den Referenz-FET BSN10 nicht hat, habe ich den BSS101 als alternativen FET rausgesucht. Auf Seite 13 des obigen PDFs ist die geforderte Charakteristik für die beiden FETs beschrieben:
1 | Type : N-channel enhancement mode MOS-FET. |
2 | Gate threshold voltage : VGS(th) min. 0.1V max. 2V |
3 | On resistance : RDS(on) max. 100 Ohm @ ID= 3mA, VGS= 2.5V |
4 | Input capacitance : Ciss max. 100 pF @ VDS= 1V, VGS = 0V |
5 | Switching times : ton toff max. 50 ns. |
6 | Allowed drain current : ID 10 mA or higher. |
Der BSS101 hat laut Datenblatt (http://www2.produktinfo.conrad.com/datenblaetter/150000-174999/150995-da-01-en-BSS101.pdf) folgende Werte:
1 | VGS(th) = 0.8...2.0V |
2 | Id = 130mA. (passt denk ich auch) |
Bei RDS hab ich ins Diagramm geschaut, und meine aber daß die 100 Ohm nicht erreicht werden sollten... Statt ton toff finde ich jeweils nur tdon und tdoff als Einzelwerte <=20ns im Datenblatt was aber unter dem geforderten Maximum von 50ns liegt. Hab ich da was übersehen, oder kann ich den BSS101 nehmen? Grüsse Tobias
Hat es nun gepaßt, sprich welche Typen gehen? LG Vajk
@ Tobias W. (Gast) >Dann werde ich wohl die Variante mit den 2 Mosfets als Levelshifter von >Seite 10 aus Viel zu aufwändig. Mach einfach eine direkte Verbindung und klemm die Pull-Ups vom I2C Bus auf 5V oder 3,3V. Geht beides. Warum? Weil die Pull-Ups den Strom durch die Schutzdioden begrenzen. Siehe PEgelwandler. Die Pull-Ups sollten 2,2K oder grösser sein, meist nimmt man 10K. MFG Falk
@FALK: Öhm, welche Schutzdioden .. meinst Du den Schlatplanauszug von Sven (4.Beitrag von oben) ... verwirrt guck ... mal mal LG Vajk P.S.: Link muß Pegelwandler lauten
@Vajk .v.i. (vajk) >Öhm, welche Schutzdioden .. Die im 3,3V IC, hier der AVR. Siehe Pegelwandler, jetzt richtig ;-) MFG Falk
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.