Hallo, ich habe einen ADS1115 an einen Arduino angeschlossen. Doch immer wenn ich das SCL-Kabel in den Arduino stecke friert dieser komplett ein, und stoppt seinen Arbeitsauftrag/ Rechenprozess. Ich habe ein Scanner auf meinen Arduino auf meinen Arduino hochgeladen, dieser zeigt im Serielen Monitor nur "Scanning..." an, und tut ebenfalls nichts. Der Schaltungsaufbau ist oben im Bild nachzuvollziehen. Das Scanner Programm lautet folgendermaßen: #include <Wire.h> void setup(){ Wire.begin(); Serial.begin(9600); while (!Serial); // Leonardo: wait for serial monitor Serial.println("\nI2C Scanner"); } void loop(){ byte error, address; int nDevices; Serial.println("Scanning..."); nDevices = 0; for(address = 1; address < 127; address++ ) { // The i2c_scanner uses the return value of // the Write.endTransmisstion to see if // a device did acknowledge to the address. Wire.beginTransmission(address); error = Wire.endTransmission(); if (error == 0){ Serial.print("I2C device found at address 0x"); if (address<16) Serial.print("0"); Serial.print(address,HEX); Serial.println(" !"); nDevices++; } else if (error==4) { Serial.print("Unknown error at address 0x"); if (address<16) Serial.print("0"); Serial.println(address,HEX); } } if (nDevices == 0) Serial.println("No I2C devices found\n"); else Serial.println("done\n"); delay(5000); // wait 5 seconds for next scan }
Wenn ich Augenkrebs bekomme um deinen Schaltplan zu erkennen dann lass ich es lieber. Muss unerhört schwierig sein ein vernünftiges, leicht lesbares Bild hier hochzuladen.
Ich kann nix für die Qulität, deshalb hier der Link: http://henrysbench.capnfatz.com/henrys-bench/arduino-voltage-measurements/arduino-ads1115-module-getting-started-tutorial/
Arduinoquäler schrieb: > Wenn ich Augenkrebs bekomme um deinen Schaltplan zu > erkennen dann lass ich es lieber. Ich habe Erbarmen mit Dir. > > Muss unerhört schwierig sein ein vernünftiges, leicht > lesbares Bild hier hochzuladen. Ist es. Aber ich habe keine Mühen gescheut, um Deine Augen zu schonen. Nun aber frisch an's Werk! Ausreden gibt es ja nun nicht mehr.
Ich wette die Kiste hängt im clock-strechting fest. Miss mal den Pegel auf scl
Ich will auch mal. ;) --- Schick doch mal einen General Call auf den weg (alles Nullen), dann sollte er mit dem 9ten Bit ein Ack senden. Pullup Widerstände drann? Welche Bibliothek? "Wire.h" sehe ich selber. Was macht die auf dem Bus? Wofür scannst Du den kompletten Adressbereich? Die I2C Adresse ist doch fest eingestellt? Wackel 8mal mit SCL und lass SDA auf LOW. Bei neunten Wackeln liest Du SDA ein, muss low werden. Datenblatt schon gelesen? Ich habe es auch eben nur kurz überflogen... Ich tippe. SCL liegt auf Masse und nicht ADDR.
Max D. schrieb: > Ich wette die Kiste hängt im clock-strechting fest. > Miss mal den Pegel auf scl Der Wert auf SCL nähert sich 1,6 Volt an.
Stromtuner schrieb: > Oder ein Lötklecks zwischen GND und SCL Hab ich sogar mit einer Lupe nach geschaut, da ist kein Lötzinn.
t800w schrieb: > Ich kann nix für die Qulität, deshalb hier der Link: > > http://henrysbench.capnfatz.com/henrys-bench/arduino-voltage-measurements/arduino-ads1115-module-getting-started-tutorial/ Wenn du genau die Schaltung dieser Webseite verwendest kannst du ja auch das Beispielprogramm von dort nehmen um zu testen ob die Schaltung in Ordnung ist. Dann weisst du zumindest ob die Hardware ein Problem hat oder ob es an der Software liegt.
Stromtuner schrieb: > Schick doch mal einen General Call auf den weg (alles Nullen), dann > sollte er mit dem 9ten Bit ein Ack senden. Ich bin relativ neu auf dem Gebiet, wie kann ich das senden? > Pullup Widerstände drann? Die sind anscheinend in dem Baustein integriert > Welche Bibliothek? "Wire.h" sehe ich selber. Was macht die auf dem Bus? Soll ich die rausschmeisen? > Wofür scannst Du den kompletten Adressbereich? Die I2C Adresse ist doch > fest eingestellt? Ja, ist er. Habe ich mich auch schon gefragt, doch ein Freund hat mir empfohlen genau das Programm zu benutzen > Wackel 8mal mit SCL und lass SDA auf LOW. Bei neunten Wackeln liest Du > SDA ein, muss low werden. Soll ich SDA Schaltungstechnisch auf LOW setzen, also erden, oder soll ich das via das Programm machen. Setze ich SDA auf GND, so zeigt das Messgerät beim neunten mal 5V.(Ich glaube hier liegt das Problem) > Ich tippe. SCL liegt auf Masse und nicht ADDR. Schaltungsmäßig?
Heiko G. schrieb: > Wenn du genau die Schaltung dieser Webseite verwendest kannst du ja auch > das Beispielprogramm von dort nehmen um zu testen ob die Schaltung in > Ordnung ist. Dann weisst du zumindest ob die Hardware ein Problem hat > oder ob es an der Software liegt. Es liegt anscheinend an der Hardware, da das Programm auch einfriert, doch ich habe die sehr einfache Schaltung 1:1 abgebaut. Es ist langsam echt zum verzweifeln.
Und sobald ich das SCL-Kabel rausziehe läuft der Sketch ganz normal weiter, als wäre nichts gewesen.
Ein Arduino (avr) erkennt bei 5v Betrieb ab etwa 2.5V ein high. 1.6 sind zu wenig
t800w schrieb: > Der Wert auf SCL nähert sich 1,6 Volt an. Wie gemessen? Mit Oszi oder mit Multimeter? Falls mit dem Multimeter: in welchen Messbereich? AC oder DC oder AC+DC? Falls DC: das wäre ein ziemlich "kranker" Pegel. Welchen Wert misst du in der Situation am VCC und am GND des ADS-Boards? (Messung bitte jeweils zum GND des Arduino-Boards durchführen).
Stromtuner schrieb: > Wofür scannst Du den kompletten Adressbereich? > Die I2C Adresse ist doch fest eingestellt? .. und hoffentlich auch die, von der man glaubt, sie sei die richtige. Es ist nicht die dümmste Idee, I2C zu scannen, wenn irgendwas nicht klappt. t800w schrieb: > ich habe die sehr einfache Schaltung 1:1 abgebaut. Hättest Du sie auf- oder nachgebaut, würde sie evtl. funktionieren. Probiere mal den Anhang aus. So Du hast, klemme irgend ein anderes I2C-Teil an, RTC-Baustein oder Display.
Manfred schrieb: > Probiere mal den Anhang aus. So Du hast, klemme irgend ein anderes > I2C-Teil an, RTC-Baustein oder Display. Ok, ich probiers morgen mal
Hallo, eins kommt mir komisch vor: Wo sind die Pull-Up-Widerstände auf dem Bus? Ich mein das ist doch I2C ... Vergleiche: https://www.elprocus.com/wp-content/uploads/2015/07/Interfacing-I2C-EEPROM.jpg
Die Pullups sollten bereits auf dem Modul sein... du hast doch genau das abgebildete Modul oder? Oder wenigstens ein anderes, wo auch 8 kleine SMD Bausteine drauf sind (oder 4 kleine und 1 etwas größerer). Im Zweifelsfall, einfach mal ein Foto von deinem Aufbau hochladen.
Vielleicht sind die internen Pull Ups noch zusätzlich aktiviert?
Trick schrieb: > Vielleicht sind die internen Pull Ups noch zusätzlich aktiviert? Die 30..50kΩ dürfen den I2C-Betrieb nicht beeinflussen. Wozu also die Frage?
.... es wird Zeit mal einen Blick auf den Aufbau (nicht den Schaltplan) zu werfen .....
Wolfgang schrieb: > Trick schrieb: >> Vielleicht sind die internen Pull Ups noch zusätzlich aktiviert? > > Die 30..50kΩ dürfen den I2C-Betrieb nicht beeinflussen. Wozu also die > Frage? Deswegen http://www.bristolwatch.com/rpi/ads1115.html An issue to be aware of is the pull up resistors built into the boards as shown in Fig. 2. The Raspberry Pi I2C connections is 3.3-volts and has its own pull up resistors. This may create problems - either remove/cut the pull ups or in my case I used a level translator to operate the ADS1115 at 5-volts and isolate the pull up problem.
Mathias schrieb: > Die Pullups sollten bereits auf dem Modul sein... du hast doch > genau das > abgebildete Modul oder? Oder wenigstens ein anderes, wo auch 8 kleine > SMD Bausteine drauf sind (oder 4 kleine und 1 etwas größerer). Im > Zweifelsfall, einfach mal ein Foto von deinem Aufbau hochladen. Ja, genau das.
Trick schrieb: > Deswegen > http://www.bristolwatch.com/rpi/ads1115.html > An issue to be aware of is the pull up resistors built into the boards > as shown in Fig. 2. The Raspberry Pi I2C connections is 3.3-volts and > has its own pull up resistors. This may create problems - either > remove/cut the pull ups or in my case I used a level translator to > operate the ADS1115 at 5-volts and isolate the pull up problem. Besitzt der Arduino wirklich Schaltungsinterne Pull-Up's?
Ich habe das Problem gefunden!!! Es war ein extrem kleines Kupferdrähtchen zwischen SCL und GND --> Stormtuner hat somit recht Doch ich habe schon die Pull-Ups auf dem ADS1115-Bord weggekratzt, soll ich die wieder dran löten, oder kann man das so lassen, weil die Messergebnisse sind perfekt. Danke an alle!!!
Die Pullups sind ja nun nicht zu übersehen. Danke, gutes Foto. Läuft der ATMEL-UNO auf 5V oder auf 3.3V? Steck doch mal den ADS auch auf 3.3V. Wenn der arduion 5V von den Pullups (aber daran liegt es sicher auch nicht) bekommt, selbst aber nur mit 3.3V läuft... StromTuner
mmmmmmmhhh, hehe :) Schön, wens läuft ( hab mal "F5" gedrückt ) StromTuner
tu sie halt wieder drauf läuft nun alles auf 5V oder auf 3.3V? StromTuner
Stromtuner schrieb: > läuft nun alles auf 5V oder auf 3.3V? Auf dem Bild sieht man doch, dass das Modul an 3.3V abgeschlossen ist. t800w schrieb: > Ist das jetzt extrem schlimm, wenn die Pull-Ups auf dem ADS1115 fehlen? Wenn sie da fehlen, müssen sie ja irgendwo anders sein, sonst würde es nicht funktionieren, d.h. interne pull-ups des Arduino (oder hat er auch externe)? Aber wenn die zu hoch sind, dann kannst du entsprechend die i2c-Baudrate nicht zu hoch wählen, sonst ist es eigentlich nicht schlimm.
Ziegenpeter schrieb: > Stromtuner schrieb: >> läuft nun alles auf 5V oder auf 3.3V? > > Auf dem Bild sieht man doch, dass das Modul an 3.3V abgeschlossen ist. Schon ja, aber aus den Pins des Arduinos kommen trotzdem 5V! Die 3.3V "Buchse" da ist nur einfach so da, damit man 3.3V zapfen kann. Die Portpins bleiben bei 5V :) Die korrekte Antwort ist also "alles" läuft mit 3.3V Versorgung und 5V Signalen
Ziegenpeter schrieb: > Auf dem Bild sieht man doch, dass das Modul an 3.3V abgeschlossen ist. Abgeschlossen ist da garnichts. Der Baustein darf 5Volt, einen 3V3-Regler sehe ich auf dem Board nicht - wozu also diese Leitung? Aber ist doch nett, einen Adresspin mit einem Pegel außerhalb der Spezifikation zu belegen.
Manfred schrieb: > Der Baustein darf 5Volt, einen 3V3-Regler sehe ich auf dem Board nicht - > wozu also diese Leitung? Aber ist doch nett, einen Adresspin mit einem > Pegel außerhalb der Spezifikation zu belegen. A0 ist einer der (analogen) Eingänge des ADC. In der "Originalschaltung", deren Bildchen der TO kopiert, wird klar, dass die 3,3V als "Testsignal" für den ADC verwendet werden. In diesem Thread wird dem TO leider nicht klar, welchen Hintergrund die diversen Nachfragen zu 5V/3,3V haben und dass er das einfach mal klarstellen könnte.
Achim S. schrieb: > A0 ist einer der (analogen) Eingänge des ADC. Danke, das hätte ich selber sehen dürfen :-(
Trick schrieb: > Deswegen > http://www.bristolwatch.com/rpi/ads1115.html > An issue to be aware of is the pull up resistors built into the boards > as shown in Fig. 2. The Raspberry Pi I2C connections is 3.3-volts and > has its own pull up resistors. Der RaspberryPi läuft mit 3.3V. Womit der hier verwendete Arduino läuft, lässt sich aus den bunten Bildchen leider nicht erschließen. Ein gültiger Schaltplan mit Angabe zu den Pull-Ups und/oder ein kurze Messung mit ein Multimeter könnte da ungemein klärend wirken.
Hat schon mal jemand die Software angeschaut? Die Einrückungen und die Klammern passen nicht zusammen. Die Kiste macht möglicherweise datenabhängig irgendwas. Auf jeden Fall nicht das, was man auf den ersten Blick sieht.
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.