Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - FAQ - Zum CC1-Forum - Zum CC-Pro-Forum

Re: Probleme beim DS2482-800 <-> DS18B20 Kategorie: I²C-Bus (von Dirk - 11.06.2009 14:50)
Als Antwort auf Re: Probleme beim DS2482-800 <-> DS18B20 von Jörg Hansen - 6.06.2009 21:12

> Hallo Dirk,
>
> lt. Datenblatt des DS18B20 steht die Information nach tconv nach folgenden Zeiten
> (abhängig von der Auflösung) zur Verfügung:
>
> Table 2. Thermometer Resolution Configuration
> R1 R0 RESOLUTION(BITS) MAX CONVERSION TIME
> 0    0    9                            93.75ms     (tCONV/8)
> 0    1   10                           187.5ms     (tCONV/4)
> 1    0   11                           375ms        (tCONV/2)
> 1    1   12                           750ms        (tCONV)
>
> Dabei habe ich keinen Unterschied zwischen parasitärer und externer Stromversorgung gefunden.
>
> Der 100 Ohm Widerstand sollte sich zwischen IO-Port (direkt am DS2482)-800 und der 1 Wire Line
> befinden. (laut Datenblatt von 2004)
> Habe mir nochmal ein aktuelles Datenblatt ( von 2008) geladen, da taucht der
>  "Line Terminaton Resistor"  leider nicht mehr auf. Warum auch immer.
>
> GruÃ?
> Jörg

Hallo Jörg,

das Auslesen der 10 Sensoren funktioniert jetzt soweit, allerdings dauert das Auslesen
("Read" anschlieÃ?end "Convert") um die 2800ms
=> also fast 3 Sekunden
Soweit kein Problem, wer braucht schon jede ms alle 10 aktualisierten Temp.-Werte ;-)
Auch das zunächst komplette Auslesen aller DS18B20 (readTemp) und das anschlie�ende Konvertieren
aller DS18B20 (convertTemp) mit anschlieÃ?endem Warten von >750ms hilft hier nicht weiter.
Bereits bei einem einzigen angeschlossenen Sensor werden im Durchschnitt 151ms für das Auslesen und
anschlie�end zusätzlich 250ms für das Konvertieren benötigt.Lediglich ein Sensor ist dabei der die
Statistik zeitlich nach unten drückt. Warum der eine aus der Reihe springt, keine Ahnung.
Sonst sind alle Messungen ca. im gleichen Bereich.

Da ich allerdings dummerweise auch, in einem anderen Thread, die Auswertung von Tastern (zur Licht- bzw.
Rollladensteuerung) durchführe reagiert hier die C-Control, sprich der I2C-Bus in diesen ca. 3sek.
merklich schlechter als in der Zeit, wo sich der Thread für das Auslesen der Temp.-Sensoren gerade
im "standby-Modus" (hier über einen "sleep 10000;"-Befehl) befindet. Auch Runtersetzen der Prio für diesen
Thread auf "run=2" hilft nicht weiter.
Somit muss dann der Mensch den Licht-Taster zwei bzw. auch drei mal drücken, bis das
"Licht angeht". Bewegungsmelder als Eingänge haben dann auch ihre Probleme.
Das geht so gar nicht.

Wie lange dauert bei Dir das Auslesen der besagten 15x DS18B20-Sensoren?
Laufen bei Dir auch noch andere Geschichten in dieser Zeit auf dem I2C?
Gibt es dabei Timing-Probleme?
Könntest Du das alte Datenblatt (2004) als Link einfügen oder anderweitig zusenden?
Ich kann die Geschichte mit dem 100Ohm-Widerstand noch nicht ganz nachvollziehen.

Vielen Dank für Deine/Eure Hilfe.


    Antwort schreiben


Antworten:

Re: Probleme beim DS2482-800 <-> DS18B20 (von Dirk - 11.06.2009 19:01)
    Re: Probleme beim DS2482-800 <-> DS18B20 (von Jörg Hansen - 12.06.2009 19:51)
        Re: Probleme beim DS2482-800 <-> DS18B20 (von Dirk - 15.06.2009 16:21)