analogWriteResolution()
Beschreibung
analogWriteResolution() ist eine Erweiterung der Analog-API für Arduino Due.
analogWriteResolution() setzt die Auflösung der analogWrite() Funktion. Der Standardwert ist 8 Bit (Werte zwischen 0-255), um die Abwärtskompatibilität mit AVR-basierten Boards zu gewährleisten.
Der Due verfügt über die folgenden Hardwarefunktionen:
- 12 Pins, die standardmäßig auf 8-Bit-PWM eingestellt sind, wie auf den AVR-basierten Boards. Diese können auf 12-Bit-Auflösung geändert werden.
- 2 Pins mit 12-Bit-DAC (Digital-Analog-Wandler)
Wenn die Schreibauflösung auf 12 gesetzt wird, kann analogWrite() mit Werten zwischen 0 und 4095 verwendet werden, um die volle DAC-Auflösung auszunutzen oder das PWM-Signal ohne Überrollen festzulegen.
Der Zero verfügt über die folgenden Hardwarefunktionen:
- 10 Pins, die standardmäßig auf 8-Bit-PWM eingestellt sind, wie auf den AVR-basierten Boards. Diese können auf 12-Bit-Auflösung geändert werden.
- 1 Pin mit 10-Bit-DAC (Digital-Analog-Wandler)
Wenn die Schreibauflösung auf 10 gesetzt wird, kann analogWrite() mit Werten zwischen 0 und 1023 verwendet werden, um die volle DAC-Auflösung auszunutzen.
Die MKR-Familie verfügt über die folgenden Hardwarefunktionen:
- 4 Pins, die standardmäßig auf 8-Bit-PWM eingestellt sind, wie auf den AVR-basierten Boards. Diese können auf 12-Bit-Auflösung geändert werden.
- 1 Pin mit 10-Bit-DAC (Digital-Analog-Wandler)
Wenn die Schreibauflösung auf 12 Bit gesetzt wird, kann Sie analogWrite() mit Werten zwischen 0 und 4095 für PWM-Signale verwendet werden. Wenn 10 Bit am DAC-Pin gesetzt werden, kann die volle DAC-Auflösung von 1024 Werten benutzt werden.
Syntax
analogWriteResolution(bits)
Parameter
- bits: bestimmt die Auflösung (in Bits) der Werte, die in der Funktion analogWrite() verwendet werden. Der Wert kann zwischen 1 und 32 liegen. Wenn eine höhere oder niedrigere Auflösung als die Hardwarefunktionen Ihres Boards gewählt wird, wird der in analogWrite() verwendete Wert entweder abgeschnitten, wenn er zu hoch ist, oder mit Nullen aufgefüllt, wenn er zu niedrig ist. Weitere Informationen finden sich im Hinweis unten.
Rückgabewert
Nichts.
Beispielcode
Der Code zeigt, wie ADC mit unterschiedlichen Auflösungen verwendet wird.
※ Anmerkungen und Warnungen:
- Wenn der Wert von analogWriteResolution() auf einen höheren Wert als die Fähigkeiten des Boards gesetzt werden, werden die zusätzlichen Bits vom Arduino verworfen. Zum Beispiel: Wenn beim Due analogWriteResolution (16) auf einem 12-Bit-DAC-Pin verwendet wird, werden nur die ersten 12 Bits der an analogWrite() übergebenen Werte verwendet und die letzten 4 Bits werden verworfen.
- Wenn der Wert von analogWriteResolution() auf einen niedrigeren Wert als die Fähigkeiten des Boards gesetzt werden, werden die fehlenden Bits mit Nullen aufgefüllt, um die erforderliche Hardware-Größe zu füllen. Zum Beispiel: Wenn der Due mit analogWriteResolution(8) auf einem 12-Bit-DAC-Pin verwendet wird, fügt der Arduino dem 8-Bit-Wert, der in analogWrite() verwendet wird, 4 Null-Bits hinzu, um die erforderlichen 12 Bit zu erhalten.
Siehe Auch
- Sprache : analogReadResolution()
- Sprache : analogWrite()
- Sprache : analogRead()
- Sprache : map()
- Beispiel : Beschreibung der analogen Inputpins
※ ARDUINO KAUFEMPFEHLUNG
Arduino UNO R3 | |
Arduino Starter Kit |