Hi Leute, ich weiß das Thema wurde schon sehr oft diskutiert. Es geht darum für eine SPI Schnittstelle zwischen dem Raspberry und Bauteilen mit TTL Pegeln zu kommunizieren. Dazu hab ich bei ebay folgenden Artikel gefunden der bidirektional funktionieren soll http://www.ebay.de/itm/4-hannel-3-3V-5V-Logic-Level-Converter-Bidirektional-Shifter-Modul-/272346453292?hash=item3f691d152c:g:6EwAAOSwIgNXtuJS Auf dem Bild ist ein SMD Bauteil mit der Aufschrift J1 zu sehen. Frage #1: Was ist das für ein Bauteil? Handelt es sich um einen Voltage Detector? Nach SMD Code Liste müsste es eines dieser Bauteile sein: - n-MOS-e V-MOS, LogL, 60V, 0,7A, <0,9Ω - Z-diode 16V±5%, 410mW - Z-diode 16V±5%, Zzt=17Ω, 200mW - CMOS-IC Voltage Detector 1,2V±2.0%, Reset Open drain output - CMOS-IC Voltage Detector 4,1V, -Reset Push-pull output, 240ms - C-diode VHF/UHF-Tuning, 25V, 330mW, 10pF(2V), ∆C ±20% - C-diode VHF/UHF-Tuning, 25V, 330mW, 10pF(2V), ∆C ±10% - C-diode VHF/UHF-Tuning, 25V, 330mW, 10pF(2V), ∆C ±5% - Si-pnp GP, AF, 30V, 800mA, 200mW, B=100..200, 120MHz - Si-pnp GP, AF, 30V, 800mA, 200mW, B=130..320, 120MHz Frage #2: Wie funktioniert diese Schaltung? Speziell das bidirektionale Verhalten? Im Anhang der Schaltplan, welchen ich Anhand der Bilder von der Leiterplatte erstellt habe (Fehler nicht ausgeschlossen)
Das Bauteil ist höchstwahrscheinlich ein nMOSFET, wie in diesem Beispiel: http://husstechlabs.com/support/tutorials/bi-directional-level-shifter/ Gibt es auch als fertige Bauelemente, einfach mal Google bemühen ...
ein FET und 2 R https://www.google.de/search?q=3,3V+5V+io&client=firefox-b&source=lnms&tbm=isch&sa=X&ved=0ahUKEwiq7tml0JbPAhVHXRoKHQvCD9kQ_AUICCgB&biw=1270&bih=663#tbm=isch&q=3%2C3V+5V+io+pegelwandler die kleinen Platinen und Schaltbild sieht man auch. https://www.mikrocontroller.net/attachment/231214/Pegelwandler_.wikipedia.PNG
:
Bearbeitet durch User
Ok. 3,3V auf 5V verstehe ich bei dieser Schaltung: https://www.mikrocontroller.net/attachment/231214/Pegelwandler_.wikipedia.PNG Wie funktioniert 5V auf 3,3V genau? Wird bei Ub 5V angelegt macht T1 ja praktisch nichts und bei Ua erhalte ich durch R1 welcher in diesem Fall wohl als Pull Up agiert den 3,3V Pegel richtig? Wird bei Ub jedoch 0V angelegt müsste Ua ja auch auf 0V gezogen werden. Geschieht dies durch die antiparallel geschaltene Diode in T1? Erhalte ich dann tatsächlich einen 0V Pegel oder einen Pegel um 0,7V wegen der Diode?
Erstmal braucht man für SPI keinen Bi-Direktionalen Pegel-Wandler, die Signale sind jeweils nur uni-direktional. :-) Die Schaltung mit dem FET kannst Du für SPI vergessen, es sei denn der Takt soll nicht allzu hoch sein. So 2 MHz bei kurzen Verbindungen ist noch drin, darüber werden die Pullup Widerstände langsam zu nieder-ohmig wenn man ein ordentliches Signal haben will. Die Application-Note ist ja auch für I2C. Ich benutze aktuell 74LCX125 als Pegelwandler, die werden mit 3,3V versorgt und vertragen die 5V an den Eingängen, mit den getrennt ausgeführten Output-Enable kann man MISO in Abhängigkeit von CS vom Bus trennen.
Das ist richtig, die einzelnen Signale der SPI sind erstmal unidirektional. Es geht aber darum die Schaltung für beide Richtungen zu verwenden. von 5V auf 3,3V kann ich natürlich auch einen einfachen Spannungsteiler verwenden. Es geht mir jedoch mehr darum die Schaltung zu verstehen. Ist der FET wirklich zu langsam? Schneller als 8MHz kann ich mit meinem Atmega und 16MHz Takt eh nicht kommunizieren. Der Raspberry kann anscheinend bis zu 125MHz. Aber so schnell muss es nicht sein. Legen wir uns nicht unbedingt auf SPI fest. Es kann auch I2C, oneWire, UART etc. sein. Nochmal die Frage, wie kommt der 0V Pegel an die 3,3V Seite bei dieser Schaltung? https://www.mikrocontroller.net/attachment/231214/Pegelwandler_.wikipedia.PNG Wird hier die parasitäre Diode genutzt? Bekommt man hier trotzdem einen annähernd guten 0V Pegel?
Wie oben schon genannt, das steht in der App-Note dazu: http://www.nxp.com/documents/application_note/AN10441.pdf Und ja, das ist langsam, die steigenden Pegel sind von den Widerständen abhängig. Die kann man nur nicht beliebig klein machen. Die 74LCX125 kann man in beide Richtungen benutzen, weil die Eingänge die höhere Spannung vertragen.
Und es gibt die - anscheinend völlig unbekannten NC7SZxx/NC7WZxx-Mini-Logik-Bausteine von Fairchild. Die können spielend 1,8V...5,5V machen. Bei überragender Geschwindigkeit. Falls man Bedenken wegen der Norm-Schaltschwellen hat, einfach mal unter "Pegelwandler" / "level converter" suchen.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.