Eclipse Neon – návod na inštaláciu

Eclipse Neon - návod na inštaláciu

Eclipse je ďalšie z mnoha IDE, v ktorom píšeme zdrojový kód a ladíme programy. Tento nástroj, ktorý okrem iného ponúka príjemné pracovné prostredie, debugger a nemalé množstvo rozširujúcich plugginov, je možné používať bezplatne.

V tomto článku popisujem, ako sa inštaluje Eclipse, používa a naprogramujeme si i jednoduchú aplikáciu. Tak poďme na to.

Tento článok popisuje, ako nastaviť Eclipse a AVR Eclipse plugin, aby bolo možné vyvíjať programy pre Arduino Uno na počítači so systémom Windows. Malo by to fungovať aj pre ostatné dosky Arduina.

Existuje mnoho článkov na internete o vývoji programov pre Arduino, ale väčšina z nich sú zastaralé, príliš komplikované, založené na systéme Linux a tak ďalej. To je úplne prirodzené vzhľadom na rýchlosť, s akou sa menia nástroje, takže tento článok bude skôr či neskôr tiež zastaralý. Ale teraz (začiatkom roka 2017) by mal fungovať dobre a verím, že je tiež „primerane jednoduchý“. Tento článok je založený na Eclipse Neon s AVR Eclipse plugin a Arduino IDE 1.8.1.

Asi Vám netreba povedať, prečo používať Eclipse namiesto Arduino IDE. Ak máte v pláne vytvárať zložitejšie projekty s Arduinom alebo dokonca sa vidíte ako softvérový vývojár, čoskoro Vám Arduino IDE nebude postačovať. A potom existujú dve hlavné možnosti: Eclipse alebo Atmel Studio. Ak toto čítate, pravdepodobne ste sa rozhodli pre Eclipse.

Akonáhle ste si vybrali Eclipse, existujú dve hlavné cesty, ktoré si môžete vybrať:

Prvá cesta je jednoduchšia, zaraďuje sa niekde medzi reálnym svetom programovania a Arduino IDE. Napríklad možnosti nastavenia kompilátora sú veľmi obmedzené. Ale i tento plugin sa rýchlo rozvíja, takže možno v aktuálnej verzii sa veci zlepšili. Tento článok je o druhej ceste, pomocou AVR Eclipse plugin.

Inštalácia

Budeme potrebovať nasledujúce nástroje:

Aduino IDE

Ako prvé nainštalujeme Arduino IDE. Návod na inštaláciu som popísal v tomto článku.

Eclipse IDE

Inštalačné súbory stiahneme zo stránok eclipse.org a to buď ako inštalátor alebo ako .zip súbor.

  • .exe inštalátor – stiahneme inštalačný súbor kliknutím na Download, po stiahnutí a spustení vyberieme položku „Eclipse IDE for C/C++ Developers“ a necháme naištalovať aplikáciu
  • .zip archív – klikneme na „Download Packages“, vyberieme „Eclipse IDE for C/C++ Developers“ a v pravo pod download links stiahneme .zip súbor, ktorý potom stačí rozbaliť do akéhokoľvek adresára v počítači a spustiť eclipse.exe. Vytvoriť si môžete i zástupcu na plochu.

Po spustení Eclipse, je potrebné vybrať miesto pre váš pracovný adresár (workspace). Jedná sa o adresár v počítači, kde budú umiestnené všetky vaše projekty. Neskôr môžete použiť niekoľko pracovných adresárov a zmeniť predvolené umiestnenie, ale teraz odporúčam použiť ponúkaný východiskový adresár. Okno prostredia po spustení vyzerá takto:

Eclipse Neon C++ Developers - Welcome to the Eclipse IDE

AVR Eclipse plugin

Teraz, keď už máme Eclipse nainštalovaný a spustený, klikneme v menu na „Help > Install New Software“. Do kolonky „Work with:“ zadáme nasledovnú adresu http://avr-eclipse.sourceforge.net/updatesite a stlačíme enter. Po chvíli sa nižšie zobrazí uvedený zoznam s položkou „AVR Eclipse Plugin“. Líšiť sa môže aktuálnou verziou. Vyberte ho zaškrtnutím políčka vedľa názvu pluginu a kliknite na tlačidlo „Next“.

AVR Eclipse Install - Avaible Software - Work with

Postupujte podľa pokynov sprievodcu inštalácie pluginu. Budete musieť súhlasiť s licenčnou zmluvou a potvrdiť nainštalovanie pluginu. Po inštalácii treba prijal ponuku na reštartovanie Eclipse.

MinGW tools

Tento nástroj nemusí inštalovať ten, kto používa Atmel Studio. Použijete súbor make.exe z adresára „[Atmel Studio location]\shellUtils“ ako to bude popísané nižšie.

Ostatný nainštalujú MinGW zo stránok www.sourceforge.net. V hornej časti stránky nájdete link „Looking for the latest version?“ a odkaz na stiahnutie. Stiahnite mingw-get-setup.exe (tu je priamy link).

Spustite inštalačný program. Na prvej obrazovke ponechajte všetky nastavenia na predvolené hodnoty. Môžete zmeniť inštalačný adresár, ak dávate prednosť inému ako predvolenému a kliknite na „Continue“.

MinGW Installation Manager Setup Tool

V ďalšom kroku čakajte na stiahnutie niekoľkých súborov a kliknite na tlačidlo „Continue“.

Mali by ste vidieť okno „MinGW Installation Manager“. V zozname dostupných balíkov kliknite na políčko „msys base“ (posledná položka v zozname). Z kontextového menu vyberte možnosť „Mark for Installation“.

MinGW Installation Manager - Mark for Instllation

Z ponuky v hornej časti okna vyberte položku „Installation > Apply Changes“.

MinGW Installation Manager - Apply Changes

V ďalšom kroku kliknite na tlačidlo „Apply“.

MinGW Shedule of Pending Action - Apply button

Po chvíli by mali byť inštalované nástroje MinGW. Zavrite okno. Teraz sme pripravení nakonfigurovať plugin AVR Eclipse.

Nastavenie AVR Eclipse plugin

Spustite Eclipse a v hlavnom menu vyberte „Window > Preferences“. V tomto okne rozbalte položku „AVR > Paths“. Pomocou tlačidla „Edit…“ na pravej strane nastavte adresáre, ako je to znázornené na nasledujúcom kroku.

Eclipse Preferences - AVR Paths

Môžete vidieť, že väčšina adresárov ukazuje na adresár Arduino. Nástroj „GNU make“ (make.exe) je umiestnený v adresári MinGW (alebo hore v článku spomínaná cesta z Atmel Studia). Tieto adresáre môžu byť rôzne v závislosti na tom, kde ste nainštalovali nástroje. Podľa toho to patrične upravte. V mojom prípade sú cesty nasledovné:

AVR-GCC: C:\Program Files (x86)\Arduino\hardware\tools\avr\bin
GNU make: C:\MinGW\msys\1.0\bin
AVR Header Files: C:\Program Files (x86)\Arduino\hardware\tools\avr\avr\include
AVRDude: C:\Program Files (x86)\Arduino\hardware\tools\avr\bin

Ak chcete nastaviť cesty, zvoľte „Path source: Custom“  a použite tlačidlo „Browse“ v okne pre výber cesty (viď obrázok nižšie).

Eclipse Change Path for GNU make

Ďalej vyberte kategóriu „AVRDude“ na ľavej strane. Označte políčko „Use custom configuration file for AVRDude“. V kolónke „AVRDude config file“ vyhľadajte adresár nainštalovaného Arduino IDE. Okno vyzerá takto:

Eclipse Preferences - AVRDude config file Programmer configurations

A zadajte cestu konfiguračného súboru [Arduino adresár]\hardware\tools\avr\etc\avrdude.conf. V mojom prípade to bolo C:\Program Files (x86)\Arduino\hardware\tools\avr\etc\avrdude.conf.

Teraz treba okno „Preferences“ zatvoriť kliknutím na „OK“ aby sa tieto zmeny uložili (inak by to písalo chybu v ďalšom kroku).

A znovu otvoríme toto isté okno „Preferences“ a položku „AVR > AVRDude“. Klikneme na tlačidlo „Add…“ na pravej strane v kolónke „Programmer configurations“. V okne, ktoré sa otvorí, vyberte zo zoznamu „Programmer Hardware“ položku „Arduino“. Taktiež zadajte nejaký názov do poľa „Configuration name“ nad zoznamom, napríklad Arduino. Potom zadajte sériový port, ku ktorému je pripojené Arduino do kolónky „Override default port“ a nastavte baudovú rýchlosť.

Eclipse Edit AVRDude Programmer Configuration Arduino

V niektorých prípadoch (asi pre Linux) môže byť formát zápisu pre port nasledovný: //./COM15

Na záver zatvorte okno pomocou „OK“ a zatvorte tiež okno „Preferences“. Eclipse IDE je teraz pripravené na vývoj programov pre Arduino.

Náš prvý program

V tejto časti popíšem, ako vytvoriť projekt (program) pre Arduino. Ako prvé si vytvoríme premennú cesty v Eclipse, ktorá nám umožní ľahko aktualizovať svoje projekty, keď sa objaví nová verzia Arduino IDE. Stačí to urobiť iba raz. V hlavnom menu opäť vyberte „Window > Preferences“ a rozbalte položku „General > Workspace > Linked Resources“. Kliknite na tlačidlo „New…“ a v kolónke „Name:“ ju pomenujte názvom „ArduinoPath“. Do kolónky „Location:“ zadaj adresár, kde je nainštalované Arduino IDE, v mojom prípade to bolo „C:\Program Files (x86)\Arduino“ a kliknite na „OK“.

Eclipse Preferences - Linked Resources Arduino Path Variable

Teraz okno „Preferences“ kliknutím na „OK“ zavrite a týmto sme pripravení vytvoriť nový projekt.

Nový projekt

V hornom menu vyberte „File menu > New > C++ Project“ a v kolónke „Project name:“ ho pomenujte „blink“. Označte položku „AVR Cross Target Application > Empty Project“ a kliknite na „Next“.

Eclipse C++ Project name - AVR Cross Target Aplication

V ďalšom kroku všetko ponecháme v pôvodnom nastavení a kliknite na „Next“.

V tomto okne nastavíme „MCU Type: ATmega328P“ a „MCU Frequency (Hz): 16000000“. (čo je 16 MHz).

Eclipse C++ Project - AVR Target Hardware Properties - MCU Atmega328p Type Frequency

A klikneme na „Finish“.

Teraz máme prázdny projekt, takže pridáme odkazy na Arduino súbory do projektu. V okne „Project Explorer“ pravím kliknutím na meno projektu „blink“ z kontextového menu vyberieme „New > Folder“.

Eclipse workspace - Project Explorer - New Folder

Otvorí sa nám okno „New Folder“ kde klikneme na položku „Advanced“ a označíme položku „Link to Alternate location (Linked folder)“. Klikneme na „Variables…“ a v novootvorenom okne „Select Path Variable“ označíme nami hore vytvorenú položku „ArduinoPath“ a klikneme na „Extend…“.

Eclipse New Folder - Select Path Variable

V okne „Variable Extension“ by ste mali vidieť podadresáre adresára Arduino. Prejdite na „hardware\arduino\avr\cores\arduino“ a kliknite na tlačidlo OK.

Eclipse Variable Extension Arduino

Teraz sme sa vrátili späť do okna „New Folder“ a cesta k nášmu adresáru by mala ukazovať na „ArduinoPath/hardware/arduino/avr/cores/arduino“, viď obrázok nižšie.

Eclipse Create New Folder resource - Advanced Link to alternate location

Klikneme na „Finish“ a okno sa nám zavrie.

Rovnaký postup opakujte pre ďalší adresár. Umiestnenie tejto zložky bude „ArduinoPath/hardware/arduino/avr/variants/standard“.

Teraz by ste mali vidieť dva (prepojené) podadresáre v projekte: „arduino“ a „standard“.

Eclipse workspace - Project Explorer subfolders arduino standard

Konfigurácia

Teraz pôjdeme do vlastností nášho projektu. Stlačíme „Alt + Enter“ alebo klikneme pravím tlačítkom na meno projektu a zvolíme „Properties“. Otvoríme si položku „C/C++ Build > Settings“. V hornej časti okna v zozname „Configuration“ vyberte „[All configurations]“. Označte položku „Additional Tools in Toolchain“ a zaškrtnite položku „Generate HEX file for Flash memory“ – výsledný HEX súboru je výstup procesu zostavenia kódu programu, ktorý je neskôr nahraný do mikrokontroléra na Arduino doske.

Eclipse properties for blink - generate hex file for flash memory

Ďalej v tomto okne označíme ďalšiu položku „AVR C++ Compiler > Directories“ a pridáme dve položky, ktoré sme pridali do zoznamu nášho projektu. Najjednoduchší spôsob je z kopírovať a vložiť nasledujúce dve cesty vrátane úvodzoviek kliknutím na malú ikonu „Add…“ a do kolonky „Directory“ vložiť najskôr jeden riadok a potom následne druhý:

„${workspace_loc:/${ProjName}/arduino}“
„${workspace_loc:/${ProjName}/standard}“

Alternatívou tohto postupu je, že kliknete na malú ikonu „Add…“ a potom kliknete na „Workspace“. Rozkliknite názov projektu „blink“ a najskôr vyberte položku „arduino“ a stlačte „OK“ a znova „OK“. Potom postup opakujete aj pre položku „standard“.

Eclipse properties - settings AVR directories include paths compiler

Toto hovorí kompilátoru, že má hľadať zdrojové kódy v týchto lokalitách.

Tento postup v tomto okne opakujeme aj pre položku „AVR Compiler > Directories“.

V okne vľavo sa presunieme teraz na položku „AVR > AVRDude“ a v záložke „Programmer Configuration“ zo zoznamu vyberieme položku „Arduino“. Je to programátor, ktorý sme vytvorili pár krokov hore (okno opäť otvoríte kliknutím na „Edit..“, ak nevidíte žiadnu položku v zozname, vráťte sa do tejto časti kliknutím na „New..“ postupujte podľa krokov hore).

Eclipse properties AVRDude programmer configuration select

Okno zavrieme kliknutím na „OK“ (prípadne na „Yes“).

Zdrojový kód

Teraz si pridáme náš zdrojoví kód setup() a loop(). Klikneme opäť pravím tlačítkom myši na názov nášho projektu a vyberieme teraz položku „New > Source File“. Vložíme názov súboru s príponou „.cpp“. Meno súboru môže byť rovnaké ako názov projektu.

Eclipse new source file blink.cpp

K vytvoreniu súboru kliknite na „Finish“ a zároveň sa objaví v adresári projektu. Otvoríte ho dvojklikom.

Vložte nasledujúci kód do nového súboru a uložte ho:

#include "arduino.h"

void setup(void)
{
    pinMode(13, OUTPUT);
}

void loop(void)
{
    digitalWrite(13, HIGH);
    delay(200);
    digitalWrite(13, LOW);
    delay(2500);
}

POZOR: v predvolenom nastavení Eclipse neukladá súbory pred kompiláciou. Odporúčam nastaviť automatické ukladanie v menu „Window > Preferences > General > Workspace“ zakliknutím položky „Save automatically before build“. Inak budete určite zabúdať pred kompiláciou uložiť projekt po zmene kódu a budete takto kompilovať starú verziu bez týchto zmien v kóde.

Kompilácia programu

Kompiláciu projektu vykonáme kliknutím v menu na „Project > Build Project“. Projekt by mal byť skompilovaný bez chýb. Môžu sa vyskytnúť nejaké varovania ohľadne funkcie oneskorenia (delay), ktoré nemajú vplyv na náš výsledný skompilovaný program. Zostavenie môže prvýkrát trvať trochu dlhšie, pretože všetky základné funkcie Arduina nie sú skompilované, ale potom vytvorenie programu je omnoho rýchlejšie. Kompilátor je dosť chytrý na to, aby potom kompiloval len zmenené súbory.

Eclipse workspace - build project

Nahrávanie programu

Nahratie projektu do svojho Arduina vykonáme nasledovne. Pripojte Arduino dosku do počítača (dajte mu nejaký čas na rozpoznanie dosky). Teraz kliknite na ikonu AVR v paneli nástrojov Eclipse. Program bude nahratý do Arduina. Pozrite sa na výsledky v okne konzoly v dolnej časti Eclipse. Tam budú nejaké správy z AVRDude. Na konci by malo byť niečo takéto „avrdude done. Thank you.“.

Eclipse workspace - project upload AVR avrdude done. Thank you.

Teraz by ste mali vidieť, že LED na Arduine bliká. To znamená, že náš program beží.

Ak sa zobrazí chybové hlásenie „port is blocked“ pravdepodobne máte zlé číslo COM portu v konfigurácii „AVR Eclipse plugin configuration“. Otvorte položku „Window > Preferences > AVR > AVRDude“. V zozname „Programmer configurations“ vyberte položku Arduino a kliknite na „Edit“. Uistite sa, že číslo COM portu je správne. Môžete ho nájsť buď v Arduino IDE alebo vo Windowse v položke „Správca počítača > Porty“.

Nenechajte si ujsť niektoré zo skvelých profesionálnych funkcií IDE, napríklad môžete sa pozrieť do zdrojového kódu funkcií Arduina: stačí vybrať názov funkcie pravým tlačidlom myši a vyberte „Open Declaration“ alebo stačí nad funkciu ponechať kurzor myši a uvidíte náhľad funkcie.

Eclipse - Open declaration

Eclipse - function Arduino view

Teraz ste pripravení rozvíjať svoje programy v Eclipse a objavovať funkcie tohto IDE. O svoje skúsenosti sa podelte v komentároch.


Prvý program: Arduino blikanie LED

Arduino blikanie LEDV tomto článku ti ukážem praktickú ukážku, ako zapojiť a naprogramovať Arduino. Ide o také to programátorské „Hello World“ s Arduinom. V našom prípade to je „Arduino blikanie LED“. Blikanie LED diódou možno bez ďalších súčiastok realizovať s akoukoľvek vývojovou doskou Arduino. V tomto príklade to bude Arduino UNO. Bude to to najjednoduchšie, čo môžeš so …

Atmel Studio 7

Atmel Studio 7Firma Atmel vydala novú verziu svojho editora Atmel Studio 7. Pre nás fanúšikov Arduina je to dobrou správou, pretože sa viac sústreďuje na Arduino. Nové možnosti sú aj v oblasti moderných 32-bitových mikrokontrolérov. Úžasné na Atmel Studiu je aj to, že nepotrebujete mať niektoré mikrokontroléry fyzicky pripojené. Je k dispozícii simulátor, ktorý pozná veľa rôznych …

Ako (ne)zničiť Arduino

Ako zničiť ArduinoČo by si mal vedieť pri zapájaní Arduina a jeho pinov? Určite aspoň to, ako nezničiť Arduino. Nasledujúci súpis zverejňujem preto, aby si sa popísaným chybám mohol vyhnúť. Jedná sa skôr o elektronické chyby zapojenia, než mechanické zničenie. Začiatočníci, ktorí pristupujú k elektronike prvýkrát, tu nájdu lekciu o nevhodnom zapájaní pinov na Arduine. Nesprávnym zapojením …

Pridaj komentár

Vaša e-mailová adresa nebude zverejnená. Vyžadované polia sú označené *

Môžeš použiť tieto HTML značky a atribúty: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>