| Arduino - Eingabe / AusgabepinMode()Mit pinMode() wird ein Pin (Kanal) des Arduino-Boards als Eingang oder Ausgang
deklariert. Es gibt drei Modis, die jedem Pin zugeordnet werden können: OUTPUT, INPUT und
INPUT_PULLUP. Mit pinMode(25, OUTPUT) wird der Pin Nr. 25 als Ausgang definiert. Mit
pinMode(25, INPUT_PULLUP) wird der gleiche Pin als Eingang festgelegt. digitalWrite()Mit digitalWrite() kann ein Ausgang ein- oder abgeschaltet werden. Mit digitalWrite(25, HiGH) wird der Pin 25, der als Ausgang definiert wurde, auf HIGH gesetzt (eingeschaltet). Mit digitalWrite(25, LOW) wird der gleiche Ausgang auf LOW gesetzt (abgeschaltet). digitalRead()Mit digitalRead() kann der digitale Zustand eines Pins festgestellt werden. Mit
digitalRead(25) wird der digitale Zustand des Pins 25 auf HIGH oder LOW abgefragt. // ---------------------------------------------------------- // Arduino - Read / Write
In dem Beispiel wird der Pin 35 als Ausgang definiert, Pin 36 wird zum Eingang. Hierzu wurden die Variablen PinAusgang und PinEingang verwendet. Die Deklaration kann allerdings auch direkt erfolgen. Statt pinMode(PinAusgang, OUTPUT) könnte man auch pinMode(35, OUTPUT) schreiben. Im void loop() wird der als Eingang definierte Pin 36 auf LOW untersucht. Der LOW-Zustand würde zutreffen, wenn der Pin mit einem Schalter mit Masse verbunden wäre. In diesem Fall würde der Ausgang (Pin 35) aktiviert. analogRead()Mit analogRead() kann ein analoger Eingang untersucht werden. Das Arduino-Board verfügt über 10-Bit-Analog-Digital-Wandler. Das bedeutet, dass Signale, die im Bereich von 0-5V liegen, in ganzzahlige Werte zwischen 0 und 1023 abgebildet werden. Der Eingabebereich und die Auflösung beim Auslesen eines analogen Eingangs können mit der Funktion analogReference() geändert werden. // ---------------------------------------------------------- // Arduino - analogRead
analogWrite()Mit analogWrite() wird ein analoger Wert in einen PWM-Pin geschrieben. Mit PWM wird die Pulsweitenmodulation bezeichnet. Dadurch wird am PWM-Pin ein rechteckiges Puls-Signal erzeugt. Mit den dazugehörigen Parametern werden die Nummer des Pins und das Tastverhältnis zwischen 0 und 255 bestimmt. Um einen Pin mit analogWrite() zu beschreiben, muss die pinMode() Funktion nicht aufgerufen werden. Mit analogWrite() kann z.B. die Helligkeit einer Leuchtdiode gesteuert werden. // ---------------------------------------------------------- // Arduino - analogWrite
Die Division durch 4 ist hier notwendig, um den analogen Wert vom analogen Eingang (Werte 0-1023) entsprechend für analogWrite() (Werte 0-255) anzupassen. shiftOut()Mit ShiftOut() wird seriell ein Byte übertragen. Verwendbar z.B. bei einem Schieberegister. Die Übertragung
kann wahlweise von links nach rechts oder von rechts nach links erfolgen. Der teilnehmende Pin muss davor mit (z.B.
pinMode(DataPin, OUTPUT)) als Output definiert sein.
tone()Mit der Funktion tone() kann ein Ton mit angegebener Frequenz generiert werden. Der Funktion können drei Parameter übergeben werden.
Arduino_Programmierung
|