Feh­ler­mel­dun­gen

Die Auf­zäh­lung der Feh­ler­mel­dun­gen erhebt kei­nen Anspruch auf Vollständigkeit. 

Feh­ler­mel­dun­genLösung
Anwei­sung­Na­me was not declared in this scopeder Name der Anwei­sung ist falsch, ach­te beson­ders auf Groß- und Kleinschreibung
Beim Hoch­la­den des Sket­ches ist ein Feh­ler aufgetretenkon­trol­lie­re den COM-Port
schlie­ße den Seri­el­len Monitor
can't open devicekon­trol­lie­re den COM-Port
Did not find any device matching VID 0xxxxx and PID list: 0xxxxxFeh­ler beim Betriebs­sys­tem Linux:
Füh­re das fol­gen­de ➨Script aus.
expec­ted '('an der Stel­le wur­de eine run­de Klam­mer erwartet
zumeist fehlt sie bei ➨for, ➨if oder ➨while
expec­ted ')' befo­re nume­ric constantzwi­schen zwei ➨nume­ri­schen Varia­blen fehlt ein Komma
expec­ted ';'an der Stel­le wird ein Strich­punkt erwartet
expec­ted '{'an der Stel­le fehlt eine ➨öff­nen­de geschweif­te Klam­mer
expec­ted '}' at end of inputam Ende des Blocks, der Funk­ti­on, der Funk­ti­on fehlt die ➨schlie­ßen­de geschweif­te Klam­mer
expec­ted unqua­li­fied-id befo­re 'for'Syn­tax der ➨for-Schlei­fe ist nicht kor­rekt, es fehlt ein tren­nen­der Strichpunkt
expec­ted unqua­li­fied-id befo­re '{' tokendie Defi­ni­ti­on einer Funk­ti­on darf nicht mit einem Strich­punkt abge­schlos­sen werden
Feh­ler beim Kom­pi­lie­ren für das Board Arduino/Genuino Unoder loop-Teil oder der set­up-Teil fehlt
miss­ing ter­mi­na­ting " characterbei der Defi­ni­ti­on eines ➨Strings fehlt ein Anführungszeichen
Name­Der­Bi­blio­thek: No such file or directorydie Biblio­thek, die ver­wen­det wer­den soll ist nicht vor­han­den, sie muss instal­liert werden
(Sketch -> Biblio­thek ein­bin­den -> Bibliotheken)
Per­mis­si­on denied on /dev/ttyACM0Feh­ler­mel­dung beim Betriebs­sys­tem ➨Linux
rede­cla­ra­ti­on of 'Varia­blen­na­me'die Varia­ble wur­de im Pro­gramm bereits definiert
too many initia­li­zers for 'Varia­blen­Na­me [..]'bei der Defi­ni­ti­on des Arrays wur­de die ➨Anzahl der Ele­men­te zu nied­rig angegeben
Varia­blen­Na­me was not declared in this scopedie Varia­ble wur­de vor der ers­ten Ver­wen­dung nicht ➨defi­niert oder sie ist im dem Pro­gramm­teil nicht gül­tig

Permission denied on /dev/ttyACM0


Lösung für die aktuelle Sitzung:
sudo chmod a+rw /dev/ttyACM0


Dauerhafte Lösung:
Der Benutzer muss der Gruppe dialout zugewiesen werden:

Debian-basiert:
sudo usermod -a -G dialout deinBenutzername

Arch-Linux:

sudo usermod -a -G uucp deinBenutzername

Array definieren


int LED[5] = {3, 4, 5, 6, 7};
bool Status[5] = {1, 0, 1, 0, 1};
String Bauteile[5] = {"Taster", "Potentiometer", "Fernbedienung", "Sensor,", "LED"};
char Buchstaben[5] = {"aeiou"};

String-Variable definieren und Wert zuweisen


String Satz = "Programmieren macht Spaß!";

Geschweifte Klammern
Zu jeder geöffneten geschweiften Klammer gehört immer auch eine geschlossene geschweifte Klammer.


void setup()
{
  Serial.begin(9600);
}


void loop()
{
   for (int i = 0; i < 10; i ++)
  {
     Serial.println(i);
  }
}

Trennung von numerischen Variablen


pinMode(7, OUTPUT);
digitalWrite(7, HIGH);

Schreibweise von Anweisungen


analogRead()
analogWrite()
delay()
digitalRead()
digitalWrite()
for (int i = 0; i < 10; i ++)
if (Bedingung == Zustand)
map(SensorWert, 0, 1023, 0, 255)
pinMode(LED, OUTPUT)
pinMode(TASTER, INPUT_PULLUP)
Serial.available()
Serial.begin(9600)
Serial.read()
Serial.print()
Serial.println()
tone()
noTone()
while (int i < 10) 

Beispiele:


// Variable anlegen 
String Satz; 
int TasterLesen; 
byte TASTE;

// Variable anlegen und Wert zuweisen
String Satz = "Programmieren macht Spaß!";
byte TASTE = 5; 
int LED = 13; 
float KOMMAZAHL = 3.5; 
// beachte das Format . statt ,

Gültigkeitsbereich von Variablen


// im gesamten Programm gültige Variable 
int LED = 7; 
int SENSOR = 8; 

void setup() 
{
   pinMode(LED, OUTPUT);
   pinMode(SENSOR, INPUT); 
   Serial.begin(9600); 
}

void loop() 
{ 
  // lokale Variable, in der gesamten Funktion loop gültig 
  int SensorLesen; 
  int Max = 6; 
  for (int i = 0; i <= Max; i ++) 
  // die Variable i ist nur in der for-Schleife gültig    
  { 
    Serial.println(i); 
  } 
}

Beispiel while


void setup()  
{  
  Serial.begin(9600); 
} 

void loop() 
{ 
  int i = 0; 
  while (i < 10)
  {  
    Serial.println(i);
    i++;   
  } 
}

Beispiel if


int LED = 7;
int TASTER = 13;

void setup()
{
  pinMode(LED, OUTPUT);
  pinMode(TASTER, INPUT_PULLUP);
}

void loop()
{
  int TasterLesen = digitalRead(TASTER);
  if (TasterLesen == LOW)
  {
    digitalWrite(LED, HIGH);
  }
  else
  {
    digitalWrite(LED, LOW);
  }
}

Beispiel for-Schleife:


void setup()
{
  Serial.begin(9600);
}

void loop()
{
  for (int i = 0; i < 10; i ++)
  {
    Serial.println(i);
  }
}

Kontrolliere den COM-Port: