Eclipse IDE vs Arduino IDE.
Eclipse to bardzo znane środowisko programistyczne pozwalające programować w wielu językach. Od wielu lat rozwijany jest projekt pozwalający w Eclipse używać bibliotek Arduino bez uciążliwych konfiguracji. Wcześniejsze wersje, które używałem kilka lat temu wymagały nieco więcej pracy i dziś wyszedłby z tego niemały Tutorial. Jednak obecnie wystarczy wejść na stronę Eclipse for Arduino i pobrać całe środowisko. Jest też dostępny sam plugin ale wymaga więcej zabiegów.
Ogólnie w Eclipse dużo łatwiej poruszać się po kodzie, można klikając na metodę i F3 (przykładowy skrót klawiszowy) odszukać ich ciało, będące składową w załączonych bibliotekach. Również jest możliwość dodania repozytoriów jak GIT czy SVN. Bardzo pomocne jest podpowiadanie nazw metod i funkcji, czego nie ma w Arduino IDE. Oczywiście przy pisaniu krótkich programów testowych, standardowe IDE z możliwością szybkiego zaciągania przykładów i bibliotek, może być lepszym rozwiązaniem.
Używanie Eclipse i instalacja.
IDE Eclipsa pobieramy dla Windowsa lub Linuxa, następnie po rozpakowaniu można dokonać aktualizacji. W menu głównym Help->Check for Updates.
Można też próbować przez
Help->About...->Installation Details->Update.
Należy jednak zwrócić, uwagę na tryb takiej aktualizacji ponieważ program potrafi aktualizować mimo błędnych zależności i potem będzie problem z włączeniem Eclipsa.
Instalacja bibliotek Arduino w Eclipse.
Jeśli chodzi o biblioteki standardowe do Arduino, to same się pobiorą po pierwszym uruchomieniu.
Aby zainstalować dodatkową bibliotekę, należy ją dołączyć osobno. Na przykładzie biblioteki Timer.h …
Pobieramy ją z Githuba. Po rozpakowaniu katalog Timer-master
umieszczamy w katalogu gdzie mamy zainstalowanego Ecpilse Arduino przykładowo:
c:\EclipseArduino\arduinoPlugin\packages\arduino\hardware\avr\1.6.18\libraries\
Następnie w Eclipsie klikamy na nasz przykładowy projekt ( aby był zaznaczony – to do niego dodamy biblioteki) i wybieramy z menu głównego Arduino->add a library to the selected project
. Pojawi się menu z gdzie wybieramy Timer-master
(teraz powinien tam być widoczny pośród innych bibliotek). Klikamy Finish i to wszystko. Plik nagłówkowy Timer.h dodajemy wpisem #include Timer.h
w naszym głównym pliku projektowym przykładowo: nasz_plik.ino
Przykładowy kod pliku ino powinien wyglądać wtedy tak, nagłówek Arduino.h musi być zawsze, to różni kod pisany w IDE Arduino od Eclipsa:
#include "Arduino.h" // ten nagłówek to stały element gry :) #include "Timer.h" //załączamy tę bibliotekę Timer t; //Tu deklarujemy użycie klasy Timer. void setup() { } void loop() { }
Jeśli chcemy odłączyć bibliotekę to wykonujemy te same czynności tylko usuwamy tym razem „ptaszka” i dodatkowo jeśli dodawaliśmy biblioteki ze wskazaniem na katalog (Add a source folder…) to do ich pozbycia powinien wystarczyć Arduino->Reattach Libraries
.
Zmiana projektu Eclipse ver 3 do ver 4 oraz znane problemy.
Kiedy będziemy w wersji 4 używać workspace-a, w którym znajduje się projekt powstały w wersji 3, dostaniemy zapewne błąd. Arduino.h: No such file or directory.
Najlepszym rozwiązaniem będzie (mimo tutoriala na stronie twórcy) założenie nowego projektu i przekopiowania potrzebnych plików. Jeśli wolimy walczyć to trzeba zrobić tak:
- Wchodzimy w preferencje danego projektu:
C/C++ Build->Tool Chain Editor
tam odznaczyćDisplay compatible...
i wybrać poniżej dowolny inny Toolchain, następnie Apply i ponownie wybraćToolchain Arduino
. Powinien projekt zostać oczyszczony i ponownie załadują się pliki potrzebne do kompilacji. - Następnie przejdź do zakładki
C/C++ General->Preprocessor, include paths,Macro etc
wybierz zakładkaProviders
i wybierzArduino Compiler Settings
. - Dodatkowo należy w
preferencjach->Arduino
jeszcze raz wybrać procesor orazPlatform Folder
, teraz powinno być ok.
Inne problemy
Podkreślanie na czerwono
Nie może być tak łatwo. Czasem zdarza się, że z niewiadomych powodów podkreślane są na czerwono funkcje i metody, a przecież wszystko działa poprawnie i projekt się kompiluje. Dlatego zalecam wersje 32 bitową Eclipsa bo miej się sypie. Na problem z podkreśleniami pomaga pt 1 z opisu wyżej.
Zmiana nazwy projektu
Również czego lepiej nie robić to zmiana nazwy projektu oraz samego pliku *.ino, to pierwsze z pewnością wyrzuci znany błąd: Arduino.h: No such file or directory.
Panaceum na tę dolegliwość to powrót do starych nazw albo punkt 1 oraz 2 z tym, że przy drugim trzeba odznaczyć ptaszka, potem Apply
i znowu zaznaczyć i Apply
.