Um gezielt die Temperaturwerte eines bestimmten am Arduino angeschlossenen ds18s20 Temperatursensors auslesen zu können, benötigt man dessen Geräte-Adresse.
Wie man diese eindeutige Adresse ermittelt zeige ich in diesem Beitrag.
ds18s20

 

 

 

Download Sketch

 

 

 

#include

OneWire ow(2);

void setup(void)
{
Serial.begin(9600);
lookUpSensors();
}

void lookUpSensors()
{
byte address[8];
int i=0;
byte ok = 0, tmp = 0;

Serial.println(“–Suche gestartet–“);
while (ow.search(address))
{
tmp = 0;
//0x10 = DS18S20
if (address[0] == 0x10)
{
Serial.print(“Device is a DS18S20 : “);
tmp = 1;
}
else
{
//0x28 = DS18B20
if (address[0] == 0x28)
{
Serial.print(“Device is a DS18B20 : “);
tmp = 1;
}
}
//display the address, if tmp is ok
if (tmp == 1)
{
if (OneWire::crc8(address, 7) != address[7])
{
Serial.println(“but it doesn’t have a valid CRC!”);
}
else
{
//all is ok, display it
for (i=0;i<8;i++)
{
if (address[i] < 9)
{
Serial.print(“0”);
}
Serial.print(“0x”);
Serial.print(address[i],HEX);
if (i<7)
{
Serial.print(“, “);
}
}
Serial.println(“”);
ok = 1;
}
}//end if tmp
}//end while
if (ok == 0)
{
Serial.println(“Keine Sensoren gefunden”);
}
Serial.println(“–Suche beendet–“);
}

void loop(void)
{
//do nothing 🙂
}

Hat ihnen dieser Artikel gefallen?
Was passiert mit den Spenden? - Mit den Spenden bezahle ich das Hosting, kaufe neue Hardware um diese testen und hier veröffentlichen zu können.
Zusätzlich werden Affiliate Links von Amazon verwendet um das Hosting bezahlen zu können.

Kommentieren Sie den Artikel

Bitte geben Sie Ihren Kommentar ein!
Bitte geben Sie hier Ihren Namen ein

Ich stimme der Datenschutzerklärung zu

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.