Benutzer-Werkzeuge

Webseiten-Werkzeuge


skript:digitalpins

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen gezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
skript:digitalpins [2014/10/16 12:37]
fbonowski
skript:digitalpins [2018/04/21 21:07] (aktuell)
d.golovko [Spezialfall: Die Pins 0 und 1 sind eure Verbindung zum PC]
Zeile 1: Zeile 1:
-===== Kontakt zur Welt: Die Digitalausgänge =====+====== Kontakt zur Welt: Die Digitalausgänge ​======
 Um mit dem Arduino Dinge (Licht, Motoren, Heizungen, etc...) zu steuern, werden fast immer die [[http://​arduino.cc/​en/​Tutorial/​DigitalPins|Digitalpins]] verwendet. Um mit dem Arduino Dinge (Licht, Motoren, Heizungen, etc...) zu steuern, werden fast immer die [[http://​arduino.cc/​en/​Tutorial/​DigitalPins|Digitalpins]] verwendet.
  
-Diese können sowohl als Eingang als auch als Ausgang ​verwendet ​werden.+===== Funktion des Pins festlegen mit "​pinMode(pinNummer,​ Modus)"​ ===== 
 +Diese können sowohl als Eingang als auch als Ausgang ​benutzt ​werden. Da der Arduino nicht von selbst wissen kann, wie wir die Pins verwenden wollen, müssen wir es ihm explizit mitteilen. Das geht mit dem Kommando [[http://​arduino.cc/​en/​Reference/​PinMode|pinMode()]].
  
-Bevor sie etwas "​ausgeben"​ können, müssen sie zuerst mit der [[http://​arduino.cc/​en/​Reference/​PinMode|pinMode()]] Funktion als Ausgang konfiguriert werden:+Also z.B.
 <code c++> <code c++>
-pinMode(2,OUTPUT); // Verwende Digitalpin No2 als Ausgang.+pinMode(3, INPUT); // verwende Pin 3 als Eingang 
 +pinMode(4, OUTPUT); // verwende Pin 4 als Ausgang 
 + 
 +// verwende Pin 5 als Eingang und verbinde ihn über einen internen Widerstand mit +5V 
 +pinMode(5, INPUT_PULLUP); ​
 </​code>​ </​code>​
-Die Pins 0 und 1 dienen als serielle Schnittstelle zur Kommunikation mit dem Computer, also lasst von denen jetzt erstmal die Finger...\\ +Arduino merkt sich die Einstellung,​ nachdem sie einmal festgelegt wurde, solange das Programm läuft. Es reicht also in vielen Fällen, ''​pinMode''​ einmal im ''​setup''​ aufzurufen. 
-Nachdem sie einmal (z.B. im setup()) als Ausgang eingestellt wurden, kann man im Programm mit der Funktion [[http://​arduino.cc/​en/​Reference/​DigitalWrite|digitalWrite(Pin\#​ ,​LOW/​HIGH)]] die Pins zwischen 0V (LOW) und 5V (HIGH) umschalten:+ 
 +===== Spezialfall:​ Die Pins 0 und 1 sind eure Verbindung zum PC===== 
 +Die Pins 0 und 1 dienen als serielle Schnittstelle zur Kommunikation mit dem Computer, also lasst von denen jetzt erstmal die Finger, sonst kann es sein, dass euer Arduino anfängt, seltsame Dinge zu tun...\\ 
 +===== Digitalpins als Ausgang "​OUTPUT"​ ===== 
 + 
 +Nachdem sie einmal (z.B. im ''​setup()''​) als Ausgang eingestellt wurden, kann man im Programm mit der Funktion [[http://​arduino.cc/​en/​Reference/​DigitalWrite|digitalWrite(Pin\#​ ,​LOW/​HIGH)]] die Pins zwischen 0V (LOW) und 5V (HIGH) umschalten:
 <code c++> <code c++>
 digitalWrite(2,​LOW);​ //schalte Pin 2 auf 0V digitalWrite(2,​LOW);​ //schalte Pin 2 auf 0V
Zeile 17: Zeile 27:
 An Pin 13 ist auf dem Board eine LED angeschlossen,​ die im Beispiel [[http://​arduino.cc/​en/​Tutorial/​blink|Basics/​Blink]] abwechselnd an- und ausgeschaltet wird. An Pin 13 ist auf dem Board eine LED angeschlossen,​ die im Beispiel [[http://​arduino.cc/​en/​Tutorial/​blink|Basics/​Blink]] abwechselnd an- und ausgeschaltet wird.
  
 +<note important>​
 +**Die Digitalpins vertragen nur einen begrenzten Strom (empfohlen sind max. 20mA)**
 +
 +Wird dieser Strom überschritten (z.B. indem ein Pin, der auf ''​HIGH''​ geschaltet ist, mit einem Draht mit einem, der auf ''​LOW''​ geschaltet ist, verbunden wird.) gehen die kleinen Transistoren im Innerern des Arduino kaputt!
 +
 + Das Selbe passiert, wenn ihr versucht, einen zu großen Verbrauchen (z.B. einen Motor oder normalen Lautsprecher) direkt an einem Digitalpin zu betreiben. ​
 +Häufig bleibt es beim Ausfall des betroffenen Pins, es garantiert euch allerdings niemand, dass nicht der ganze Arduino im Eimer ist.\\
 +
 +Genauere Information gibt es  [[http://​playground.arduino.cc/​Main/​ArduinoPinCurrentLimitations|hier]]
 +</​note>​
skript/digitalpins.1413455826.txt.gz · Zuletzt geändert: 2016/01/21 12:45 (Externe Bearbeitung)