Arduino mit Eclipse als IDE

Das ist leider einfacher gesagt als getan, siehe unten 🙁 Eclipse muss man natürlich nur einmal einrichten. Da das deutlich umfangreichere aber das Einrichten des Projektes ist, würde ich empfehlen, ein einmal lauffähig eingerichtetes Projekt als Template zu nutzen.

Anmerkung #1: Was momentan noch nicht funktioniert, ist die Ausgabe nach Serial 🙁 Ich habe bisher nur ein sehr rudiemntäres “Blink”-Projekt kompilieren können… offenbar fehlen da irgendwelche Includes, wobei die HardwareSerial eigentlich da ist. Ich bleibe dran.

Anmerkung #2: Im Folgenden werden OS X Lion und ein Uno verwendet

Einrichten von Eclipse:

  1. Eclipse IDE for C/C++ Developers installieren
  2. Das AVR-Plugin installieren
  3. Das AVR “Crosspack” installieren
  4. Sicherheitshalber die Pfade unter Preferences -> AVR -> Paths checken:
    AVR-GCC: /usr/local/CrossPack-AVR20100115/bin
    GNU make: /usr/local/CrossPack-AVR20100115/bin
    AVR Header Files: /usr/local/CrossPack-AVR20100115/avr-3/include
    AVRDude: AVR-GCC: /usr/local/CrossPack-AVR20100115/bin
  5. Dein(e) Arduino(s) unter Preferences -> AVR -> AVRDude einrichten. Anmerkung: Der default Port ist der, den man auch in der Arduino-IDE nutzt – und den man unter /dev/ findet (ls -la /dev/)
    Configuration Name: <irgendwas>
    Programmer Hardware: Arduino
    Override default port: /dev/tty.usbmodemfa131
    Override default baudrate: 115200

Einrichten eines ersten Projekts (dieses kann man hinterher kopieren, um diese Einstellungen nicht immer wieder vornehmen zu müssen):

  1. Neues “C” Projekt anlegen:
    Project name: <irgendwas>
    Project type: AVR Cross Target Application -> Empty
    Finish
  2. In den Project properties -> AVR -> AVR Dude -> Programmer -> “Programmer configuration” die Konfiguration von oben, Punkt 5, auswählen
  3. Das Arduino anschliessen
  4. In den Project properties -> AVR ->AVR Dude -> “Target Hardware” entweder “Load from MCU” versuchen, oder für den Uno “ATmega328P” auswählen. Anmerkung: Auch, wenn arduino.cc als Microcontroller für den Uno den ATmega328 angibt, so ist es in Wirklichkeit doch der ATmega328P
  5. Die Arduino IDE öffnen, ein neues Projekt anlegen, und kompilieren (“Verify” genügt) (es geht darum, einmal die Core Library anzulegen)
  6. “Irgendwo” unter /private/var/ die Datei core.a finden – bei mir war es /private/var/folders/8f/0zf3pf294rvbrybmwh7mq1bm0000gn/T/build1871947640038466426.tmp/core.a 🙂 – und in den Projektordner kopieren
  7. Diese “neue” core.a in libcore.a umbenennen
  8. Unter den Project properties -> C/C++ Build -> Settings -> Tool Settings -> “Additional Tools in Toolchain”: “Generate HEX for Flash Memory”, “Print Size” und “AVRDude” müssen angewählt sein; “Generate HEX file for EEPROM” und “Generate Extended Listing” müssen abgewählt sein
  9. Unter … -> AVR Compiler -> Command von “avr-gcc” in “avr-g++” ändern
  10. Unter … -> AVR Compiler -> Directories den Pfad /Applications/Arduino.app/Contents/Resources/Java/hardware/arduino/cores/arduino (oder analog) eintragen. Anmerkung: Rechtsklick auf die Arduino-App -> Paketinhalt anzeigen hilft 😉
  11. Unter … -> AVR Compiler -> Debugging -> “Generate Debugging info” “No debugging info” auswählen
  12. Unter … -> AVR Compiler -> Optimization -> “Optimization Level” “Size Optimization (-Os)” auswählen
  13. Unter … -> AVR Assembler -> Debugging -> “Generate Debugging Info” “No debugging info” auswählen
  14. Unter … -> AVR C Linker -> Libraries eine neue Library mit dem Namen “core” anlegen. Einen neuen Library Path mit “${workspace_loc:/${ProjName}}” anlegen – damit sollte er jetzt im aktuellen Projekt nach der corelib aus Schritt 6 und 7 suchen
  15. Eine neue Datei mit Namen main.c anlegen
  16. coden 😉

Kompilieren und flashen tut man das Projekt dann mit dem “Hammer”-Button in der Menüleiste – es muss dabei im Dropdown “Release” ausgewählt sein.

Mit Hilfe von, und, und, und.

5 thoughts on “Arduino mit Eclipse als IDE

  1. Alter Schwede. 🙂 Das ist ja echt hartes Brot. Ich hätte erwartet, daß der Arduino leichter einzurichten ist für Eclipse. Aber es kommen wohl nur wenige aus der Java-Ecke… (?)

  2. Pingback: Arduino Development in Eclipse under OSX | enterfra.me | Sebastian Telschow

  3. Es gibt jetzt ein Plugin fuer Eclipse, was den gesamten Prozess sehr vereinfacht, siehe

    http://eclipse.baeyens.it/

    Dies ist ein “Komplettpaket” und fuehrte bei mir innerhalb von 10 Minuten zu einem compilierten und upgeloadetem “blink” Programm. (unter linux)

    Gruss,
    Michael

Leave a Reply

Your email address will not be published.

Ich erkläre mich damit einverstanden, dass alle eingegebenen Daten und meine IP-Adresse zum Zweck der Spamvermeidung durch das Programm Akismet in den USA überprüft und gespeichert werden. Weitere Informationen zu Akismet und Widerrufsmöglichkeiten.