Forum: Mikrocontroller und Digitale Elektronik 5V auf Arduino Nano Pin?


von Ben G. (specker)


Lesenswert?

Moinsen

Ich besitze einen Nano 33 IoT und einen Pro Micro.
Jetzt wollte ich einen Output Pin vom Pro Micro an einen Input Pin vom 
Nano anschließen.
Die Betriebspannung ist allerdings beim Pro Micro 5V und beim Nano 3,3V.

Liegen die 5V vom Micro noch in einem akzeptablen Bereich, was der Nano 
auf den Pins als Input Konfiguration verkraftet?
Reicht es eventuell einen Widerstand vorzuschalten bzw. kann darauf 
verzichtet werden?
Bevor ich noch was schrotte, wollte ich das erst geklärt haben...

von Christian M. (christian_m280)


Lesenswert?

Ben G. schrieb:
> Liegen die 5V vom Micro noch in einem akzeptablen Bereich, was der Nano
> auf den Pins als Input Konfiguration verkraftet?

Nein, RTFM! Am einfachsten einen Spannungsteiler. Willst Du Daten 
übertragen oder nur statisch Ein/Aus?

Gruss Chregu

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

Ein einfacher Serienwiderstand reicht aus, wenn du den Strom auf unter 
ein paar hundert µA begrenzt. Die fliessen dann über die Klemmdioden des 
Einganges ab. 2,2k - 10k sollten gut klappen.
Durchdenken solltest du auch den Zustand, wenn einer der MC ohne 
Versorgung ist.

von Axel S. (a-za-z0-9)


Lesenswert?

Ben G. schrieb:
> Nano 33 IoT

Auf dem Arduino Nano 33 IoT werkelt ein SAMD21 als Prozessor.
Dessen I/O Pins sind nicht 5V tolerant.

Du brauchst einen Pegelwandler. Im einfachsten Fall kann
das ein Spannungsteiler sein. Kommt auf die Signale an.

von Wolfgang (Gast)


Lesenswert?

Ben G. schrieb:
> Liegen die 5V vom Micro noch in einem akzeptablen Bereich, was der Nano
> auf den Pins als Input Konfiguration verkraftet?

Nein - RTFM
Auf dem Arduino Nano ist wahrscheinlich ein ATmega328 verbaut und dazu 
gibt es vom Hersteller ein Datenblatt mit allen Angaben, insbesondere 
den Absolute Maximum Ratings.
Und was liest man dort? Guck selber nach - dann lernst du es.

von Hans (Gast)


Lesenswert?

Ist ein bisschen verwirrend weil du von Nano redest aber Nano 33 iot 
meinst. Nein den kannst du so nicht anschließen.
Entweder spannungsteiler oder wenn du davon keine Ahnung hast, dann gibt 
es auch ein Pegelwandler Modul mit Transistoren fertig

von Hans (Gast)


Lesenswert?

Und was liest man dort? Guck selber nach - dann lernst du es.


Du hättest auch bessern mal aufmerksam  die Frage gelesen als so zu 
stänkern.

von Uwe Bonnes (Gast)


Lesenswert?

Das Atmel keine 5-Volt toleranten IOs macht, ist schade...

von Stefan F. (Gast)


Lesenswert?

Axel S. schrieb:
> Auf dem Arduino Nano 33 IoT werkelt ein SAMD21 als Prozessor.

Wolfgang schrieb:
> Auf dem Arduino Nano ist wahrscheinlich ein ATmega328 verbaut

Sonst noch Vorschläge? Ich bin für RTFM.

von Wolfgang (Gast)


Lesenswert?

Stefan ⛄ F. schrieb:
> Sonst noch Vorschläge?

Der Fehler steckt schon im Titel - ändert aber nichts: RTFM

Entscheidend ist, dass das Datenblatt zum Chip passt.
Ersetze also einfach "wahrscheinlich ein ATmega328" durch "SAMD21", wenn 
du dann beruhigt bist.

von MaWin (Gast)


Lesenswert?

Wolfgang schrieb:
> Ersetze also einfach "wahrscheinlich ein ATmega328" durch "SAMD21

Ich ersetze lieber "Wolfgang" durch jemanden der nur dann was beiträgt, 
wenn er auch Ahnung vom Thema hat, und nicht bloss zum rumpaulen in die 
Tasten haut.

von Tom (Gast)


Lesenswert?

PS: Hier wirst du 1. besser behandelt und die Leute kennen sich aus mit 
den Teilen und wissen zumindest was "ein" Arduino ist
-> https://forum.arduino.cc/t/pegelwandler/64934/3

von Ben G. (specker)


Lesenswert?

Ok, danke für die Antworten. Die Rede war natürlich von einem Nano 33 
IoT.
War gestern schon sehr spät, als ich Beitrag und Titel gepostet hatte. 
Mea culpa
Ich hatte in diversen Data Sheets gesucht nach der Info. jetzt habe ich 
das Handbuch endlich gefunden. Und da steht auch das drin, was ihr schon 
gepostet habt.

Das Teil hier kommt mir für mein Vorhaben am Vernünfigsten vor:
https://www.sparkfun.com/products/12009

Ich könnte auch 4 Optokoppler nutzen, glaube aber das teil oben ist 
allein schon Platztechnich besser geeignet.

"Willst Du Daten
übertragen oder nur statisch Ein/Aus?"
Nur Ein/Aus Signale.

@  Tom

Danke für den Link. ;)
Ich kenne es persönlich garnicht anders, als dass sich aufm elektronik 
Forum gestritten wird. Ohne Scheiß, ich habe noch nie Leute erlebt die 
streitsüchtiger sind als hier bzw. auf anderen Elektronik Foren. Woran 
das wohl liegen mag?

von Tom (Gast)


Lesenswert?

Ben G. schrieb:
> Das Teil hier kommt mir für mein Vorhaben am Vernünfigsten vor:

Ja es wird funktionieren- wie andere schon meinten zwei Widerstände 
gingen für den Zweck auch.

Ja, hier ist's leider vom Benehmen bei einigen schon sehr Grenzwertig. 
Sozialkompetenz verträgt sich offenbar nicht gut mit dem Stubenhocken, 
welches nötig ist, um auf das fachliche Wissen zu kommen.

von Sebastian (Gast)


Lesenswert?

Ben G. schrieb:
> Das Teil hier kommt mir für mein Vorhaben am Vernünfigsten vor:
> https://www.sparkfun.com/products/12009

Ja. Das Teil basiert auf einem N-FET (BSS138) und hat beidseitig noch je 
10k Pullup zur jeweiligen Versorgungsspannung. Wenn du Inputseitig auf 
dem uC Pullup aktivierst dann würde auch ein einzelner BSS138 zur 
Pegelwandlung reichen ...

LG, Sebastian

von Axel S. (a-za-z0-9)


Lesenswert?

Sebastian schrieb:
> Wenn du Inputseitig auf
> dem uC Pullup aktivierst dann würde auch ein einzelner BSS138 zur
> Pegelwandlung reichen ...

Wie gesagt: das ist alles im Artikel Pegelwandler schon 
aufgeschrieben: Man muß es bloß noch lesen und anwenden.

Wenn es jedoch reine Ein-/Aus-Schaltsignale sind, dann reicht in der Tat 
ein Spannungsteiler. Z.B. 5V Ausgang --[10K]--*--[22K]--| GND. Und der 
Eingang des 3.3V Systems an den Stern anschließen.

von Wolfgang (Gast)


Lesenswert?

Axel S. schrieb:
> Wenn es jedoch reine Ein-/Aus-Schaltsignale sind, dann reicht in der Tat
> ein Spannungsteiler. Z.B. 5V Ausgang --[10K]--*--[22K]--| GND.

Das ist im Prinzip schon ein Widerstand zu viel. Es reicht ein einzelner 
Widerstand als Pull-Up nach 3.3V (evtl. sogar der interne) und Steuerung 
des Ausgangs vom Pro Micro als Open-Drain Stufe.
Ob das sinnvoll und von der Software her machbar ist, hängt davon ab, 
was für ein Signal vom Pro Micro zum Nano 33 IoT übertragen werden soll.
Das scheint bisher aber noch unklar.

Ich weiß - jetzt kommen gleich die Sicherheitsbedenkenträger. Also doch 
zwei Widerstände?

von Ben G. (specker)


Lesenswert?

Ok, ich hätte direkt dazuschreiben sollen, was die ganze Sache 
eigentlich werden soll.
Das hole ich jetzt mal nach.

Auf dem Arduino Pro Micro läuft ein Sketch, welchen ich nicht selber 
programmiert und keinerlei Einfluss darauf habe. Der Sketch ist darauf 
ausgelegt, dass man an den Pro Micro noch eine IR Kamera anschließt. 
Dann werden mit entsprechender Software für den PC die Bewegungen der 
Kamera in Bewegung der Maus umgewandelt. Das ganze ist für eine 
Lichtpistole gedacht. Der Sketch läuft auch nur auf dem 5V Pro Micro 
Modell.

Zusätzlich zu dieser Kamera Funktion gibt es mit besagten Sketch die 
Möglichkeit, diverse Input-pins des Pro Micro mit Schaltern zu belegen, 
damit die Software auf dem Rechner dann weiß, dass der Start Knopf, der 
A-Knopf etc. gedrückt wurde.
Also z.B. Pin 14 des Pro Micro verbunden mit Ground des Pro Micro, würde 
der Software sagen, dass der A-Knopf betätigt wurde.

Den Nano 33 IoT will ich dafür nutzen, diese Buttons, die man an den pro 
Micro anschließen kann, quasi zu simulieren.
Das mache ich, weil ich ein Bluetooth Sender habe, der Signale an den 
Nano sendet. Dieser wiederum soll die Signale an den Pro Micro 
weitergeben.
Diesen Bluetooth Sketch habe ich selber geschrieben und bin, was den 
Nano 33 angeht also flexibel.
Nur beim Micro eben leider nicht.

Wenn es eine Möglichkeit geben würde, auf ein zusätzliches Board wie den 
SparkFun zu verzichten, wäre das natürlich super.

von Stefan F. (Gast)


Angehängte Dateien:

Lesenswert?

Ich würde einen Spannungsteiler mit 1k + 2.2k oder 1.5k + 2.2k 
verwenden.

Wenn man ganz mutig ist, kann man auch beim sendenden Mikrocontroller 
den Ausgang im Open-Drain Modus betreiben und beim empfangenden den 
internen Pull-Up aktivieren. Dann ist eine direkte Verbindung der Chips 
möglich.

Open-Drain Modus geht so:
Setze das Bit im PORT Register auf 0 und lasse es so (= Reset Zustand).
Setze das Bit im DDRD Register auf 1, wenn der Ausgang auf LOW gehen 
soll.
Setze das Bit im DDRD Register auf 0, wenn der Ausgang auf HIGH gehen 
soll.

Nachteile:
1) Der interne Pull-Up ist recht hochohmig. Bei langen Leitungen besteht 
das Risiko, dass sie Radiowellen empfängt und dadurch gelegentlich 
falsche Pegel hat.
2) Wenn man den Ausgang doch versehentlich als aktiven Ausgang (anstatt 
Open-Drain) konfiguriert und auf HIGH setzt, killt man womöglich den 
Nano 33 IoT.

von Harry L. (mysth)


Lesenswert?

Es geht auch ohne Spannungsteiler, Pegelwandler etc, wenn der Ausgang 
als OpenDrain und der Eingang mit PullUp konfiguriert wird.

von Wolfgang (Gast)


Lesenswert?

Ben G. schrieb:
> Der Sketch läuft auch nur auf dem 5V Pro Micro Modell.

Klar, wenn du eine Maus emulieren willst, musst der Controller den USB 
als HID betreiben können.

von Wolfgang (Gast)


Lesenswert?

Stefan ⛄ F. schrieb:
> Wenn man ganz mutig ist, kann man auch beim sendenden Mikrocontroller
> den Ausgang im Open-Drain Modus betreiben und beim empfangenden den
> internen Pull-Up aktivieren.

Schrieb ich bereits, entfällt aber, wenn der Code auf dem Micro nicht 
zugänglich 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.