Hallo, ich betreibe mehrere ADCs und Dacs, die VDD von 2,7V bis 5,5V vertragen. Alle laufen über Raspberry Pi2 über den 5V Pin. Lediglich ein DigitalPoti ad5274 macht ärger. Dieser lässt sich über 3,3 V betreiben. Sobald ich aber 5V anlege und i2cdetect über eine Shell aufrufe, stürzt Raspberry ab. Es liegt aber nicht am Raspberry selbst. Hatte die 5V auch extern von anderen Geräten verwendet. Dennoch ist das Device nicht auffindbar. Es verträgt aber laut Datenblatt 5,5V maximal. Hat jemand eine Idee?
Michael W. schrieb: > Sobald ich aber 5V anlege und i2cdetect über eine Shell aufrufe, stürzt > Raspberry ab. Es liegt aber nicht am Raspberry selbst. Doch - der Raspberry Pi verträgt keine 5V. GPIO, I2C, SPI, ... alles 3,3V! Die sind explizit nicht 5V tolerant!
Ich habe es parallel mit einem BeagleBone Black getestet, selbe Spiel. Merkwürdigerweise funktioniert alle anderen ADCs und Dacs problemlos mit 5V von BeagleBone und über die I2C Schnittstelle, nur der AD5274 nicht. Genau das ist mir ein Rätsel. Zumindest für den ADC, der ja funktioniert benötige ich unbedingt 5 V, da meine Eingang Spannung 4 V hoch ist.
:
Bearbeitet durch User
Michael C. schrieb: > und über die I2C Schnittstelle, nur der AD5274 nicht. genau das ist das Problem: Dert besagte Chip revoltiert immer ab etwa 4,2 Volt! Weils ein NMOS-Chip ist! Der verträgt keine 5 V oder mehr! Applikation zu AD5274-Unterlagen genauer studieren, da gibts nämlich nen entsprechenden Hinweis dazu! Aber wer noch nicht lesen kann, solls sein lassen. Ist mein Tip!
Michael C. schrieb: > Zumindest für den ADC, der ja funktioniert benötige ich unbedingt 5 V, > da meine Eingang Spannung 4 V hoch ist. Dann setz doch einen Spannungsteiler davor.
Ich weiss nur, dass laut Datenblatt und Beschreibung VDD bis 5,5V beträgt. Meine zweite Frage zum Hinweis von zweiten Beitrag : Wie kann der ADC mit 5V betrieben werden, wenn I2C nur bis 3,3V toleriert? Spannungsteiler bringt mir nichts, der ADC muss 5V VDD haben und Vref wird dann ebenfalls auf VDD gesetzt, da ich Spannungen bis maximal 4V lesen möchte. Habe ich nur 3,3 V. Werden Spannungen grosser 3,3 nicht gelesen. Deshalb meine Frage, wo ich i2c Bus von BeagleBone tolerant mache? Level shifter? Was genau macht der? Wird der ADC mit 5 V betrieben während ein Level shifter zwischen Device und i2c Bus von 5 auf 3,3 drosselt?
:
Bearbeitet durch User
Michael C. schrieb: > da ich Spannungen bis maximal 4V > lesen möchte. Habe ich nur 3,3 V. Werden Spannungen grosser 3,3 nicht > gelesen. Na ja, wenn du den Spannungsteiler in die Messspannung einbaust, dann werden aus den 4V ja 3,3V - also von daher kein Problem. Michael C. schrieb: > Deshalb meine Frage, wo ich i2c Bus von BeagleBone tolerant > mache? da gibts schon Möglichkeiten. Aber ob du sie wirklich brauchst? Den AD5274 kannst du z.B. gerne mit 5V versorgen und seinen I2C-Anschluss trotzdem nur auf 3,3V betreiben (also Pullup auf 3,3V). Denn 2V reichen dem schon als Highpegel. Vielleicht geht das ja mit deinem ADC auch. Um welchen Chip handelt es sich denn?
Michael C. schrieb: > Ich weiss nur, dass laut Datenblatt und Beschreibung VDD bis 5,5V > beträgt. Ja. Das ist der eine Teil der Wahrheit. Der nächste ist, dass kein Eingang eine höhere Spannung als VDD verträgt. Wenn Dein ADC mit 3.3V betrieben wird, dürfen an den ganzen Eingängen auch nur 3.3V anliegen, es sei denn, es ist ausdrücklich anders beschrieben. > Meine zweite Frage zum Hinweis von zweiten Beitrag : Wie kann der ADC > mit 5V betrieben werden, wenn I2C nur bis 3,3V toleriert? > > Spannungsteiler bringt mir nichts, der ADC muss 5V VDD haben und Vref > wird dann ebenfalls auf VDD gesetzt, da ich Spannungen bis maximal 4V > lesen möchte. Habe ich nur 3,3 V. Werden Spannungen grosser 3,3 nicht > gelesen. Deshalb meine Frage, wo ich i2c Bus von BeagleBone tolerant > mache? Level shifter? Was genau macht der? Wird der ADC mit 5 V > betrieben während ein Level shifter zwischen Device und i2c Bus von 5 > auf 3,3 drosselt? genau. PCA9306 ist das, was Du suchst. fchk
Im Prinzip hast du recht. Wenn ein Ausgang die maximale Spannung 5 V liefert und ich meinen Ad7997 mit 3,3 V betreiben kann ich die Spannung aufteilen, wobei 3,3 dann meinen eigentlichen 5 V entsprechen. Das waere am einfachsten oder eben einen Pegel Wandler. Was aber eher Sinn macht, wenn ich den ADC direkt an 5V betreibe. Ein Spannungsteiler ist das die einfachste Variante, zumal es nicht mal sehr präzise sein muss.
Achim S. schrieb: > da gibts schon Möglichkeiten. Aber ob du sie wirklich brauchst? Den > AD5274 kannst du z.B. gerne mit 5V versorgen und seinen I2C-Anschluss > trotzdem nur auf 3,3V betreiben (also Pullup auf 3,3V). Denn 2V reichen > dem schon als Highpegel. Vielleicht geht das ja mit deinem ADC auch. Um > welchen Chip handelt es sich denn?
Michael C. schrieb: > Ein Spannungsteiler ist das die > einfachste Variante, zumal es nicht mal sehr präzise sein muss. Dann ist das tatsächlich die einfachste Lösung. Obwohl es auch beim AD7997 möglich wäre, den Chip mit 5V zu versorgen und den I2C-Anschluss trotzdem nur mit 3,3V laufen zu lassen. (Wenn auch vielleicht nicht mit der höchsten Geschwindigkeit).
Michael C. schrieb: > Dennoch wundert es mich, dass der ADC mit 5V läuft. Was meinst du mit diesem Satz? Dass der ADC generell mit 5V läuft wundert dich hoffentlich nicht, das ist eine typische Versorgung für ihn. Oder wunderst du dich, dass du ihn mit 5V versorgen kannst und er trotzdem mit 3,3V am I2C klarkommen soll? Bei 5V Versorgung werden die digitalen Eingänge ab 2,4V als High-Pegel erkannt. 2,4V erreichst du auch mit einem 3,3V Bus. Alle Eingänge funktionieren also, und die Ausgänge sind open drain und denen ist egal, ob ihr Pullup gegen 5V oder gegen 3,3V geht.
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.