Hallo, ich habe hier 2 Boards mit STM32ern: STM32F4 Discovery und STM32H7A3 Nucleo und würde gerne eine Kommunikation zwischen beiden aufbauen mittels I2C (und einem GPIO Pin). Nun haben beide aber leicht unterschiedliche Pegel: - das F4 Discovery läuft mit 3V (gemessene 2,98V) - das H7 Nucleo läuft mit 3.3V (gemessene 3,45V) Wäre der Unterschied (knapp 0,5V) klein genug dass es keine Probleme gibt oder muss ich größere Vorkehrungen (Pegelwander?) treffen? Meine Idee war nun da es um I2C (und einen GPIO den ich auch als Open Drain betreiben kann) geht, könnte ich da einfach nur den Pull-Up auf die niedrigere Spannung ziehen (die 3V vom F4). Der Pegel reicht dann trotzdem noch um bei dem H7 einen sauberen High Pegel zu erreichen. Würde das so passen oder riskiere ich damit irgendwelche unvorhergesehenen Probleme? Gruß, AVerr
Laut datasheet sollte das kein Problem sein. Die Massen müssen natürlich verbunden sein, sonst gibt es ja keine definierten relativen Pegel.
Lutz schrieb: > Die Massen müssen natürlich verbunden sein Jawohl, habe ich vergessen zu erwähnen. Vielen Dank, dann werde ich mich mal an's Basteln machen :)
AVerr schrieb: > Würde das so passen Ja. Zusätzlich ist der I²C Port bei den mir bekannten Modellen sogar 5V tolerant.
AVerr schrieb: > das F4 Discovery läuft mit 3V (gemessene 2,98V) > das H7 Nucleo läuft mit 3.3V (gemessene 3,45V) Natürlich möglich, Beide Spannungen sind zulässig, aber meiner Meinung nach verwunderlich, dass ein 3.0V Spannungsregler und keiner mit 3.3V dem F4 Board verwendet worden sein soll. Entweder war der etwas billiger, deine Eingangsspannung ist zu niedrig oder du hast eine zu große last angeschlossen. Auch 3.45V hören sich seltsam an. Ein 3,3V Spannungsregler der so ungenau und dann auch noch zuviel regelt? Bitte überprüfe die Spannungswandler ICs, ob tatsächlich ein 3,0V bzw. 3,3V Typ verbaut ist.
QQ schrieb: > Beide Spannungen sind zulässig, aber meiner Meinung > nach verwunderlich, dass ein 3.0V Spannungsregler und keiner mit 3.3V > dem F4 Board verwendet worden sein soll. Das liegt wohl daran dass ein 3.3V Spannungsregler (LD3985M33R) verwendet wird, aber direkt dahinter eine BAT60J Diode steckt. Mit Forward Voltage Drop passen die ca. 3.0V recht gut. Ja, die 3.45V machen mir auch etwas Sorgen. Laut Schaltplan müsste ein ST1L05CPU33R verbaut sein, der nicht so viel ausgeben dürfte. Ich werde das später noch überprüfen ob das so stimmt.
Was die 3.45V betrifft kann ich Entwarnung geben ... ich weiß nicht warum mein Multitmeter (billiges Peaktech Teil) gestern die 3.45V angezeigt hat, aber Heute sind es 3.32V, macht auch mehr Sinn. Wird wohl Zeit für ein besseres Multimeter ...
AVerr schrieb: > Wird wohl Zeit für ein besseres Multimeter Oder frische Batterien. Das war oben nämlich meine erster Gedanke bei den erwähnten Spannungen.
Walter T. schrieb: > Oder frische Batterien. Das ist der Witz an der Sache: ich habe erst vor 2 Tagen die Batterien gewechselt, sie sind also noch frisch.
AVerr schrieb: > Das liegt wohl daran dass ein 3.3V Spannungsregler (LD3985M33R) > verwendet wird, aber direkt dahinter eine BAT60J Diode steckt. Mit > Forward Voltage Drop passen die ca. 3.0V recht gut. Das machen die auf dem Disco Board, damit man auch extern 3,3V einspeisen kann (hinter der Diode). Wenn man das nicht möchte, kann man die BAT60 auch brücken mit dem Nebeneffekt, das die Betriebsspannung sauberer ist. Die kleine Diode ist nämlich ein ganz schöner Widerstand.
Da die ursprüngliche Frage jetzt geklärt ist: Was ist der Anwendungsfall? Wozu verbindet man zwei MCUs mit viel Leistung durch eine Leitung mit wenig Bandbreite?
Walter T. schrieb: > Was ist der Anwendungsfall? Wozu verbindet man zwei MCUs mit viel > Leistung durch eine Leitung mit wenig Bandbreite? Weil das die 2 Boards sind die ich gerade da habe. Am Ende werden viel kleinere STM32er verwendet, aber erstmal will ich nur das Zusammenspiel der 2 Komponenten testen. Ja, gerade der H7 ist für den Zweck unnötig komplex, aber das hab ich schon im Griff ;)
AVerr schrieb: > warum mein Multitmeter (billiges Peaktech Teil) gestern die 3.45V > angezeigt hat, aber Heute sind es 3.32V, macht auch mehr Sinn. Solche Messgeräte gefallen mir, wenn man für das sehnlichst gewünschte Ergebnis einfach ein wenig länger damit herummessen muss... ;-) AVerr schrieb: > Meine Idee war nun da es um I2C Wenn du schon 2 Leitungen für die Verbindung verwendest, warum dann nicht besser einen UART, der mit 8MBd bei weniger Protokoll- und Verwaltungsoverhead die Daten bidirektional unabhängig vom Übertragungszustand des Partners übertragen kann? Schön, wenn man den I²C hat und 5 Slaves dran. Aber ich würde eine Kommunikation zwischen meinen eigenen 2 Geräten nicht mit einem Multimasterbus abhandeln. Schon das Gelecke mit der Busarbitrierung und das Gebettel um den Bus smat Einhaltung irgendwelcher Timings wäre mir viel zu umständlich.
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.