Mein Problem ist das wenn ich die Temperatursensoren (ds18b20) vertausche das den bei T1 die temp. von sensor 2 und bei T2 die von sensor 1.Und wenn ich nur einen drin lasse denn zeigt er bei beiden die temperatur vom dringelassenen.
Ich möchte aber das ich die Sensoren beliebig vertauschen kann und sie sich jeweils anpassen(T1 immer sensor1, T2 immer sensor2).Und wenn ich einen rausziehe das denn dort 0.00 steht.
Dafür muss ich denk ich mal den Sensoren eine adresse zuteilen, doch wie mache ich das?
Jeder DS18b20 hat eine eindeutige 64-bit Seriennummer. Dadurch kannst Du jeden einzelnden Sensor am Bus abfragen.
genaueres kann ich Dir im Moment nicht sagen.
Hallo Bernd,
ich glaube das stimmt nicht ganz, ich hab andere Erfahrungen gemacht.
Wenn ein Sensor defekt ist und du diesen wechselst, dann ist Sensor1 auf einmal nicht mehr Sensor1,
sondern die werden am OneWire Bus anders geordnet.
So ist jedenfalls meine Erfahrung.
Deshalb hab ich es anders gemacht, nämlich die Adressen fest zugeordnet:
das habe ich doch geschrieben, aber man muss ja erst die Adressen einmalig ermitteln, bevor man sie im Programm einbauen kann. Und das sollte meine 1. Routine machen. Oder hast du von deinem Lieferanten eine Liste der Adressen bekommen?
Richtig ist natürlich die Funktion getTempC und nicht getTempF
Vielen Dank Bernd und maverick1509,
aber was ist denn jetzt richtig und wo muss ich das einfügen?Vor den setup teil oder im setup teil oder im loop teil?
dann kannst du später im Programm mit
Temperatur[0] = sensors.getTempC(Sensor0);
Temperatur[1] = sensors.getTempC(Sensor1);
die beiden Temperaturen ermitteln und ausgeben.