DerLehmi:
Wieso machst Du es derart kompliziert? Der DS18B20 hat den Vorteil, über einen Bus (OneWire) zu laufen... also kannst Du alle Sensoren an einen Port anschließen.
Was Dein Problem angeht: jeder DS18B20 hat eine eigene Adresse. Du kannst also von jedem Deiner Sensoren die Adresse anzeigen lassen, die Adresse beim Sensor vermerken und im Programm dann die Anzeigen nach der Adresse des Sensors bestimmen.
Um zu sagen, wie das genau geht, müsste man wissen, was Du für eine Lib benutzt
Ich glaube ich hab meine Frage nicht ganz eindeutig Formuliert.
Die Idee war, alle Sensoren an einen Bus anzuschließen, aber es ist nicht immer klar, wie viele und welche Sensoren verwendet werden. (Beispiel: Ich kaufe mir 10 Sensoren und brauche heute vllt 2 und morgen aber 4; welche von den 10 das sind weiß ich davor eigentlich nicht, daher sind die Sensoradressen auch jedes mal anders)
guntherb:
Wenn immer der Sensor an Buchse1 an Anzeige1 dargestellt werden soll, ist das ja kein Problem.Ich vermute, dass du einen bestimmten Sensor an Anzeige1 darstellen willst, egal wo er eingesteckt ist.
Ideen:
- Eine Anleitung zum Einstecken (Zeichnung, Beschriftung der Buchsen)
- kann man am Verhalten die Sensoren erkennen? z.B. beim Einschalten erwärmen sie sich in einer bestimmten Reihenfolge; man kann sie durch einschalten der Heizkreise 1-4 identifizieren etc.
- Übers Menue zuordenbar: "Jetzt Sensor X einstecken"
- Sensor IDs vorher auslesen und fest im Code zuordnen
- Wie meinst du das? Aber das würde ja das Problem mit der Stromunterbrechung auch nicht wirklich lösen.
- Das ganze Gerät soll zum Bierbrauen oder auch zur Gärtemperaturüberwachung genutzt werden, deswegen ist das leider nicht immer eindeutig.

- Wäre vllt eine Idee aber dann ist wieder das Problem mit der Stromunterbrechung.
- Will ich eigentlich nicht, da das ganze doch recht unflexibel wäre.
Spricht außer dem höheren Aufwand den etwas gegen die Transistoren zum ein- und ausschalten der Sensoren? Das würde ja im Endeffekt genau das machen was guntherb vorgeschlagen hat händisch zu machen.