Forum: Mikrocontroller und Digitale Elektronik 3.3 und 5V Umgebung, was tun?


von StarkStrom (Gast)


Lesenswert?

Hey,
ich hab folgendes Problem: Zur Steuerung meines Helis habe ich vor eine 
Platine zu bauen die wie bei den Quadrocoptern alle Servos/Motoren 
steuern kann und über verschiedene Sensoren verfügt.

Nun ist die eine Hälfte für 5V ausgelegt, die andere für 3.3V, wie 
manage ich das jetzt gescheit?

Ich will alles über einen, vielleicht auch 2 Atmegas laufen lassen, 
deren Spannung ist mir egal.
Aber meine Beschleunigungsmesser liefert mir Analogwerte von 0 -3.3V 
zurück und der Gyro hat ein I2C Anbindung, ebenfalls mit 3,3V.
Mein Empfänger liefert mir aber mein Summensignal mit 5V, die Ausgänge 
zu dem Servos etc. brauchen auch ein 5V Signal soweit ich weis. Ich 
brauch ein COM-Port, ala MAX232 (ich kenne die 3.3V Variante MAX3232). 
Ich will alles irgendwie upgrade-kompatibel halten, falls ich mal GPS 
oder ein Display erweitern will.

Soll ich alles mit Pegelwandler machen?
Ich tendiere ja zu einem einfachen Transistor-Pegelwandler auf der I2C 
Leitung (ist das schnell genug?) und den AtMega bei 5V lassen, aber dann 
müsste ich den ADC Eingang durch ein extra Chip ersetzen, sonst messe 
ich ja nur 0-3.3V bei max 5V, da verschenke ich Auslösung....

was tun? Jemand Ideen?

von Cortex-User (Gast)


Lesenswert?

Hallo,
ich kenne den AVR nicht direkt.
Aber hat der keinen Referenz-Eingang für den Analogeingang? Damit wäre 
das Problem schon gelöst.

Grüße
Michi

von spess53 (Gast)


Lesenswert?

Hi

>sonst messe ich ja nur 0-3.3V bei max 5V, da verschenke ich Auslösung....

Du brauchst nur eine passende Referenzspannung. Dann verschenkst du 
nichts.
ATMegas haben z.B. interne Referenzpannungsquellen mit 2,56 oder 1,1V.

MfG Spess

von Micha (Gast)


Lesenswert?

StarkStrom schrieb:
> was tun? Jemand Ideen?

Erstmal genau aufschlüsseln welche Signale mit welchem Pegel und welcher 
Richtung vorhanden sind und welchen Pegel sie haben sollten. Die 
Beschreibung oben ist nur schwer nachvollziehbar.
Dann den Artikel Pegelwandler durchlesen, dort gibt es z.B. auch 
eine schöne Lösung für dein I2C-"Problem".
Dem ADC eine externe Refenrenz spendieren, dann verlierst du auch keine 
Auflösung mehr.

von Frederik Hoffmann (Gast)


Lesenswert?

Hi

Habe auch eine Flybarless Elektronik gebaut und ich steuere meine Servos 
mit 3,3 V an. Pegelwanler von 3.3V nach RS232 gibts auch.
Habe einen AT91SAM7S im Einsatz und der verkraftet auch 5V Pegel am 
Eingang.

Die Atmegas haben auch eine Referenzspannung, die man auf 3,3V legen 
kann.

p.s. Was für einen Gyro Sensor hast du?

mit freundlichen Grüßen
Ferederik

von StarkStrom (Gast)


Angehängte Dateien:

Lesenswert?

Ref.Spannung.. Hand vor den Kopf schlag Nicht drauf gekommen, danke.

Dann denke ich, dass ich meinem Atmel auf 5V laufen lasse, und bloß 
meine I2C Leitungen auf 3.3V wandle.
Nach: http://ics.nxp.com/support/documents/interface/pdf/an97055.pdf 
Seite 12

Was empfiehlt sich da als Baustein für? Tuts da ein einfacher N-MOSFET a 
la IRF1010N? Ich hab das System noch nicht ganz verstanden. Wenn nichts 
passiert oder ein 5V sendet ist es mir klar was passiert. Wenn aber ein 
3.3V Device eine Leitung 'erdet', hat das System dann zu dem Zeitpunkt 
keine 5V, da der MOSFET leitet? Das würde doch das 3.3V Gerät killen.

@Ferederik: Ich nutze einen ITG 3200 
(http://www.watterott.com/de/Gyro-ITG-3200-Breakout)
Ist ein 3-Achsen Gyro. Ob das sinnvoll war weis ich nicht, jeder nutzt 3 
einzelne, die aber je ca. das gleiche kosten und nirgends steht wieso 
man keinen einzelnen nutzt.

von Micha (Gast)


Lesenswert?

StarkStrom schrieb:
> Wenn aber ein 3.3V Device eine Leitung 'erdet', hat das System dann zu dem
> Zeitpunkt keine 5V, da der MOSFET leitet?

Nein, da die Leitungen auf der 5V-Seite ja nur mittels Pullup gegen 5V 
geschaltet sind und das 3,3V-Device die Leitung gegen GND zieht. Dadurch 
fällt die gesamte Spannung an Rp5V ab und SDA2/SCL2 ist trotzdem low.

von (prx) A. K. (prx)


Lesenswert?

Wie Micha schon schreibt: Erstmal muss System in das Chaos, bevor man 
was sagen kann. Also aufschlüsseln, welche Komponenten und 
Schnittstellen 5V Pegel benötigen, welche 3,3V-Pegel benötigen und 
welchen es egal ist. Da kann am Ende rauskommen, dass der ganze I2C-Kram 
mit 3,3V laufen kann und sich dessen bidirektionale Pegelwandlung in 
Luft auflöst. Ähnlich ist es beispielsweise mit den üblichen Text-LCDs, 
die zwar 5V Versorgung benötigen, aber mit 3,3V-Signalpegel zufrieden 
sind.

von (prx) A. K. (prx)


Lesenswert?

StarkStrom schrieb:

> Tuts da ein einfacher N-MOSFET a la IRF1010N?

Das ist viel zu grober Klotz dafür. Vergiss die Gate-Source-Kapazität 
nicht, die hier voll auf der Leitung liegt und bei solchen Boliden zig 
Metern I2C-Leitung entspricht.

von StarkStrom (Gast)


Lesenswert?

Ein AtMega168 (VDD = 5V) soll über I2C mit einem Gyro (ITG-3200) der max 
3.8V aushält.
Zusätzlich ist ein Beschleunigungsmesser MMA7260QT (VDD = 3,3V + max. 
0,3) mit analogen Ausgängen von 0 - VDD (also 3.3V) mit von der Partie, 
welcher über die Analogeingänge des Atmels mit einer Ref.Spannung von 
3.3V ausgelesen wird.
Dann wird es  ein COM Port geben, gedacht mit einem MAX232, da der 
AtMega ja auf 5V läuft.
Als Eingangssignal gibt es ein Summensignal des Empfängers, müsste 5V 
sein, ebenso werden sie Servos mit 5V angesteuert. (Auch wenn es laut 
Frederik mit 3.3V geht, aber wie gesagt, der AtMega hat ja 5V)

Weiterhin will ich mir Späße wie Display, GPS, SD-Karte etc offen 
lassen.

von (prx) A. K. (prx)


Lesenswert?

StarkStrom schrieb:

> Dann wird es  ein COM Port geben, gedacht mit einem MAX232, da der
> AtMega ja auf 5V läuft.

Wieso "ja"? Oben schreibst du, dass es dir im Prinzip egal ist, bei 
welcher Spannung der/die AVRs laufen. Die würde ich also erst einmal 
offen lassen. Den Maxe folglich ebenfalls.

> Weiterhin will ich mir Späße wie Display, GPS, SD-Karte etc offen
> lassen.

SD-Karten arbeiten mit 3,3V! Einem HD44780-Display ist es wie schon 
geschrieben egal. Zum GPS kann ich nichts sagen.

> Als Eingangssignal gibt es ein Summensignal des Empfängers, müsste 5V
> sein,

Sehr leicht runterteilbar.

> ebenso werden sie Servos mit 5V angesteuert.

Wenn die TTL-kompatible Pegel erwarten, dann sind die auch mit einem 
3,3V-Signal zufrieden.

von StarkStrom (Gast)


Lesenswert?

Ok, du hast recht. Zusammengefasst heißt das:

Gyro -> 3V
Beschl.Messer -> 3V
Servos -> 3V
SD Karte -> 3V
Display auch mit 3V machbar (Dachte aber an ein S65 oder Nokia Display)
Eingangssignal bekommt man auch irgendwie auf 3V.
Das GPS läuft meist über UART, also MAX3232, ebenso wie den COM-Port.

Also alles auf 3.3V.
Und ich wollte so ein Umstand machen... Ich denke jetzt sollte (vorerst) 
alles geklärt sein.

Danke, ich liebe euch =D

von (prx) A. K. (prx)


Lesenswert?

StarkStrom schrieb:

> Display auch mit 3V machbar (Dachte aber an ein S65 oder Nokia Display)

Du glaubst doch nicht ernsthaft, dass ein Handydisplay 5V braucht??? Zum 
S65 las ich grad was von 2,9V.

von StarkStrom (Gast)


Lesenswert?

Sag ich ja auch nicht, ich weis auch dass das S65 knapp 3V braucht. 
Wollte nur sagen dass ich nicht auf ein Dot-Matrix hinaus will.

von Simon K. (simon) Benutzerseite


Lesenswert?

So, hier ist es aber jetzt richtig:

http://www.kip.uni-heidelberg.de/lhcb/Publications/external/AN97055.pdf

Da steht alles drin, was die FETs für den Level Shifter können müssen.

von StarkStrom (Gast)


Lesenswert?

Ich weis, ich hab es oben schon mal gepostet, außerdem brauch ich es ja 
nicht mehr... =D
Danke trotzdem

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.