Hallo
Gibt es eine Möglichkeit die Seriennummer des DS18B20 Auszulesen?
Um so den Temperatur Sensor gezielt im netzwerk abzufragen.
MFG
Matthias
DS18B20 Seriennummer
Moderator: Benj
- Benj
- Matrix Staff
- Posts: 15312
- Joined: Mon Oct 16, 2006 10:48 am
- Location: Matrix TS Ltd
- Has thanked: 4803 times
- Been thanked: 4314 times
- Contact:
Re: DS18B20 Seriennummer
Hallo Matthias,
Die Seriennummern der angeschlossenen einem Draht-Geräte sind in ein Byte-Array namens DevID gespeichert.
Zum Lesen wieder der Inhalt des Arrays kann man etwas tun, wie dies mit einem C-Code-Symbol, ein Byte-Variable namens idx und ein Byte-Variable namens Byte.
FCV_BYTE = DevID [FCV_IDX];
Wenn Sie setzen dann in einer Schleife in Flowcode und erhöhe den idx variable dann wirst du wieder eingelesen den ROM-Code. Jede ROM-Code verwendet 8 Byte und maximal 8 separate Codes können in dem Array gespeichert werden.
Hello Matthias,
The serial numbers of the connected one wire devices are stored in a byte array named DevID.
To read back the contents of the array you can do something like this using a C code icon, an byte variable named idx and a byte variable named byte.
FCV_BYTE = DevID[FCV_IDX];
If you then put this inside a loop in Flowcode and increment the idx variable then you will read back the ROM code. Each ROM code uses 8 bytes and a maximum of 8 separate codes can be stored in the array.
Die Seriennummern der angeschlossenen einem Draht-Geräte sind in ein Byte-Array namens DevID gespeichert.
Zum Lesen wieder der Inhalt des Arrays kann man etwas tun, wie dies mit einem C-Code-Symbol, ein Byte-Variable namens idx und ein Byte-Variable namens Byte.
FCV_BYTE = DevID [FCV_IDX];
Wenn Sie setzen dann in einer Schleife in Flowcode und erhöhe den idx variable dann wirst du wieder eingelesen den ROM-Code. Jede ROM-Code verwendet 8 Byte und maximal 8 separate Codes können in dem Array gespeichert werden.
Hello Matthias,
The serial numbers of the connected one wire devices are stored in a byte array named DevID.
To read back the contents of the array you can do something like this using a C code icon, an byte variable named idx and a byte variable named byte.
FCV_BYTE = DevID[FCV_IDX];
If you then put this inside a loop in Flowcode and increment the idx variable then you will read back the ROM code. Each ROM code uses 8 bytes and a maximum of 8 separate codes can be stored in the array.
Regards Ben Rowland - MatrixTSL
Flowcode Product Page - Flowcode Help Wiki - Flowcode Examples - Flowcode Blog - Flowcode Course - My YouTube Channel
Flowcode Product Page - Flowcode Help Wiki - Flowcode Examples - Flowcode Blog - Flowcode Course - My YouTube Channel
Re: DS18B20 Seriennummer
Hallo
Können sie mir ein Beispiel machen?
Hab leider keine große Ahnung von Flowcode und C, arbeite mich erst langsam ein.
Mfg
Matthias
Können sie mir ein Beispiel machen?
Hab leider keine große Ahnung von Flowcode und C, arbeite mich erst langsam ein.
Mfg
Matthias
Re: DS18B20 Seriennummer
Hallo
Habe es jetzt ausprobiert und bekomme leider nur nullen zurück.
Könnte mir jemand helfen!
MFG
Matthias
Habe es jetzt ausprobiert und bekomme leider nur nullen zurück.
Könnte mir jemand helfen!
MFG
Matthias
- Attachments
-
- DS18B20 Serial.fcf
- (10 KiB) Downloaded 325 times
- Benj
- Matrix Staff
- Posts: 15312
- Joined: Mon Oct 16, 2006 10:48 am
- Location: Matrix TS Ltd
- Has thanked: 4803 times
- Been thanked: 4314 times
- Contact:
Re: DS18B20 Seriennummer
Hallo Matthias,
Es kann einen Versuch wert eine andere I / O-Pin werden, gibt es Berichte in der Vergangenheit, dass einige der I / O nicht mit der 1-Draht-Komponente korrekt funktionieren.
Auch können Sie genau sagen, was 1-Draht-Gerät Sie verwenden. Es gibt eine Menge von Geräten mit unterschiedlicher Leistung, sondern eine sehr ähnliche Teilenummer.
Hello Matthias,
It may be worth trying a different I/O pin, there have been reports in the past that some of the I/O do not work with the 1-wire component correctly.
Also can you say exactly which 1-wire device you are using. There are a lot of devices with different outputs but a very similar part number.
Es kann einen Versuch wert eine andere I / O-Pin werden, gibt es Berichte in der Vergangenheit, dass einige der I / O nicht mit der 1-Draht-Komponente korrekt funktionieren.
Auch können Sie genau sagen, was 1-Draht-Gerät Sie verwenden. Es gibt eine Menge von Geräten mit unterschiedlicher Leistung, sondern eine sehr ähnliche Teilenummer.
Hello Matthias,
It may be worth trying a different I/O pin, there have been reports in the past that some of the I/O do not work with the 1-wire component correctly.
Also can you say exactly which 1-wire device you are using. There are a lot of devices with different outputs but a very similar part number.
Regards Ben Rowland - MatrixTSL
Flowcode Product Page - Flowcode Help Wiki - Flowcode Examples - Flowcode Blog - Flowcode Course - My YouTube Channel
Flowcode Product Page - Flowcode Help Wiki - Flowcode Examples - Flowcode Blog - Flowcode Course - My YouTube Channel
Re: DS18B20 Seriennummer
Hallo
Ich hab es an verschiedenen Port Pins ausprobiert, immer das gleiche Ergebnis (bekomme nur Nullen zurück) die Temperatur wird richtig ausgelesen.
Ich verwende DS18B20, ein DS1820 geht nicht.
Mfg
Matthias
Ich hab es an verschiedenen Port Pins ausprobiert, immer das gleiche Ergebnis (bekomme nur Nullen zurück) die Temperatur wird richtig ausgelesen.
Ich verwende DS18B20, ein DS1820 geht nicht.
Mfg
Matthias
- Benj
- Matrix Staff
- Posts: 15312
- Joined: Mon Oct 16, 2006 10:48 am
- Location: Matrix TS Ltd
- Has thanked: 4803 times
- Been thanked: 4314 times
- Contact:
Re: DS18B20 Seriennummer
Hallo Matthias,
Ok, ich glaube, ich sehe das Problem. Damit das Gerät das ROM-Code zu lesen müssen Sie rufen Sie die oo_scanbus Funktion. Ich habe die Extra-Funktion aufrufen in dem beigefügten Programm.
Lassen Sie mich wissen, wie Sie zu erhalten.
Hello Matthias,
Ok I think I see the problem. To allow the device's ROM code to be read you must call the oo_scanbus function. I have included the extra function call in the attached program.
Let me know how you get on.
Ok, ich glaube, ich sehe das Problem. Damit das Gerät das ROM-Code zu lesen müssen Sie rufen Sie die oo_scanbus Funktion. Ich habe die Extra-Funktion aufrufen in dem beigefügten Programm.
Lassen Sie mich wissen, wie Sie zu erhalten.
Hello Matthias,
Ok I think I see the problem. To allow the device's ROM code to be read you must call the oo_scanbus function. I have included the extra function call in the attached program.
Let me know how you get on.
- Attachments
-
- DS18B20 Serial.fcf
- (14 KiB) Downloaded 375 times
Regards Ben Rowland - MatrixTSL
Flowcode Product Page - Flowcode Help Wiki - Flowcode Examples - Flowcode Blog - Flowcode Course - My YouTube Channel
Flowcode Product Page - Flowcode Help Wiki - Flowcode Examples - Flowcode Blog - Flowcode Course - My YouTube Channel
Re: DS18B20 Seriennummer
Hallo
Funktioniert leider auch nicht, auch nicht an verschiedenen 1/0 Pin.
MFG
Matthias
Funktioniert leider auch nicht, auch nicht an verschiedenen 1/0 Pin.
MFG
Matthias