Wie kann ein 5V Uno mit einem 3.3V Due sprechen?

9

Ich habe derzeit einen Uno (der mit 5 V arbeitet) und ich möchte einen Due kaufen (der nur mit 3,3 V arbeitet). Ich möchte, dass sie über Serial oder SPI oder ähnliches kommunizieren, aber vermutlich ist eine direkte Verbindung keine Option (ich denke, die Pins des Due würden beschädigt werden).

Gibt es eine Möglichkeit, die Verbindung sicher zu machen? Oder gibt es eine alternative Form der Kommunikation, die ich stattdessen sicher zwischen ihnen verwenden könnte?

Peter Bloomfield
quelle

Antworten:

8
  • Für einen 5-V-Logikeingang an einen 3-V3-Logikeingang können Sie einen Widerstandsteiler verwenden, um die Spannung zu senken.
  • Im entladenen Zustand reicht ein 3V3-Logikeingang gerade aus, um einen 5V-Logikeingang anzusteuern. Überprüfen Sie das AVR-Datenblatt auf die genauen Spannungen (0,6 × Vcc = 3 V, siehe DC-Eigenschaften im Datenblatt).

Mit anderen Worten, mit ein wenig besonderer Sorgfalt kann es einfach funktionieren.

Verwenden Sie einen Level Shifter, um eine zuverlässigere und bidirektionale Lösung zu erstellen. Auf dieser Seite sind mehrere aufgeführt, aber andere Hersteller stellen ähnliche Geräte her.

Dieses Dokument beschreibt, wie ein MOSFET verwendet werden kann, um Logikpegel zwischen verschiedenen Versorgungsspannungen bidirektional umzuwandeln.

Jippie
quelle
+1 für die MOSFET-Lösungsreferenz. Ich hätte nicht gedacht, dass bidirektionales Pegelverschieben funktionieren könnte. Faszinierend.
jfpoilpret
Für den MOSFET-Pegelwandler sind keine diskreten Komponenten erforderlich - es gibt Geräte wie den Dual-FET FDC6301N. Oder es gibt spezielle Level Shifter wie den PCA9306.
Cybergibbons
1
Adafruit verfügt über einen sofort einsatzbereiten MOSFET-Level-Shifter ( adafruit.com/products/757 ), der auch für die I2C-Kommunikation geeignet ist , bei der eine bidirektionale Level-Übersetzung erforderlich ist.
Mike WP