Forum: Mikrocontroller und Digitale Elektronik I2C Kommunikation STM32 <--> Atmega128


von Dennis H. (somebuddy)


Lesenswert?

Guten Abend,

Ich möchte eine I2C Kommunikation zwischen einem STM32 und einem 
Atmega128 realisieren.

STM32 3V3 Pegel ( aber 5V Tolerant soweit ich weiß )
Atmega128 5V Pegel.

Habe mir einige Datenblätter zwecks Level Shifting angeschaut aber auch 
immer wieder eine Lösung mit einfachen Pull up Widerständen gesehen.

Hat jemand Erfahrungswerte ob es bei dieser Konstellation genügt auf SDA 
und SCL einen PullUp auf 5V zu legen ? Oder sollte ich lieber einen 
Pegelwandler einsetzen.

Vielen Dank
Grüße
Dennis

von David P. (chavotronic)


Lesenswert?

Hallo Dennis,

Hier hilft der Blick ins Datenblatt. Die meisten Pins sind 5V Tolerant.
Also kannst du dir das Level Shifting sparen. Pull Up auf 5V sollte also 
gehen.

Du könntest aber auch den 128L nehmen und den Atmega dann mit 3.3V 
versorgen.(Wenn 8MHz ausreichen)

von Dennis H. (somebuddy)


Lesenswert?

Vielen Dank..
Von der 5V Toleranz hatte ich bereits geschrieben. Das es gehen "sollte" 
habe ich mir gedacht. Es würde mich nur interessieren ob es auch 
tatsächlich funktioniert. Daher die Frage nach Erfahrungswerten.

128L scheidet aus, da ich dann sämtliche andere 5V Komponente ebenfalls 
anpacken müsste.

Vielen Dank für deine Antwort.

von Fabian (Gast)


Lesenswert?

Ja, geht.

von Dario B. (abcd)


Lesenswert?

beim enc28j60 gehst das auch problemlos ohne pegelumsetzer. der enc 
läuft mir 3,3v, der atmega mit 5,0v. daher sehe ich keine probleme, 
weshalb das hier nicht gehen sollte, sofern der stm 5,0v-tolerant ist.

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
Noch kein Account? Hier anmelden.