DS2450: Unterschied zwischen den Versionen
Meini (Diskussion | Beiträge) |
Meini (Diskussion | Beiträge) |
||
Zeile 35: | Zeile 35: | ||
Hierüber kann der Ausgang ein- oder ausgeschaltet werden (pro Kanal). Voraussetzung ist, dass über [[DS2450#1w_ds2450_oe | 1w ds2450 oe]] der Kanal als Ausgang geschaltet wurde (ansonsten wird das OC-Bit ignoriert). | Hierüber kann der Ausgang ein- oder ausgeschaltet werden (pro Kanal). Voraussetzung ist, dass über [[DS2450#1w_ds2450_oe | 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. | + | Die Eingabe erfolgt als bool über 0 (Ausgangstransistor leitend) bzw. 1 (Ausgangstransistor nicht-leitend). Außerdem ist die Kanal-Bezeichnung anzugeben. |
Default-Wert: 0 | Default-Wert: 0 | ||
Zeile 43: | Zeile 43: | ||
(der Ausgangstransistor des Kanal A wird leitend) | (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 | 1w ds2450 oc]] ein- bzw. ausgeschaltet werden. | 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 | 1w ds2450 oc]] ein- bzw. ausgeschaltet werden. | ||
+ | Die Eingabe erfolgt als bool über 0 (Eingang für ADC) bzw. 1 (Ausgang open drain). Außerdem ist die Kanal-Bezeichnung anzugeben. | ||
Default-Wert: 0 | Default-Wert: 0 | ||
Zeile 57: | Zeile 57: | ||
==== <code>1w ds2450 range</code> ==== | ==== <code>1w ds2450 range</code> ==== | ||
+ | |||
+ | Hierüber kann der Spannungs-Bereich angegeben werden, in dem die analog-digital Umwandlung stattfinden soll. | ||
+ | Die Eingabe erfolgt als bool über 0 (Spannungsbereich 0 bis 2,55V) bzw. 1 (Spannungsbereich 0 bis 5,10V). Außerdem ist die Kanal-Bezeichnung anzugeben. | ||
+ | |||
+ | Default-Wert: 0 | ||
+ | |||
+ | Beispiel: | ||
+ | 1w ds2450 range b 1 | ||
+ | |||
+ | (für Kanal B wird bei der analog-digital Umwandlung der Spannungsbereich 0 bis 5,10V genutzt) | ||
+ | |||
==== <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:29 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 1w ds2450 oe der Kanal als Ausgang geschaltet wurde (ansonsten wird das OC-Bit ignoriert). Die Eingabe erfolgt als bool ü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 1w ds2450 oc ein- bzw. ausgeschaltet werden. Die Eingabe erfolgt als bool über 0 (Eingang für ADC) bzw. 1 (Ausgang open drain). Außerdem ist die Kanal-Bezeichnung anzugeben.
Default-Wert: 0
Beispiel:
1w ds2450 oe d 1
(Kanal A wird als Ausgang gesetzt)
1w ds2450 range
Hierüber kann der Spannungs-Bereich angegeben werden, in dem die analog-digital Umwandlung stattfinden soll. Die Eingabe erfolgt als bool über 0 (Spannungsbereich 0 bis 2,55V) bzw. 1 (Spannungsbereich 0 bis 5,10V). Außerdem ist die Kanal-Bezeichnung anzugeben.
Default-Wert: 0
Beispiel:
1w ds2450 range b 1
(für Kanal B wird bei der analog-digital Umwandlung der Spannungsbereich 0 bis 5,10V genutzt)