Hallo zusammen Ich brauche einen I2C-Levelshifter von 1,8V auf 3,3V. Deswegen habe ich mir die AN10441 von NXP angeschaut und wollte das auch in meiner Schaltung verwenden. Die Simulation funktioniert. Wenn ich manuell die Signale wackel gehts auch. Nur wenn ich das mit Aardvark versuche (Geschwindigkeit 400kBit/s) funktionierts nicht. Ich bekomme ganz schön heftige Delays. Simulation ist angehängt: Pullup 1,8V = 1k Pullup 3,3V = 1,2k Zur Auswahl des FET: V_GS_threshold << 1,8V damit er sauber durchschaltet Wer kann mir Tipps geben an was es liegt? Viele Grüße Entwickler
Hallo Könnte es an der Diodenspannung von Source nach Drain liegen? Im DB stehen dazu: typ. 0,8V max. 1,2V. Das würde ja in dem Fall bedeuten, dass wenn das EEPROM den SDA auf Low zieht noch 0,8 bis 1,2V auf der 1,8V-Seite stehen bleiben. Oder irre ich mich da? Gruß Entwickler
Für eine Richtung ist die Body-Diode erforderlich, um Source so weit runter zu ziehen, dass der FET aufgeht. Ergibt 0,4V low vom I2C (per Def) plus 0,7V von der Diode plus Ugs vom FET. Reicht nicht. Schottky-Diode parallel zur Body-Diode versuchen. Wird trotzdem eng. Besser: Levelshifter-IC für 1,8V I2C verwenden.
Entwickler schrieb: > pic.gif > > 2,69 MB Die Bildgröße ist jetzt nicht dein Ernst, oder? Und wieso kannst du nicht, wie viele andere auch, das Ding als verlustlos komprimiertes PNG oder GIF hochladen, statt jedem Nutzer hier ein unkomprimiertes Bitmap mit 2,7MB zuzumuten ;-(
Hallo, ich meine, da kann man einfach was fertiges nehmen. http://www.ti.com/lit/ds/symlink/pca9306.pdf Gruß Öletronika
Guten Abend @Bildermacher: Es ist ein gif. Ich habe nicht nach der Dateigröße geschaut. Mea Culpa. Danke dass Du für die anderen User noch ein kleines Bild zum Download bereitstellst. @oeletronika: Danke für den Hinweis. Der PCA9306 kostet nur ca. 0,30$ (@10k bei octopart). Ein NX3008NBKV allerdings nur 0,10$. Zum Platzbedarf der Pins ohne Footprints: FET: 1,7mm * 1,7mm = 2,89mm² (100%) PCA9306: 3,2mm * 2,1mm = 6,72mm² (235%) <-- Es müsste zwingend die Q1-Variante (Temperaturbereich) sein. Ich schaue mir mal diese Chips nochmal an. Kennt vielleicht jemand einen passenden FET? Zusätzliche Schottky-Dioden möchte ich nicht spendieren müssen. Gruß Martin
Entwickler schrieb: > PCA9306: 3,2mm * 2,1mm = 6,72mm² (235%) <-- Es müsste zwingend die > Q1-Variante (Temperaturbereich) sein. Das DQE Package ist nur 1.45mm * 1.05mm groß. fchk
Du meinst ein Gürteltier mit Lötkolbenhalter obendrauf, oder wie? Ich schrieb "technisch"! Ist das ein Simulator oder ein Breadboard oder was?
Bülent C. schrieb: > Nimm doch den BSS138. Der ist flotter als der FDG6301. Und kriegt eine höhere Schwellspannung. Keine gute Idee bei 1,8V.
A. K. schrieb: > Und kriegt eine höhere Schwellspannung. > Keine gute Idee bei 1,8V. V(th) Min 0.9 Max 1.5 Typ 1.2 Wo ist das Problem?
Bülent C. schrieb: > V(th) Min 0.9 Max 1.5 Typ 1.2 Seiner: min 0,65V, max 1,5V, typ 0,85V. > Wo ist das Problem? Beim TO, siehe oben. Es funktioniert bei 400kHz nicht mehr. Und wenn sein FET nicht geht, wieso dann der BSS138? > Der ist flotter als der FDG6301. Inwiefern? Der BSS hat mehr ns, mehr pF, mehr nC und leitet bei 1,5V fast nicht (bzgl. I2C Strom).
:
Bearbeitet durch User
Nimm nen schnelleren BJT. Ich glaub von CPUs verstehst du einfach mehr.
Hi >Ich brauche einen I2C-Levelshifter von 1,8V auf 3,3V. Dann nimm einen PCA9517A - Port A operating supply voltage range of 0.9 V to 5.5 V - Port B operating supply voltage range of 2.7 V to 5.5 V MfG Spess
A. K. schrieb: >> Der ist flotter als der FDG6301. > > Inwiefern? Der BSS hat mehr ns, mehr pF, mehr nC und leitet bei 1,5V > fast nicht (bzgl. I2C Strom). FDG6301 T(on) typ 5ns max 10ns T(off) typ 4ns max 8ns BSS138 T(on) typ 2ns max 6ns T(off) typ 9ns max 20ns Gut, ok, beim turn-off delay ist er langsamer Aber warum würde dieser bei 400khz nicht mitgehen können? Wobei das FDG6301 das eigentlich auch können müsste. Das ist jetzt keine Rhetorische Frage!
Hallo zusammen Sorry. Komme erst jetzt wieder online: Frank K. schrieb: > Entwickler schrieb: > >> PCA9306: 3,2mm * 2,1mm = 6,72mm² (235%) <-- Es müsste zwingend die >> Q1-Variante (Temperaturbereich) sein. > > Das DQE Package ist nur 1.45mm * 1.05mm groß. > > fchk --> Das DQE-Package gibt es nur für die nicht Q1-Variante. Somit ungeeignet. Das Package würde auch ausscheiden weil es keine benetzbaren Flanken hat. Abdul K. schrieb: > Was ist technisch "Aardvark"? --> Das ist ein I2C/SPI-Adapter für den PC. Einfach mal googlen. Ich glaube, dass "Werbe-Links" verboten sind. Bez. BSS138 --> Der BSS138BK (von NXP) hat eine max. V_GS_threshold von 1,6V. --> ungeeignet. Wichtig ist auch die max. Diodenspannung zwischen Source und Drain. Die wäre hier 1,2V (maximal). Somit bleibt noch 0,6V für V_GS. --> ungeeignet. Abdul K. schrieb: > mit BJT: http://www.hagtech.com/pdf/translator.pdf und http://www.hagtech.com/pdf/iic.pdf --> Interresanter Ansatz. Ich würde dann aber zwei SOT-666 + 8 Widerstände benötigen. Ich schaue mir das mal genauer an. Aber im Moment verfolge ich den Weg die Diodenspannung von Source nach Drain mittels Schottkydioden zu verringern und so das sichere Einschalten sicherzustellen. spess53 schrieb: > Dann nimm einen PCA9517A --> Haben bereits einen PCA9306 (gleiche Funktion) im System. Der kann das auch. Ist mir aber zu teuer. Viele Grüße und vielen Dank für die Beiträge Entwickler
Bülent C. schrieb: > Aber warum würde dieser bei 400khz nicht mitgehen können? Habs doch schon skizziert. Lese-Situation: EEPROM zieht SDA runter. Dann hat dessen Ausgang per I2C Definition <= 0,4V. Der FET ist zunächst aus. Auf der 1,8V Seite kommt die Flussspannung der Body-Diode drauf, beim FDG 0,6V. Ergibt 1,0V auf der µC-Seite. Bleiben für Ugs nur 0,8V übrig. Der FET selbst spielt bei dieser Gatespannung also kaum eine Rolle, weshalb der Pegel auf der µC-Seite bei ca. 1V bleibt. Und das ist für den µC unbrauchbar. Das geht also auch bei 100kHz überhaupt nur deshalb, weil das EEPROM die 0,4V nicht ausreizt. Wird vielleicht etwas besser, wenn man die Schaltung in kochendem Wasser betreibt. ;-)
:
Bearbeitet durch User
Hi >--> Haben bereits einen PCA9306 (gleiche Funktion) im System. Der kann >das auch. Ist mir aber zu teuer. Um welche Stückzahlen geht es hier? MfG Spess
Hi
>Größer 1 Mio. über die Produktlaufzeit
Wenn du da so eine halbseidene Lösung einsetzt kann das teuer werden.
MfG Spess
Was meinst Du mit halbseidene Lösung? Die Idee mit dem FET hat ja NXP mal veröffentlicht. Ich brauche "nur" einen FET, der die entsprechenden Parameter hat oder? Morgen versuche ich das mit den Schottky-Dioden.
Hallo Abdul K Ich habe die Schaltung mal simuliert. Allerdings bleibt auf der 3V3-Seite knapp 0,9V stehen wenn die 3,3V-Seite Signale treibt. In der Simulation habe ich ideale NPN verwendet. Wenn ich einen BC817 oder einen 2N2222 einsetze bekomme ich recht komische Spannungsverläufe auf der 3,3V-Seite. Hast Du das schon mal erfolgreich simuliert oder aufgebaut? Gruß Entwickler
Entwickler schrieb: > Die Idee mit dem FET hat ja NXP mal veröffentlicht. Ja, aber nur von 3,3V auf 5,0V. Bei 1,8V geht das nicht mehr. Nochmal, warum nimmst Du keinen 1,8V EEPROM?
Hallo zusammen Peter Dannegger schrieb: > Nochmal, warum nimmst Du keinen 1,8V EEPROM? Weil ich keinen EEPROM finde der nicht in einem SOIC-Package ist, automotive-qualifiziert ist und bei 1,8V auch noch 400kHz unterstützt. Package sollte winzig sein. Und Vorgabe: Wenn DFN dann mit benetzbaren Flanken. Viele Grüße Entwickler
Ja, man kann eben nicht alles haben, entweder 1,8V oder automotive. Und ein Levelshifter erzeugt zusätzliche Verzögerung, ob damit 3,3V/400kHz gehen, halte ich für fraglich.
Hi Sowas? http://www.st.com/st-web-ui/static/active/en/resource/technical/document/datasheet/DM00051766.pdf Matthias
Bipolartransistoren kann man (mit verringerter Verstärkung) auch mit vertauschtem Emitter und Kollektor betreiben. Die Schaltung im Anhang funktioniert laut Simulation auch bei 1MHz gut. Q1 und Q2 stellen die Open-Collector-Ausgänge der Chips dar. Q3, R3, R4 und R5 sind der Level-Shifter. Die Werte der Widerstände kann man sicher noch optimieren. Viele Grüße Jonathan
Ich frag mich, wo das Problem ist, das Gate des N-FET einfach an 3,3V zu hängen?
Leo B. schrieb: > Ich frag mich, wo das Problem ist, das Gate des N-FET einfach an 3,3V zu > hängen? Weil die Spannung auf der 1,8V Seite dann über 1,8V liegen kann?
Hi Matthias Μαtthias W. schrieb: > Sowas? > http://www.st.com/st-web-ui/static/active/en/resource/technical/document/datasheet/DM00051766.pdf > > Matthias Wir haben aktuell hier das DFN mit 32kBit drin. Das müssen wir aber ersetzen. Keine benetzbaren Flanken. Andere Gehäusegrößen sind zu groß. Gruß Entwickler
A. K. schrieb: > Leo B. schrieb: >> Ich frag mich, wo das Problem ist, das Gate des N-FET einfach an 3,3V zu >> hängen? > > Weil die Spannung auf der 1,8V Seite dann über 1,8V liegen kann? Wenn Ugs > 1.5V ist klappt das.
Lattice User schrieb: > A. K. schrieb: >> Leo B. schrieb: >>> Ich frag mich, wo das Problem ist, das Gate des N-FET einfach an 3,3V zu >>> hängen? >> >> Weil die Spannung auf der 1,8V Seite dann über 1,8V liegen kann? > > Wenn Ugs > 1.5V ist klappt das. Genau so seh ich das auch. Einfach das Problem zum Nutzen machen... Wobei der Bipolare rein theoretisch, und offenbar in der Simulation auch, ebenfalls klappen müsste. Zur not halt 2 Bipolare "antiparallel".
Hallo Lattice User schrieb: > A. K. schrieb: >> Leo B. schrieb: >>> Ich frag mich, wo das Problem ist, das Gate des N-FET einfach an 3,3V zu >>> hängen? >> >> Weil die Spannung auf der 1,8V Seite dann über 1,8V liegen kann? > > Wenn Ugs > 1.5V ist klappt das. Das klappt nicht wenn die höhere Seite auf GND zieht, weil dann noch die Diodenflussspannung (zwischen Drain und Source) noch auf der niedrigeren Seite stehen bleibt. Die liegt bei max. 1,2V. Habe mittlerweile Schottkydioden eingelötet. Funktion erst mal gegeben. Ich bekomme aber ab und zu Spikes auf der Datenleitung. Aber immer nur zu Zeitpunkten bei denen das ACK kommen sollte. Gruß Entwickler
Entwickler schrieb: > Hallo Abdul K > > Ich habe die Schaltung mal simuliert. Allerdings bleibt auf der > 3V3-Seite knapp 0,9V stehen wenn die 3,3V-Seite Signale treibt. In der > Simulation habe ich ideale NPN verwendet. > Wenn ich einen BC817 oder einen 2N2222 einsetze bekomme ich recht > komische Spannungsverläufe auf der 3,3V-Seite. > > Hast Du das schon mal erfolgreich simuliert oder aufgebaut? > Leider noch nicht. Ich habe bestimmt 20 unterschiedliche Designs für dieses Problem auf der Platte. Aber bislang nicht die Zeit... und da ich von deiner 1e6 Produktion keinen Pfennig sehen werde, tja.
Hi Abdul K. schrieb: > Leider noch nicht. Ich habe bestimmt 20 unterschiedliche Designs für > dieses Problem auf der Platte. Aber bislang nicht die Zeit... und da ich > von deiner 1e6 Produktion keinen Pfennig sehen werde, tja. Suchst Du einen Job?
Entwickler schrieb: > Hallo > >> Wenn Ugs > 1.5V ist klappt das. > > Das klappt nicht wenn die höhere Seite auf GND zieht, weil dann noch die > Diodenflussspannung (zwischen Drain und Source) noch auf der niedrigeren > Seite stehen bleibt. Die liegt bei max. 1,2V. > Ein durchgeschalteter N Kanal FET kann Strom in beide Richtungen durchlassen.
Entwickler schrieb: > Hi > > Abdul K. schrieb: >> Leider noch nicht. Ich habe bestimmt 20 unterschiedliche Designs für >> dieses Problem auf der Platte. Aber bislang nicht die Zeit... und da ich >> von deiner 1e6 Produktion keinen Pfennig sehen werde, tja. > > Suchst Du einen Job? Wenn du was gutes zu bieten hast, schicke ne PM an leapfrogs@arcor.de . Du hast in deinem ursprünglichen Entwurf D und S vertauscht! Nur ein Zeichenfehler?
:
Bearbeitet durch User
So, noch einiges rumgespielt. Jetzt gibts auch ne simple MHz-Lösung. Diese dritte Lösung will ich nicht verraten. Daher nur die Kurven. Was mir auffiel bei LTspice: Die mitgelieferten Modelle für BC547 und dessen SMD-Version BC847 haben ne Macke! Sie unterscheiden sich deutlich in der Schaltgeschwindigkeit.
Da hat sich doch noch ein Fehler eingeschlichen bei der Temperatur des 2.Transistors, daher der verbesserte plot anbei.
Abdul K. schrieb: > So, noch einiges rumgespielt. Jetzt gibts auch ne simple MHz-Lösung. Deine 3. Lösung sieht wirklich gut aus, scheint das Problem zu lösen. > Diese dritte Lösung will ich nicht verraten. Daher nur die Kurven. Du machst es spannend. Ist diese Lösung rein mit diskreten Komponenten aufgebaut oder verwendest Du ICs, wie z.B. 74er-Gatter? Wieviele aktive Bauteile brauchst Du pro Leitung?
Abdul K. schrieb: > Diese dritte Lösung will ich nicht verraten. Alle sollen dir helfen, aber wenn du zu einem Ergebnis kommst willst du es niemals herzeigen, auch wenn du damit wahrscheinlich keine Weltbewegende Entdeckung gemacht hast, aber es muss geheim bleiben! Nicht das am Ende jemand anderes vielleicht von deiner Arbeit profitiert, das wäre nicht OK. Sowas erinnert mich immer an Gollum aus Herr der Ringe: Mein Schaaaatz! Irgendwie finde ich das lächerlich bis traurig.
Leo B. schrieb: > Abdul K. schrieb: >> Diese dritte Lösung will ich nicht verraten. > > Alle sollen dir helfen, aber wenn du zu einem Ergebnis kommst willst du > es niemals herzeigen, auch wenn du damit wahrscheinlich keine Du solltest dir dringend den Thread noch mal durchlesen, Abdul war nicht derjenige der um Hilfe gebeten hat!
Bülent C. schrieb: > Nimm doch den BSS138. Der ist flotter als der FDG6301. Kommt in etwa das Gleiche raus (Hab die Modelle von Zetex und Fairchild probiert). Zumindest im Bereich 100KHz bis vielleicht 400KHz. Gerd E. schrieb: > Abdul K. schrieb: >> So, noch einiges rumgespielt. Jetzt gibts auch ne simple MHz-Lösung. > > Deine 3. Lösung sieht wirklich gut aus, scheint das Problem zu lösen. > >> Diese dritte Lösung will ich nicht verraten. Daher nur die Kurven. > > Du machst es spannend. > Die 3.Lösung ist im Rahmen der Kostenvorstellung des Threaderstellers. Da ist es recht eng - ansonsten könnte man ja einen der Standard-Chips die für diesen Zweck gedacht sind, verwenden. Aber wie so immer: Die wollen die vergolden mit jenseits 1 Euro. Da scheint 80% des Erlöses in den Vertrieb und Werbung zu gehen. Zumindest LTC und Maxim, die anderen habe ich mir erstmal nicht angesehen. Deren Preise werden dann ähnlich sein. Außer jemand hat noch einen Geheimtipp in Fernost. Ich denke schon oft euch zu helfen und werde geholfen. Hier aber nur gegen Bares. Ihr könnt es ja mit PayPal leapfrogs@arcor.de versuchen. Man müßte es eh real testen. Auf SPICE-Modelle kann man nur beschränkt vertrauen.
Hallo zusammen War die letzten Tage schwer beschäftigt. Schaue, dass ich heute abend nochmal was dazu schreibe. Drain und Source habe ich nicht vertauscht. Source muss an der kleineren Spannungsebene liegen. Gruß Entwickler
Hast recht, liegt an der später geposteten Zeichnung wo die Spannungsquellen zu deinem Originalplan genau getauscht sind. Dann versteh ich nicht die Probleme in deiner realen Hardware.
Hallo Das Problem in der Schaltung besteht darin, dass wenn die höhere Seite auf GND zieht die Diode zwischen Drain(Kathode) und Source (Anode) leitend wird. Der Strom wird begrenzt durch den Pullup auf der niedrigeren Spannungsseite. Es können laut DB bis zu 1,2V stehen bleiben (http://www.nxp.com/documents/data_sheet/NX3008NBKV.pdf Seite 7). Dazu kommt noch der Spannungsabfall über den Open-Drain (nur einige 10mV). Nun sind nur noch 0,6V zwischen Gate und Source. Das reicht nicht zum sauberen Einschalten. Wenn Du nun argumentierst, dass der Kanal auch leitend wird wenn das Gate eine höhere Spannung hat als Drain stimmt das nur bedingt. Ein MOSFET ist meines Wissens nach nicht symmetrisch aufgebaut. Zumindest kein Ottonormal-FET. Ich denke die Symmetrischen FETs heißen JFET. Ist auch egal. Habe nun Schottky-Dioden (1PS79SB70) parallel zu den FETs. Gruß Entwickler
Ja, im DB steht aber bei 350mA. Die erreicht kein normaler i2c-Bus. siehe Fig. 16. Naja, ist ja nun durch das Thema. Ich hatte noch mit Baker-Clamp gebastelt, aber das beißt sich mit der Bidirektionalität und dafür fand ich keine einfache Lösung.
Ich habe das ganze mal überflogen. AON hat MOSFETs für Vgs=1,2V: http://www.aosmd.com/res/data_sheets/AON2400.pdf Ist aber wahrscheinlich zu heftig schon wegen Ciss / Qg
Tach zusammen! Ich geb´ jetzt auch noch meinen Senf dazu. Für viele meiner Anwendungen reicht es aus, die Logiklevel ein wenig mit Offset zu versehen: der Ausgangshub von 3,3V Logik deckt den nötigen Eingangshub von 5V CMOS ab. Ebenso 1,8V in 3,3V. Die statischen Verhältnisse sind meist unkritisch, bleibt das Problem die Flanken zu übertragen. Das geht aber einfach mit ´nem passendem Kondensator. Den Offset kann man sich mit einer Diode hinzimmern, die mit kleinem Strom gebiased wird. Im Beispiel oben sind das mit der low leakage Diode BAV199 ca 640mV, mit ´ner Standard BAV99 ca. 480mV. Das getriebene Gatter wird eine leicht erhöhte Stromabnahme haben, weil der Eingang nicht an die rails geht. Bei der NC7SZ Serie z.B. habe ich so 50 bis 100µA gemessen. Ohne den Diodenoffset nimmt der Strom deutlich zu. Von höheren Pegeln runter ist noch einfacher. Ein Spannungsteiler, den man hochohmig machen kann idem man einen Kondensator für die Flankenübertragung an die Last anpasst (--> Tastkopf). Die 15pF habe ich in einer Anwendung, die einen einzelnen Atmel Pin füttert experimentell ermittelt.
@ Bernd K. (bmk) >Ich habe das ganze mal überflogen. AON hat MOSFETs für Vgs=1,2V: Ein einfacher, überall verfügbarer BSS138 hat 0,5V U_GS_THR. Und einen 8A Leistungsmosfet als Pegelwandler für I2C zu nutzen, ist reichlich sinnfrei.
:
Bearbeitet durch User
Entwickler schrieb: > Guten Abend > @Bildermacher: > Es ist ein gif. Ich habe nicht nach der Dateigröße geschaut. Mea Culpa. > Danke dass Du für die anderen User noch ein kleines Bild zum Download > bereitstellst. > > @oeletronika: > Danke für den Hinweis. Der PCA9306 kostet nur ca. 0,30$ (@10k bei > octopart). http://www.onsemi.com/PowerSolutions/product.do?id=PCA9306 ON Semi würde die auch für $0.18 bei 3k verkaufen... AEC-Q100 für $0.288 bei 3k allerdings dann in im US8 Die hätten auch noch NLSX4373/NLVSX4373 mit integrierten 10k Pullups http://www.onsemi.com/PowerSolutions/product.do?id=NLSX4373 > Ein NX3008NBKV allerdings nur 0,10$. Über den SCL und SDA laufen? scnr
Abdul K. schrieb: > So, noch einiges rumgespielt. Jetzt gibts auch ne simple MHz-Lösung. > Diese dritte Lösung will ich nicht verraten. Daher nur die Kurven. Hab ich sie erraten? Die Kurven sehen jedenfalls sehr ähnlich aus! :P Korrektur: Mit 10p Streukapazität auf beiden Seiten sind die Kurven identisch mit deinen. Viele Grüße Jonathan
:
Bearbeitet durch User
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.