DS2450: Unterschied zwischen den Versionen
Meini (Diskussion | Beiträge) |
Meini (Diskussion | Beiträge) |
||
Zeile 17: | Zeile 17: | ||
Grundsätzlich gilt für alle Befehle: | Grundsätzlich gilt für alle Befehle: | ||
− | * als erstes Argument kann optional die 64 Bit ROM Id des DS2450 angegeben werden, der angesprochen werden soll (match rom). Wird die ROM Id <b>nicht</b> angeben, so werden alle im Bus befindlichen 1-wire Devices (egal welchen Typs) angesprochen (skip rom). Dies macht nur Sinn, wenn sich <b>genau</b> ein Device im 1-wire Bus befindet (skip rom führt bei mehreren Devices unweigerlich dazu, dass mehrere Devices gleichzeitig antworten werden, was zu Bit-Salat | + | * als erstes Argument kann optional die 64 Bit ROM Id des DS2450 angegeben werden, der angesprochen werden soll (match rom). Wird die ROM Id <b>nicht</b> angeben, so werden alle im Bus befindlichen 1-wire Devices (egal welchen Typs) angesprochen (skip rom). Dies macht <b>nur</b> Sinn, wenn sich <b>genau</b> ein Device im 1-wire Bus befindet (skip rom führt bei mehreren Devices unweigerlich dazu, dass mehrere Devices gleichzeitig antworten werden, was zu Bit-Salat beim bus master (d.h. Ethersex) führt, das Datenblatt spricht von "a wired-AND result"). |
* wird ein Kanal angeben, so ist dieser mit einem Buchstaben (entsprechend Datenblatt) zu bezeichnen (case-insensitiv). | * wird ein Kanal angeben, so ist dieser mit einem Buchstaben (entsprechend Datenblatt) zu bezeichnen (case-insensitiv). | ||
* wird mit einem Befehl ein Wert gesetzt, so kann mit dem gleichen Befehl der Wert gelesen werden, in dem man kein Werte-Argument angibt. | * wird mit einem Befehl ein Wert gesetzt, so kann mit dem gleichen Befehl der Wert gelesen werden, in dem man kein Werte-Argument angibt. | ||
Zeile 23: | Zeile 23: | ||
==== <code>1w ds2450 res</code> ==== | ==== <code>1w ds2450 res</code> ==== | ||
− | Hierüber wird die Auflösung der analog-digital Umwandlung gesetzt | + | Hierüber wird die Auflösung der analog-digital Umwandlung gesetzt (pro Kanal). Die Auflösung kann zw. 1 und 16 Bit eingestellt werden. Die Eingabe erfolgt als 8 Bit Hexadezimalwert, wobei eine Auflösung von 16 Bit durch den Wert 0x00 oder alternativ 0x10 erreicht wird. Außerdem ist die Kanal-Bezeichnung anzugeben. |
Default-Wert: 0x08 | Default-Wert: 0x08 | ||
Zeile 30: | Zeile 30: | ||
1w ds2450 res c 08 | 1w ds2450 res c 08 | ||
− | (setzt die | + | (setzt die Auflösung für Kanal C auf 0x08, d.h. 8 Bit) |
+ | |||
+ | ==== <code>1w ds2450 oc</code> ==== | ||
+ | |||
+ | Hierüber kann der Ausgang ein- oder ausgeschaltet werden (pro Kanal). Voraussetzung ist, dass über [[DS2450#1w_ds2450_oe]] der Kanal als Ausgang geschaltet wurde (ansonsten wird das OC-Bit ignoriert). | ||
+ | Die Eingabe erfolgt über 0 (Ausgangstransistor leitend) bzw. 1 (Ausgangstransistor nicht-leitend). Außerdem ist die Kanal-Bezeichnung anzugeben. | ||
+ | |||
+ | Default-Wert: 0 | ||
+ | |||
+ | Beispiel: | ||
+ | 1w ds2450 oc a 1 | ||
+ | |||
+ | (der Ausgangstransistor des Kanal A wird leitend) | ||
− | |||
==== <code>1w ds2450 oe</code> ==== | ==== <code>1w ds2450 oe</code> ==== | ||
+ | |||
+ | Hierüber kann der Kanal als Ein- oder Ausgang gesetzt werden (pro Kanal). Eine analog-digital Umwandlung ist <b>nur</b> möglich, wenn das OE-Bit auf 0 gesetzt ist. In diesem Fall wird das OC-Bit ignoriert. Ist das OE-Bit auf 1 gesetzt, kann der Ausgang über [[DS2450#1w_ds2450_oc]] ein- bzw. ausgeschaltet werden. | ||
+ | |||
+ | Default-Wert: 0 | ||
+ | |||
+ | Beispiel: | ||
+ | 1w ds2450 oe d 1 | ||
+ | |||
+ | (Kanal A wird als Ausgang gesetzt) | ||
+ | |||
==== <code>1w ds2450 range</code> ==== | ==== <code>1w ds2450 range</code> ==== | ||
==== <code>1w ds2450 por</code> ==== | ==== <code>1w ds2450 por</code> ==== | ||
==== <code>1w ds2450 convert</code> ==== | ==== <code>1w ds2450 convert</code> ==== | ||
==== <code>1w ds2450 get</code> ==== | ==== <code>1w ds2450 get</code> ==== |
Version vom 31. Dezember 2009, 13:23 Uhr
Inhaltsverzeichnis
Dallas 1-wire DS2450 4 Kanal ADC
Der DS2450 ist ein 4 Kanal ADC mit einer maximalen Auflösung von 16 Bit (vgl. Datenblatt). Die analog-digital Umwandlung erfolgt durch einen internen four-to-one multiplexer. Kanäle, die nicht als Eingänge genutzt werden, können als Ausgänge (open drain) geschaltet werden (max. 4mA und 6V).
ECMD Interface
Über ECMD sind folgende Befehle für den DS2450 bekannt:
1w ds2450 res
1w ds2450 oc
1w ds2450 oe
1w ds2450 range
1w ds2450 por
1w ds2450 convert
1w ds2450 get
Grundsätzliches
Grundsätzlich gilt für alle Befehle:
- als erstes Argument kann optional die 64 Bit ROM Id des DS2450 angegeben werden, der angesprochen werden soll (match rom). Wird die ROM Id nicht angeben, so werden alle im Bus befindlichen 1-wire Devices (egal welchen Typs) angesprochen (skip rom). Dies macht nur Sinn, wenn sich genau ein Device im 1-wire Bus befindet (skip rom führt bei mehreren Devices unweigerlich dazu, dass mehrere Devices gleichzeitig antworten werden, was zu Bit-Salat beim bus master (d.h. Ethersex) führt, das Datenblatt spricht von "a wired-AND result").
- wird ein Kanal angeben, so ist dieser mit einem Buchstaben (entsprechend Datenblatt) zu bezeichnen (case-insensitiv).
- wird mit einem Befehl ein Wert gesetzt, so kann mit dem gleichen Befehl der Wert gelesen werden, in dem man kein Werte-Argument angibt.
1w ds2450 res
Hierüber wird die Auflösung der analog-digital Umwandlung gesetzt (pro Kanal). Die Auflösung kann zw. 1 und 16 Bit eingestellt werden. Die Eingabe erfolgt als 8 Bit Hexadezimalwert, wobei eine Auflösung von 16 Bit durch den Wert 0x00 oder alternativ 0x10 erreicht wird. Außerdem ist die Kanal-Bezeichnung anzugeben.
Default-Wert: 0x08
Beispiel:
1w ds2450 res c 08
(setzt die Auflösung für Kanal C auf 0x08, d.h. 8 Bit)
1w ds2450 oc
Hierüber kann der Ausgang ein- oder ausgeschaltet werden (pro Kanal). Voraussetzung ist, dass über DS2450#1w_ds2450_oe der Kanal als Ausgang geschaltet wurde (ansonsten wird das OC-Bit ignoriert). Die Eingabe erfolgt über 0 (Ausgangstransistor leitend) bzw. 1 (Ausgangstransistor nicht-leitend). Außerdem ist die Kanal-Bezeichnung anzugeben.
Default-Wert: 0
Beispiel:
1w ds2450 oc a 1
(der Ausgangstransistor des Kanal A wird leitend)
1w ds2450 oe
Hierüber kann der Kanal als Ein- oder Ausgang gesetzt werden (pro Kanal). Eine analog-digital Umwandlung ist nur möglich, wenn das OE-Bit auf 0 gesetzt ist. In diesem Fall wird das OC-Bit ignoriert. Ist das OE-Bit auf 1 gesetzt, kann der Ausgang über DS2450#1w_ds2450_oc ein- bzw. ausgeschaltet werden.
Default-Wert: 0
Beispiel:
1w ds2450 oe d 1
(Kanal A wird als Ausgang gesetzt)