Kodierungsfehler schnell beheben

Hallo zusammen,

der heutige Blogbeitrag stammt wieder einmal von unserem technischen Support-Team. Anlass ist die Mitteilung mehrer Kunden, die beim kompilieren in der ArduinoIDE den Fehler "error: stray '/302'" oder"error: stray '\240' in program" zu erhalten, außerdem möchte ich ein für Einsteiger interessantes Feature in Notepad++ vorstellen . 

Dieser Fehler tritt auf u.a. auf, wenn der kopierte Sketch mit der falschen Kodierung in die Arduino IDE geladen wird. Für Informatiker gehören diese Probleme "zum täglich Brot" und werden schon ganz am Anfang der Ausbildung geklärt, als reiner Anwender hat man mit der Kodierung von Dateien sehr wenige Kontaktpunkte.

Da die Kodierung von Zeichen ist ein recht umfangreiches Thema darstellt möchte ich heute nur zeigen, wie man die Fehler aus der ArduinoIDE bekommt, damit der (kopierte) Sketch durchläuft. 

 

Starten wir also mit der ArduinoIDE indem wir den Code kopieren, kompilieren und die oben gezeigte Fehlermeldung erhalten.

In der ArduinoIDE gibt es im Menü Werkzeuge die Möglichkeit eine automatische Korrektur auszuführen, diese finden Sie hier:

Nach der Ausführung dieses Menüpunktes sehen wir schon einen Teil des Problems:

Der Versuch einfach die Zeichen mit Strg+F zu suchen und mit nichts zu ersetzten löscht zwar die "Sonderzeichen", führt aber dennoch nicht zum Erfolg.

Wir benutzen heute Nodepad++ um den Quelltext auszumisten und die Kodierung zu ändern. Notepad++ ist ein recht einfaches und effizientes Programm, welches zum kostenlosen Download verfügbar ist. Meiner Meinung nach ein sehr guter und umfangreicher Texteditor der einfach in der Bedienung, und komfortabel in der Anwendung ist.

Nach dem Download und der Installation können wir direkt mit STRG+V zuvor kopierten Code einfügen:

Im Menü haben wir zwar die Option die Kodierung zu konvertieren, nach ein paar Versuchen stellen wir jedoch auch damit Probleme fest und kommen dadurch schnell auf die Fehlerbehebung. Zuerst stellen wir sicher, dass UTF-8 ausgewählt ist, wie hier im Bild:

Dann ändern wir die Auswahl auf "ANSI":

Mit der Funktion "Suchen und Ersetzen" können wir diese Zeichen recht schnell entfernen, bitte beachten Sie, das Leerzeichen jeweils vor und nach dem "Sonderzeichen" mitzukopieren:

Würden wir jedoch den Code jetzt kopieren würde der Fehler wieder in der IDE auftauchen. Um dies zu verhindern stellen wir die Kodierung um Menü wieder zurück auf UTF-8 und sehen:

Um diese Zeichen auch noch zu entfernen nutzen wir ein tolles Feature von Nodepad++: Die Blockauswahl. Ziehen Sie hierzu mit gedrückter ALT-Taste einen Ramen um die zu entfernenden Zeichen:

Die so markierten Blöcke können so recht einfach gelöscht werden:

Ein unverzichtbares Werkzeug für Einsteiger, um Beispielsweise Log-Dateien effizient zu bearbeiten, oder um Textdateien ohne Excel- oder Skript-Kenntnisse besser handhaben zu können.

Haben Sie alle Blöcke entfernt können Sie den so aufbereiteten Code zurück in die ArduinoIDE kopieren.

Jetzt noch eine kleine Schönheitskorrektur, die automatische Formatierung:

Hier das Ergebnis:

Somit sind wir am Ende des heutigen Artikels angekommen, und freue mich auf den nächsten Beitrag :) Bis dann

 

/240/302ArduinoBlockauswahlError 240Error 302Fehler beim kompilierenIdeNotepad++Stray

3 Kommentare

Stefan Ludwig

Stefan Ludwig

Noch etwas,

gerade für Neulinge wäre es gut in jeden Quellcode noch etwas einzubauen
was OHNE Delay ein blinken der blauen Onboard-LED macht damit man schon daran sieht das der Code läuft.

Und einen Debug-Schalter der zusätzliche Sachen auf der seriellen Schnittstelle ausgibt damit man sieht welche Codeteile durchlaufen wurden und welche nicht.

mit freundlichen Grüßen

Stefan Ludwig

Stefan Ludwig

Stefan Ludwig

Wenn ich mir mal eine Anmerkung erlauben darf,

das ist aber eine echt merkwürdige Art Kunden dazu zu bringen einen bestimmten Texteditor zu benutzen. Diese kopiere Quellcode -Funktion gibt es auf ganz vielen Internetseiten. Ich habe die nicht alle getestet aber ich gehe davon aus das das i.d.R. funkioniert. Ansonsten würde ich mir es als FIRMA die Microcontroller verkauft UND Support anbietet den Support so zu gestalten, das 10 DAUs das jeweilige Tutorial getestet haben und alle DAU-Fehler abgefangen werden. Das dauert natürlich länger als per C&P ein Tutorial rauszuhauen. Weniger aber dafür mit mehr Qualität ist meine Empfehlung
mit freundlichen Grüßen

Stefan Ludwig

Katsumoto Kawasaki

Katsumoto Kawasaki

Ich sehe bei mir nur dieses “seltsame A”…….und nicht dieses “xA0”..
Was mache ich falsch?

Einen Kommentar hinterlassen

Alle Kommentare werden vor der Veröffentlichung moderiert