Hallo, ich habe einen µC bei 3,3V mit 5V toleranten Eingängen (namentlich nen EZUSB AN 2135) der mit einem AVR per I2C reden soll. Leider geht das an dem AVR nicht bei 3,3V. Sieht einer Probleme die Busleitungen auf 5V hochzuziehen? Viele Grüße
normalerweise sollen die in- und outputs den wert versorgungsspannung (3,3v) um nicht mehr als 0,6v übersteigen. od 5v auf dem bus kritisch sind bleibt wohl letzten endes nur auszuprobieren. betriebssicher geht's, wenn du den bus mit 5v betreibst (über vorwiderstand > 470ohm) und dann die in- und output pins mit dioden auf versorgungsspannung legst, wird der wert höher als ca. 4v, fliesst der 'überschuss' nach versorgung ab. (vcc soll natürlich stabilisiert sein). gruss, harry
Hallo Harry, die Eingänge des 3,3V ICs sind wie gesagt 5V tolerant, zumindest behauptet das das Datenblatt... Ansonsten könnte man das natürlich mit solchen Klemmdioden probieren. Besten Dank und viele Grüße
Und was spricht dagegen, den Atmel ebenfalls mit 3,3V zu betreiben? Ich habs zwar noch nicht getestet, aber theoretisch sollte der I²C auch an einem 5V-Atmel mit 3,3V laufen - sicher, daß es nicht ein Softwareproblem ist?
Hallo thkais, zwei Dinge sprechen - laut Datenblatt - dagegen den AVR bei 3,3V zu betreiben: - die L-Variante läuft nur bis 8 MHz, ich brauche aber 16 MHz - ich will mit dem AVR DA-Wandler ansteuern, die ziemlich kleinlich bei den Highpegeln sind und nicht laufen würden, gut dagegen hälfe ein Pegelwandler... und laut Datenblatt will der AVR bei 5V am TWI-Port für High 0,7 VCC = 3,5 V sehen, ist also mehr, als auf einem 3,3 V Bus anliegen... Viele Grüße
Hi du weißt leider nicht wie der I2C-Bus elektrisch funktioniert. Jeder Teilnehmer kann den Bus nur auf Masse ziehen (per Open-Collector-Ausgang, wired-and) Für den High-Pegel sorgen die obligatorischen Pull-Up's die extern auf SCL udn SDA geschaltet werden müssen. Deswegen realisiert man einen I2C-Bus (bzw. die Datenausgabe uf SCL/SDA) auf dem AVR auch über das DDRx und nicht über PORTx. Langer Rede kurzer Sinn: Wenn dein µC 5V tolerante I2C-Port's hat ist es kein Problem daran einen 5V I2C-Bus zu betreiben. Sehr interessant zum Thema I2C und verschiedene Betriebsspannungen ist http://www.semiconductors.philips.com/acrobat/applicationnotes/AN97055.pdf Matthias
Hallo Matthias, doch ich weiss leider schon, wie der I2C Bus funktioniert. Zumindest ist mir klar, dass es scih um Open-Kollektorschaltungen handelt und wie der Bus warum hochgezogen wird. Und ja der IC hat 5V tolerante Eingänge, von daher sollte es gehen. Ich wollte nur nicht was triviales übersehen, ist das nicht zu verstehen? Viele Grüße
Hi aus der Aussage: >nd laut Datenblatt will der AVR bei 5V am TWI-Port für High 0,7 VCC = >3,5 V sehen, ist also mehr, als auf einem 3,3 V Bus anliegen... habe ich geschlossen das du es nicht weißt da ja der High-Pegel eines I2C-Device eigentlich keine Rolle spielt da dieser von den Widerständen kommt. War nicht böse gemeint. Zu Problemen kann es kommen wenn der EZUSB-Chip (hast du einen Link zum Datenblatt?) keinen OC-Ausgang hat. Die Philips-AN solltest du dir auch anschauen. Mit zwei MOSFET's und zwei Widerständen bist du damit dann 100%ig auf der sicheren Seite. Matthias
Hallo, Der Controller ist von Cypress: http://www.cypress.com/cfuploads/img/products/AN2131SC.pdf Ich habe da allerdings noch nichts über den Aufbau der Pins gelesen, allerdings ist doch zu hoffen, dass die ordnungsgemäß OC sind. Und die Aussage zum AVR ist so wie im Datenblatt, irgendeinen Pegel muss ja als High erkannt werden... Viele Grüße
Hi steht doch im Datenblatt Seite 64: "SCL and SDA are open-drain EZ-USB" Also spricht nichts dagegen die Verbindung direkt auszuführen. Matthias
Hallo, bitte nicht lachen: in meiner Version des Datenblatts (1.8) steht das nicht drinn. Habe mir gerade die neue runtergeladen (1.10) und in der Tat, da steht es so da ;-) Viele Grüße und besten Dank
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.