Archiv verlassen und diese Seite im Standarddesign anzeigen : levelshifter mit nand-gatter?
Roboman93
04.10.2009, 12:46
ich brauche einen levelshifter, da ich in einer schaltung ein ic mit 5v, ein anderes mit 3,3v habe. er muss nur unidirektional, vom 3,3v zum 5v, sein. kann ich dafür ein nand-gatter nehmen, einen eingang auf gnd, den anderen an den ausgang des 3,3v-ics und den ausgang an den eingang des 5v-ics?
mfg roboman
021aet04
04.10.2009, 13:07
Du könntest die gleiche Schaltung nehmen, wie sie für den I2C Bus verwendet wird. Hier ist der Link zu meiner I2C-Verteilerplatine, in der ich auch die Schaltung verwendet habe (https://www.roboternetz.de/phpBB2/zeigebeitrag.php?t=47949&postdays=0&postorder=asc&start=0). hier ist die Schaltung http://www.mikrocontroller.net/attachment/6176/3_3V-I2C.JPG
Wenn du Glück hast, ist der 5V-IC kompatibel zu deinen 3V3-Pegeln. Schau mal ins Datenblatt. (Oder sag, um welche ICs es sich handelt...)
Mit einem NAND-Gatter geht es zumindest nicht. Schau dir dazu mal die Logiktabelle eines NAND-Gatters an, das wird nicht so funktionieren wie du meinst.
Gruß
CowZ
Roboman93
04.10.2009, 13:37
das ic ist ein enc28j60. im datenblatt steht, man braucht ein levelshifter für die pins, die zum 5v-controller gehen. im datenblat steht auch, man kann and-gates nehmen, da dachte ich mir, nand's gehen auch.
mfg roboman
Wenn du ein NAND so verschaltest, wird das Signal invertiert.
Ob ein Logikgatter von 3,3V auf 5V wandeln kann, hängt von der Baureihe ab. 74HC... geht nicht, 74HCT... geht.
PS. spricht was dagegen, das gesamte System auf 3,3V umzustellen?
Roboman93
04.10.2009, 13:49
so weit ich weiß, läuft der atmega644 bei 16mhz bei 3,3v nicht mehr, oder?
mfg roboman
Hallo!
@ Roboman93
Es soll normaleweise ohne Levelschifter möglich sein, da die meisten 5 V TTL-Logik-Eingänge eine Spannung höher als 2,4 V als "H" Pegel annehmen.
MfG
Hallo!
@ Roboman93
Es soll normaleweise ohne Levelschifter möglich sein, da die meisten 5 V TTL-Logik-Eingänge eine Spannung höher als 2,4 V als "H" Pegel annehmen.
MfG
Wenn das nicht gehen sollte - 74er Serie mit "Open Colector" + Wiederstand nehmen
Oder einfach ein Transistor als PegelDingsDa verbauen - wie viele brauchst du da? bei nur einem oder zwei - Transistor wäre evtl einfacher
Roboman93
04.10.2009, 14:27
ich habe jetzt mal nachgemessen. wenn man 2 nand hintereinander schaltet und am eingang 3,3v anlegt, kommen hinten 5 raus. ich werd dann die nand-gatter ald levelshifter nehmen-
mfg roboman
Man könte auch beide Logikpegel mit einer Diode "erhöhen" (siehe Code).
MfG
VCC=5V
+
|
.-.
| | R
| |
'-'
|
3,3V Logik >-----|<-+-----> 5V Logik
D
Was wir dir vorschlagen, ist dir total egal, oder?
Also nochmal zusammengefasst:
- wenn du die NANDs so benutzt wie du vorgeschlagen hast (ein Eingang auf GND, den anderen auf's Signal), wird es nicht funktionieren (siehe Logiktabelle eines NANDs)
- die ATMegas erkennen 3V3 als High. Sollte also auch komplett ohne Wandler funktionieren
- es gibt einfache Transistorschaltungen (sollte auch kleiner werden, je nach Anzahl der Signale)
- es gibt noch einfachere Diodenschaltungen
Gruß
CowZ
Besserwessi
04.10.2009, 21:09
Es Stimmt zwar das ein 3.3 V Signal beim Megaxx4 als high erkannt wird bei VCC=5 V, allerdings ist das schon recht knapp, denn die Grenze dafür leigt bei 3 V. Da wäre es besser den µC mit etwas weniger als 5 V zu betreiben (z.B. 4-4,5 V): das reicht für 16 MHz und auch etwas weniger als 3 V werden sicher als high erkannt. Das mancht dann auch die andere Richting einfacher.
Sonst ist ein HCT IC als Pegelwandler gut. Allerdings eher ein Inverter, bzw. 2 hintereinander oder ein UND bzw. ODER gatter, aber weniger gut ein NAND Gatter.
Für nur 1-2 Leitungen kommt auch eine Schaltung mit Transistoren oder besser MOSFETs in Frage.
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.