Forum: Mikrocontroller und Digitale Elektronik Arduino Due- Spannung auf 5V


von Alabama J. (alabamajack)


Angehängte Dateien:

Lesenswert?

Hallo,
ich habe einen Arduino Due und folgendes Problem:
Da der ARM mit 3,3V betrieben wird, hab ich ja an den I/O pins 3,3V, 
hätte aber gerne 5V geschaltet, wobei ich mir folgendes überlegt habe:
Eigentlich müsste doch ein Transistor-Array reichen, bei dem ich 3,3V 
als Basis-Spannung nehme und damit 5V durchschalte. Die 5V kommen auch 
vom Due, allerdings halt nicht vom uC.
Hab ich richtig gedacht, so wie der Schaltplan das Darstellt(lassen wir 
mal außen vor, was dann geschalten wird, sondern nur dass 5V 
durchgeschalten werden sollen(max. 800mA, da der Due bei 5V sowieso 
nicht mehr liefert). Und lieg ich richtig, wenn ich da eigentlich mit 
einem ULN2803 arbeiten wollen würde?
Und andersrum müsste das dann doch auch gehen, also mit 5V Steuersignal 
auf die Basis 3,3V durchschalten?(obwohl dies eigentlich, wenn ich so 
recht überlege, nicht vorkommt...)

Danke schonmal für die Antworten

P.S. ach ja, bevor ich jetzt hier gebasht werde, weil ich einen Arduino 
habe(von wegen nicht richtig Programmieren etc...^^): ich habe im 
Endeffekt keinerlei Elektronikzeugs (und außerdem keinerlei platz) und 
sehe deswegen den Arduino eigentlich als ganz gute Lösung(unabhängig von 
der IDE)

von holger (Gast)


Lesenswert?

Deine Schaltung geht so nicht. Da kommen nur noch 2.4V am Emitter an.
Ohne Vorwiderstand gehen deine LEDs kaputt.

von Alabama J. (alabamajack)


Lesenswert?

Also nen Darlington-Transisotr anstatt einem normalen npn?

von holger (Gast)


Lesenswert?

>Also nen Darlington-Transisotr anstatt einem normalen npn?

Dann hast du nur noch 1.7V am Emitter.
Leg den Emitter auf Masse und die Last an VCC.
Dann brauchst du aber noch einen Basiswiderstand.

von Schlumpf (Gast)


Lesenswert?

holger schrieb:
> Dann brauchst du aber noch einen Basiswiderstand.

... und noch nen Vorwiderstand vor der LED...

von Schlumpf (Gast)


Lesenswert?

... sorry, hast du ja schon geschrieben...

von Frank K. (fchk)


Lesenswert?

Florian La schrieb:
> Hallo,
> ich habe einen Arduino Due und folgendes Problem:
> Da der ARM mit 3,3V betrieben wird, hab ich ja an den I/O pins 3,3V,
> hätte aber gerne 5V geschaltet, wobei ich mir folgendes überlegt habe:

Dies ist eine FAQ: Nimm ein Logikgatter der 74HCT-Serie (z.B. 74HCT541), 
das Du mit 5V betreibst. Die Schaltschwellen der 74HCT-Gatter passt auf 
3.3V-Ausgänge.

Umgekehrt: Nimm ein Gatter der 74LVC- oder alternativ 74AHC-Serie (nicht 
aber 74HC!), das Du mit 3.3V versorgst. Die Eingänge dieser Gatter 
vertragen ausdrücklich bis 5.5V, auch wenn sie mit 3.3V 
Versorgungsspannung betrieben werden. Normalerweise dürfen digitale 
Bausteine an ihren Eingängen maximal mit ihrer Versorgungsspannung 
beaufschlagt werden, niemals mehr.

Für I2C gibts spezielle Levelshifter, z.B. PCA9306.

Für bidirektionale parallele Busse gibts 74LVCC3245 bzw 74LVCC4245, je 
nachdem ob die RW- und die Enable-Leitung auf der 3V oder der 5V-Seite 
liegen.

fchk

von Alabama J. (alabamajack)


Lesenswert?

Also ich fasse mal kurz, die hilfreichen Antworten, danke dafür!, 
zusammen:
-Als Schalter nimm ich einen 74HCT541 mit 5V auf VCC und meine gewollten 
3V3 auf A1 - A8 und hab dann, wenn A1 - A8 jeweils auf 3V3 geschalten 
sind, 5V.
- Außerdem brauch ich noch einen Vorwiderstand zwischen Ausgang( Y1 im 
Datenblatt ) und LED ( wie groß muss der widerstand den sein ( 100 Ohm 
bei 50mA), und brauch ich dann auch einen widerstand bei nem kleinen 
servo?
- Brauch ich dann noch nen Widerstand zwischen meinem Board und A1 vom 
Ic?

Danke für die bereits geleistete Hilfe!!

von Frank K. (fchk)


Lesenswert?

Florian La schrieb:
> Also ich fasse mal kurz, die hilfreichen Antworten, danke dafür!,
> zusammen:
> -Als Schalter nimm ich einen 74HCT541 mit 5V auf VCC und meine gewollten
> 3V3 auf A1 - A8 und hab dann, wenn A1 - A8 jeweils auf 3V3 geschalten
> sind, 5V.

Das ist kein Schalter, sondern ein Pegelwandler. Aber richtig erkannt: 
Wenn Du
- die Ausgänge A1-A8 Deines Arduino an die Pins 2...9 des HCT541
- +5V an Pin 20 des HCT541
- Ground an Pin 10, 1 und 19 vom HCT541 legst
- zwischen Pin 10 (Ground) und Pin 20 (VCC) einen keramischen 
100nF-Kondensator lötest
dann hast Du an den Pins 18...11 Dein Bitmuster vom Arduino mit 
0V/5V-Pegel.

> - Außerdem brauch ich noch einen Vorwiderstand zwischen Ausgang( Y1 im
> Datenblatt ) und LED ( wie groß muss der widerstand den sein ( 100 Ohm
> bei 50mA), und brauch ich dann auch einen widerstand bei nem kleinen
> servo?

Ein normaler Ausgang eines 74HC/HCT-Chips kann maximal 25mA treiben, und 
die Summe aller Ausgangsströme pro Chip ist auch begrenzt, und zwar auf 
irgendwas um die 300-400mA, wenn ich mich recht entsinne. Mit 10mA pro 
Pin solltest Du auf der sicheren Seite sein. Brauchst Du mehr, musst Du 
einen extra Treiberchip oder eine Transistorstufe dahinter schalten.

Normale LEDs leuchten auch mit 10mA hell genug. Zum Vorwiderstand:

http://www.elektronik-kompendium.de/sites/bau/1109111.htm

Zu Servos kann ich nichts sagen.

> - Brauch ich dann noch nen Widerstand zwischen meinem Board und A1 vom
> Ic?

nein.

Denke dran: Die 74HC/HCT ICs mögen wie alle CMOS-ICs keine offenen 
Eingänge. Unbenutzte Eingänge daher immer auf einen definierten 
Logikpegel legen oder per Pullup (10k sind ein gängiger Wert) nach VCC 
ziehen.

fchk

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.