logo

Elektronik-Dachbude

logo

Befehlsliste Arduino


Oft ist es so, dass man plötzlich vergisst, wie man jetzt gerade in dieser Programmiersprache einen Bestimmten Befehl formulieren muss. Deswegen steht hier eine Auflistung der wichtigsten Befehle. Benutzen Sie Stg+F um in der Seite nach etwas bestimmten zu suchen.



Inhalt:

Grundlegendes
Ausgaben/Eingaben
Serielle Schnittstelle
Abfragen/Schleifen
Mathematisches
Vergleiche
Boolsche Operatoren
Datentypen
Datentypkonvertierungen
Interrupts
Sonstiges



Befehl

Schreibweise

Grundlegendes

 

Grundstruktur

 

void setup() {   }

void loop()  {   }

Variable deklarieren (Typ Integer, Wert = 0)

int led  = 0;

Konstante deklarieren (Typ Integer, Wert = A0)

const int analogInPin = A0;

Array deklarieren (Typ Integer, 6 Werte)

 int Arrayname[6] = {2, 4, -8, 3, 2};

Pin-Funktion festlegen

pinMode(led, OUTPUT);    

Library einbinden

#include <libX.h>

 

 

Ausgaben/Eigaben

 

Pin auf HIGH schalten

digitalWrite(led,HIGH);

PWM-Pin auf maximal Wert setzen

analogWrite(led, 255);    

Digitalen Zustand von Pin schalter lesen

digitalRead(schalter)

Funktion: Analog Pin A0 auslesen

analogRead(A0)

Ton Ausgabe an Pin8, Frequenz x, länge y

tone(8, x, y)

Ton Ausgabe an Pin8 stoppen

noTone(8)

 

 

Serielle Schnittstelle

 

Serielle Schnittstelle initialisieren

Serial.begin(9600);

Text seriell Ausgeben

Serial.print(“Hallo”);

Text seriell Ausgeben + neue Zeile

Serial.println(“Hallo”);

Byte seriell Ausgeben

Serial.write(val) 

Funktion: Anzahl von auslesbaren Bytes

Serial.available()

Funktion: seriell Einlesen

Serial.read();

Funktion: Text im Buffer finden (true/false)

Serial.find("TEXT")

Funktion: Text i. Buffer finden bis Endetext

Serial.findUntil(“TEXT“,“ENDE TEXT“)

Speichert Anzahl Bytes in Buffer

Serial.readBytes(buffer, length)

Speichert Bytes in Buffern bis lenght oder Ende-chracter erreicht

Serial.readBytesUntil(character, buffer, length)

Funktion: Findet nächste Integerzahl

Serial.parseInt()

Prozedur aufgerufen wenn Daten vorhanden

void serialEvent()

 

 

Abfragen/Schleifen

             

If-Abfrage mit Else

if (button == HIGH){    }

else{   }

Switch-Abfrage

 switch (x) {

    case 1:   

    case 2:   

    default:

Wartezeit (500 ms)

delay(500);

For-Schleife

  for (x = 2; x < 7; x++) {      }

While-Schleife

while (schalter== HIGH) {

  }

ODER:

 do{

} while (schalter==HIGH);

Schleife vorzeitig verlassen

break;

Überspringt ausführbaren Quelltext in Schleife

continue;

 

 

Mathematisches

 

Sinus, Cosinus, Tangens

sin(),cos(),tan()

Wurzel aus X

sqrt(x)

X hoch Y : xy

pow(x, y)

Absolut Wert einer Zahl (Betrag von x)

abs(x)

Zufällige Zahl

random()

 

 

Vergleiche

   

gleich

==

ungleich

!=

größer, kleiner

<, >

Größer oder gleich, kleiner oder gleich

<= , >=

Funktion: kleinere Zahl von x und y

min(x, y)

Funktion: größere Zahl von x und y

max(x, y)

 

 

Boolsche Operatoren

   

Und

&&

Oder

||

Nicht

!

 

Datentypen

Boolean; char; unsigned char; byte; int; unsigned int; word; long; unsigned long; short; float; double; string; String;

 

Datentypkonvertierungen

char(); byte(); int(); word(); long(); float()

 

 

Interrupts

 

Interrupts verbieten

noInterrupts()

Interrupts erlauben

nterrupts()

Interrupt an Pin mit Funktion verknüpfen

attachInterrupt(interrupt, function, mode)

Interrupt Verbindung aufheben

detachInterrupt(interrupt)

 

 

Sonstiges

 

Kommentar eine Zeile

//

Kommentar längerer Bereich

/*                */

Array definieren

 

Funktion: Wertebereich transformieren (z.B. 10bit Sensor auf 8bit PWM)

map(sensorWert, 0, 1024, 0, 255);

Funktion Wertgrenzen bestimmen(alles darüber/darunter wird abgeschnitten)

   constrain(sensorWert, 0, 255);

Bein Funktionen: Wert zurückgeben

return x;

Zum Sprungpunk hier springen

goto hier;

Prozedur

Void Prozedurname() {   }

Funktion mit Integer-Rückgabewert und Byte-Parameter

int Funktionsname (byte Parameter) {

return 13;

}

 

Eine komplette Befehlsliste auf Englisch und mit erweiterten Erklärungen finden Sie auch unter http://arduino.cc/en/Reference/HomePage.

Home
Copyright 2012 Fabian Kainka | All Rights Reserved.