mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik mehrere DS81S20 - 1wire-Bus


Autor: Ronny Schulz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich möchte mehrere DS18S20 verwenden und stehe jetzt natürlich vor der
Entscheidung, wie ich diese anschließe. So wie ich das gesehen habe,
ist es ja eigentlich fast unmöglich, diese Dinger vernünftig zu
addressieren. Das heißt ich kann die Sensoren nie positionell richtig
zuordnen. Was natürlich für eine vernünftige Temperaturüberwachung
völlig sinnlos ist. Ich kann mir zwar später die Positionen anhand der
Seriennummer merken, aber von vornherein bei einem neuen Sensor ist die
Positionserkennung nicht möglich.

Also macht es wohl wirklich Sinn, immer nur einen Sensor an einem
Port-Pin zu haben.

Wie seht ihr das? Bzw. wie habt ihr das gelöst?

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
So schlimm ist das nicht.

Man darf eben immer nur einen neuen Sensor anschließen.
Und die Software erkennt dann, daß ein neuer Sensor angeschlossen wurde
und fragt dann, welcher Meßstelle er zugeordnet werden soll. Dann
schließt man den nächsten an usw.

Die Zuordnung der Meßstelle zum Sensor speichert man dann einfach im
EEPROM des Sensors ab.


Peter

Autor: Ronny Schulz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Aber so einfach ist das auch nicht. Spätestens wenn ich alle Sensoren
abgehangen habe und die wieder ranhänge, weiß ich wieder nicht, welcher
welcher ist. Vor allem ist das dann ja noch schlimmer, da die ja schon
zugeordnet sind. Gibte s da nicht ein vernünftige Lösung. Ich hab
esozusagen 4 Anschlüsse auf meine Leiterplatte und jenachdem wo der
Sensor sitzt, wird auch dieser die richtige Zuordnung finden?

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich sehe jetzt absolut keinen Sinn darin, wenn Du sie einmal an den
entsprechenden Meßstellen plaziert, angeschlossen und zugeordnet hast,
dann wieder alles durcheinander zu bringen.

Aber wenns Dir denn Spaß macht, baust Du eben in die Software eine
Funktion ein um die Zuordnung wieder zu löschen.


Peter

Autor: Tobi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
du nimmst einfach einen edding und schreibst jedem eine dicke nummer
aufs gehäuse! problem gelöst, kostenpunkt 1,59€ :)
programmeirtechnischer aufwand = 0

warum einfach wenn es auch kompliziert geht :)

Autor: Benny K. (do4bmw)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hy

hat einer von euch ein programm beispiel in BASCOM
wie ich mehrere DS18s20 ansprechen kann ?? ich mache das im moment so

ist ein teil eines programm, nur würde ich nun gerne noch zwei weitere
hinzufügen.

wie mache ich das am besten ?! habe da kein plan.

gruss Benny

---



Sub Messungen
Startmessung:
  1wreset                                                   'reset the
device
  1wwrite &HCC                                              'read ROM
command
  1wwrite &H44
  Waitms 100                                                'read ROM
command
  1wreset                                                   'reset the
device
  1wwrite &HCC                                              'read ROM
command
  1wwrite &HBE                                              'read ROM
command
  For I = 1 To 2
    Ar(i) = 1wread()                                        'place
into array
  Next
  Temperatur = Ar(1)
  If Ar(2) > 0 Then Temperatur = 0 Else Shift Temperatur , Right

Getrc5(address , Command)
 If Flag = 1 Then
     ' Lcd "  "
   Flag = 0
 End If
 If Address <> 255 Then
   Reset Command.7
   'Lcd Command ; "   "
   Lastcommand = Command
   Flag = 1
 End If

If Flag_c = 0 Then
   Flag_c = 1
   Wait 1
   Cls
  Goto Startmessung
End If
End Sub Messungen

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.