Reference   Language | Libraries | Comparison | Changes

digitalWrite()

Beschreibung

Setzt bzw. beschreibt einen digitalen Pin mit einem HIGH oder einem LOW Wert.

Wenn der Pin als OUTPUT mit pinMode() configuriert wurde, wird die Spannung auf den dazugehörigen Wert gesetzt. 5V (oder 3,3V bei 3,3V Boards) für HIGH, 0V (Masse) für LOW.

Wenn der Pin als INPUT configuriert wurde, wird bei setzen eines HIGH Wertes mit digitalWrite() ein interner 20K Pullup Widerstand aktiviert (siehe hierzu tutorial on digital pins?). Setzen von LOW deaktivert den Pullup Widerstand. Der Pullup Widerstand ist genug um eine LED zum klimmen zu bringen, wenn eine LED scheinbar funktioniert aber nur schwach leuchtet, ist dies eine mögliche Ursache. Abhilfe kann in diesem Fall durch das setzen des Pins als Ausgang, mit der pinMode() Funktion, geschaffen werden.

HINWEIS: Der digitale Pin 13 ist schwerer als digitaler Eingang zu benutzen als die restlichen digitalen Pins, da er bei den meisten Boards bereits mit einer LED und einem Widerstand verbunden sind. Wenn der interne 20K Pullup Widerstand eingeschaltet wird, fällt die Spannung wegen der in Reihe geschalteten LED auf dem Bord entgegen der Erwartung, von 5V auf ca. 1,7V ab. Diese Spannung wird daher als LOW interpretiert. Wenn der Pin 13 als digitaler Eingang benutzt werden soll, sollte ein externer Pull-Up Widerstand verwendet werden.

Syntax

digitalWrite(pin, value)

Parameter

pin: die Nummer des Pins

value: HIGH oder LOW

Rückgabewert

keinen

Beispiel

 
int ledPin = 13;                 // LED connected to digital pin 13

void setup()
{
  pinMode(ledPin, OUTPUT);      // sets the digital pin as output
}

void loop()
{
  digitalWrite(ledPin, HIGH);   // sets the LED on
  delay(1000);                  // waits for a second
  digitalWrite(ledPin, LOW);    // sets the LED off
  delay(1000);                  // waits for a second
}

Sets pin 13 to HIGH, makes a one-second-long delay, and sets the pin back to LOW.

Hinweis

Die analogen Eingangs-Pins können ebenfalls als digitale Pins verwendet werden, welche mit A0, A1 etc. bezeichnet werden.

siehe auch

Reference Home

Corrections, suggestions, and new documentation should be posted to the Forum.

The text of the Arduino reference is licensed under a Creative Commons Attribution-ShareAlike 3.0 License. Code samples in the reference are released into the public domain.

Share