Hallo, ich beschäftige mich gerade ein bischen mit 1wire. Das Protokoll finde ich interessant aber leider sind noch nicht alle Fragen geklärt. Als Einstig habe ich mir die AVR Appnote und das Datenblatt von MAXIM zum DS18S20 durchgelesen. Ich habe verstanden wie das Protokoll aufgebaut ist, also das das Timing sehr wichtig ist und mit Hilfe der Routinen von Peter Dannegger auch den ersten Sensor ausgelesen. Aus Spaß habe ich einen 2. Sensor einfach mit an den Bus geklemmt und siehe da der wird auch erkannt und ausgelesen. Es funktioniert keine Frage, sicher die Stelle wo einige schon zufrieden sind, doch ich will auch verstehen warum. ;-) Nun kommt der Punkt der mir nicht klar ist. Wie weiß der µC das er 2 Sensoren auswerten muß/kann? Das leuchtet mir echt nicht ein. :-( Kann mir das einer erklären? Gruß AVRli...
Die Sensoren werden anhand der eindeutigen ID unterschieden und adressiert. Und es gibt ein Verfahren, mit dem man nacheinander die IDs der am Bus hängenden 1-Wire-Devices ermitteln kann
Das ist gar nicht so schwer. Suchmaschine z.B. guugel http://www.google.de/search?hl=de&q=wie+funktioniert+1wire&btnG=Google-Suche&meta=
Danke für die Antworten. Also was mich wohl genauer interessiert ist der Ablauf beim "SearchRom" Komando. Mit dem kann man wohl die Devices auf dem BUS abfragen. Woher wissen die am BUS hängenden Fühler nur wann sie dran sind, das sie nicht alle auf einmal los plappern? Gruß AVRli...
Ein Bit nach dem anderen wird von den Devices die ID auf den Bus gelegt. Wenn einer oder mehrere mit 0 dabei sind, setzen die sich durch und die anderen scheiden aus. Wenn alle Bits durch sind bleibt folglich maximal einer übrig. Und in den nächsten Runden stellt der sich taub.
Vielen Dank! ping Nun kann ich mir einen Reim darauf machen, wenn alle dann die Klappe halten kommt folglich der Wert 0 und damit weiß man das man durch ist. Ok da bin ich echt beeindruckt welche Möglichkeiten man mit so wenig Aufwand hat. Gruß AVRli...
#define LAST_DEVICE 0x00 // last device found ich dachte das wäre der Zustand :-(
Missverständnis. Das ist der Return-Code von Peters Funktion. So interpretiert hast du recht.
@ARVli In der Appnote 162 von Maxim ist das Protokoll und vor allem auch das Identifizieren der Sensoren sehr gut beschrieben. http://pdfserv.maxim-ic.com/en/an/AN162.pdf
Danke für Eure Ausführungen, die Appnote 162 ist echt gut gemacht! Die habe ich vorher nicht gefunden. Gruß AVRli...
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.