Re: DS1631: I2C-Bus bei CC2-Station defekt? Kategorie: I²C-Bus (von Georg - 28.03.2006 22:05) | ||
Als Antwort auf Re: DS1631: I2C-Bus bei CC2-Station defekt? von Willi aus Oelde - 27.03.2006 22:21 | ||
| ||
> > Hallo zusammen, > > > > ich möchte für eine Gewächshaussteuerung 5 DS1631-Temperatursensoren einsetzen, aber keiner der > > Sensoren wird erkannt. Da alle Sensoren (auf Platine, adressiert) bei André bezogen wurden, schlie�e ich > > einen Lötfehler (mü�te ja bei allen 5 Sensoren sein) aus. Beim Auslsesen der Temperatur bekomme ich nur die > > "Standardanzeige" -0,07 heraus, egal, ob Sensoren angeschlossen sind, oder nicht. Die Möglichkeiten, die ich > > im Forum dazu gefunden habe (Spannung: 5V aus der Station, ok; Lötfehler bei allen 5 Sensoren: > > unwahrscheinlich), habe ich soweit durch. Zum Testen habe ich die Beispielprogramme aus ähnlichen > > Forumsbeiträgen verwendet; die Software sollte auf dem Stand vom November 2005 (Inbetriebnahme der > > Station) sein. Andere Programme (AD-Wandlung,...) laufen ohne Probleme. Entweder mache ich einen > > grundsätzlichen Fehler, oder der I2C-Bus meiner Station ist kaputt. > > Gibt es eine Möglichkeit, den I2C-Bus anders zu testen? Gibt es Besonderheiten bei der Station? > > Was habe ich übersehen? > > > > Danke und Gru�, > > Georg > > Hallo Georg, > > da ich dein Programm nicht kenne, wei� ich nicht, wo der Fehler liegt. > Du mu�t erst den Sensor initialisieren und dann ein Start Kommando schicken. > (Einfachwandlung oder kontinuierliches Wandeln starten.) > > Je nach Auflösung benötigst du bis zu 1000 ms Wartzeit, bevor du die Temperatur > auslesen darfst. Ich denke du wei�t, wie du die Adressen $90 bis $9E einstellen mu�t. > > Ich habe jetzt nicht nachgeschaut, ob der I2C Bus der Station interne Pull-Ups hat!?! > Lass mal etwas Code sehen........ > > Mfg, > Willi aus Oelde > > > Hallo Willi, danke für die schnelle Antwort. Ich habe sicherheitshalber noch einmal alle Varianten mit allen Adressen von 1 bis 5 durchprobiert. Zur Zeit stecken alle 5 Sensoren auf einem Steckbrett und sind jeweils über 330 Ohm mit SDA und SDL verbunden. Doch nun zu den Programmen: Variante 1: thread main {int x; lcdext.init(); if i2c.start(0b10010001) lcdext.print("Sensor gefunden"); else { lcdext.print("Sensor reagiert"); lcdext.line(2); lcdext.print("nicht !!"); } quit 1; } => keine Reaktion von 0b10010001 bis 0b10010101 Variante 2: thread main { stports.init(); lcdext.init(); ds1631.init(8); loop { lcdext.line(1); lcdext.zahl4n2(ds1631.readi2(5)); lcdext.put(223); lcdext.put('C'); sleep 1000; } } => Jeweils nur "-0,07°C" für readi2(1) bis readi2(5) Variante 3: thread getTemp { run 100; int t1; float temp; string wert; sleep(1000); //lesen der Adresse 0 t1=0; t1 = ds1631.readi2(5); temp = t1; temp = temp/100.; //Integer in String umwandeln str.putfloatf(wert, temp, 2); lcdext.goto(0,0); lcdext.print(wert); //zurücksetzten sleep(300); lcdext.clear(); wert = ""; } thread main { //initialisierung ds1631.init(5); lcdext.init(); run getTemp; halt; } => Jeweils nur "-0.07" für readi2(1) bis readi2(5) Ich habe auch versucht, die Sensoren nicht nur gemeinsam ("8") sondern individuell zu initialisieren, aber das hat ebenfalls nichts geändert. Ist eventuell der I2C-Bus nicht richtig initialisiert? Danke weiterhin. Gru� Georg | ||
Antwort schreiben Antworten: Re: DS1631: I2C-Bus bei CC2-Station defekt? (von Willi aus Oelde - 30.03.2006 19:44) Re: DS1631: I2C-Bus bei CC2-Station defekt? (von Georg - 30.03.2006 23:27) Re: DS1631: I2C-Bus bei CC2-Station defekt? (von Willi aus Oelde - 31.03.2006 20:42) Re: DS1631: I2C-Bus bei CC2-Station defekt? (von Georg - 2.04.2006 15:37) Re: DS1631: I2C-Bus bei CC2-Station defekt? (von Willi aus Oelde - 3.04.2006 22:18) Re: DS1631: I2C-Bus bei CC2-Station defekt? (von Georg - 6.04.2006 22:35) Re: DS1631: I2C-Bus bei CC2-Station defekt? (von Georg - 7.06.2006 12:57) |