Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
et:examples:setup:windows:eclipse_v5 [2012/06/18 12:27] – eemaldatud raivo.sellet:examples:setup:windows:eclipse_v5 [2020/07/20 09:00] (current) – created - external edit 127.0.0.1
Line 1: Line 1:
 +====== Arenduskeskkond Eclipse (Windows) ATmega2561 ======
  
 +Järgnev juhend kirjeldab Kodulabori versioon 5 (Kontroller v1 - ATmega2561) arenduskeskkonna paigaldamist ja esmast seadistamist.
 +
 +===== Tarkvara paigaldamine =====
 +
 +Paigaldamiseks laadige alla Robootika Kodulabori arenduskeskkond vastavalt oma operatsioonisüsteemile. Arenduskeskkond sisaldab endas Eclipse arenduskeskkonda, Eclipse AVR pluginat, Robootika Kodulabori teeki, Kodulabori programmeerimisvahendeid ja näidisprojekti.
 +
 +**MS Windows**
 +
 +Tarkvara allalaadimine -> [[et:files|Eclipse HomeLab pakk]]
 +
 +**Linux Ubuntu**
 +
 +Tarkvara allalaadimine -> [[et:files|Homelab-keyring]]
 +
 +**Linux/muud ja Mac OS**
 +
 +Paigaldage järgmine tarkvara:
 +  * Eclipse 
 +  * Eclipse AVR plugin
 +  * Hlinit
 +  * Hlflash
 +  * AVRdude mod.
 +  * Robootika Kodulabori teek
 +
 +===== Projekti loomine =====
 +
 +Kui arendustarkvara on paigaldatud saab alustada programmi kirjutamist, kuid eelnevalt on vaja teha siiski mõned seadistused ja luua projekt.
 +Uus projekt, sisaldab endas tüüpiliselt palju erinevaid faile: programmikoodi(e), päisfaile, kompileeritud programmi jne. Selleks, et projektid oleks korrektselt eristatavad, tuleks iga projekti jaoks luua uus kataloog (seda võimalust pakub uue projekti loomise abimees).
 +
 +Uue projekti loomiseks tuleb läbida järgmised sammud:
 +
 +**1.** Avada Eclipse (Robotic HomeLab IDE) ja alustada uue projekt seadistamist. Kui Tarkvara on äsja paigaldatud, on esmalt vaja tekitade projektide repositoorium ehk //Workspace//. Selleks näidake avanenud aknas //Workbench// asukoht, kuhu soovite projektide repositooriumi luua.
 +
 +{{:software:eclipse:eclipse0.jpg?520|}}
 +{{:software:eclipse:eclipse1.jpg?500|}}
 +
 +Uue projekti loomiseks tuleb valida menüüst //File - New - C project//. Lisada projekti nimi ning vajutada nupule //Next//.
 +
 +**2.** Järgmises aknas tuleks projekti konfiguratsiooniks valida ainult Release
 +
 +{{:software:eclipse:eclipse3.jpg?400|}}
 +
 +**3.** Järgnevalt avaneb aken, kus tuleb märkida mikrokontrolleri tüüp ja taktsagedus. Kodulabori (v5) mikrokontrolleriks on //ATmega2561// ja taktsageduseks 14745600 Hz. Projekti lõplikuks loomiseks vajutada nupule //Finish//.
 +
 +{{:software:eclipse:eclipse4.jpg?400|}}
 +
 +**4.** Nüüd avaneb juba programmeerimise kasutajaliides, kuid enne, kui saab hakata programmi kirjutama, on vaja tekitada algkoodi fail. Selleks valige äsjaloodud projektil hiire parema klahviga //New - Source File// ja sisestage soovitud faili nimi, mis peab kindlasti lõppema laiendiga ".c". Soovitav on peafaili nimeks valida "main.c". Peale //Finish// nupu vajutamist luuakse vastav fail ja avatakse see arenduskeskkonda.
 +
 +{{:software:eclipse:eclipse5.jpg?400|}}
 +
 +**5.** 
 +Enne lähtekoodi kirjutamist on mõistlik teha mõned seadistused, mis peaks hõlbustama arenduskeskkonna kasutamist.
 +Valige menüüst //Window - Preferences// ja avage vasakul olevast puust //General - Workspace// ning märkiga ära valik //Save automatically before build//
 +
 +{{:software:eclipse:eclipse6.jpg?400|}}
 +
 +**6.** Edasi võib hakatuseks kopeerida alloleva testprogrammi lähtekoodi ja üritada seda kompileerida. Kompileerimiseks võib kasutada klahvikombinatsiooni CTRL+B.
 +
 +<code c>
 +//Lihtne testprogramm, mis ei kasuta Kodulabori teeki.
 +#include <avr/io.h>
 + 
 +int main(void)
 +{
 + unsigned int x,y;
 + // Viigu PB7 seadmine väljundiks
 + DDRB = 0x80;
 + 
 + // Lõputu tsükkel
 + while (1)
 + {
 + // Viigu PB7 inverteerimine
 + PORTB ^= 0x80;
 + y=3200;
 + while(y--){ 
 +    x=260;
 +    while(x--){
 +    asm volatile ("nop");
 +    }
 +  } 
 + }
 +}
 +</code>
 +
 +Kompileerumise õnnestumiseks peab olema tarvarakood ilma vigadeta ja kompilaator peab leidma kõik vajalikud päisfailid. Eduka kompileerumise tunnuseks on //Problem// aknas tühjus (äärmisel juhul mõni hoiatus //Warning//) ja //Console// aknas kompilaatori väljund mis antud projekti puhul on midagi sellist:
 +
 +  AVR Memory Usage
 +  ----------------
 +  Device: atmega2561
 +  Program:     308 bytes (0.1% Full)
 +  (.text + .data + .bootloader)
 +  Data:          0 bytes (0.0% Full)
 +  (.data + .bss + .noinit)
 +  Finished building: sizedummy
 +
 +{{:software:eclipse:eclipse7.jpg?520|}}
 +
 +Kui koodis oli viga või ei leitud päisfaile, siis on //Console// aknas viimasel real veateade koos leitud vigade arvuga, millele eelneb leitud võimaliku vea kirjeldus.
 +
 +  ../main.c: In function 'main':
 +  ../main.c:23: error: expected ';' before 'while'
 +  ../main.c:13: warning: unused variable 'x'
 +  make: *** [main.o] Error 1
 +
 +Samuti on //Problems// aknas erinevad veateated ja vastav koht koodis märgitakse vea ikooniga.
 +
 +{{:software:eclipse:eclipse8.jpg?520|}}
 +
 +**7.** Kodulabori teegi kasutamine eeldab, et see on tarkvara paigaldamise juhendi kohaselt süsteemi paigaldatud. Iga projekti korral tuleb teek projekti seadetest lisada lingitavate objektide nimekirja. Selleks avada esmalt: //Project -> Properties// ja seejärel vasakust puust //C/C++ Build -> Settings//, edasi //Tool Settings -> AVR C linker -> Libraries//. Paremal avanenud aknas valida //Libraries (-l)// osas ikoon //Add...// ja sisestada avanenud aknasse homelab2561. Seejärel //OK// ja veelkord //OK//.
 +
 +{{:software:eclipse:eclipse10.jpg?520|}}
 +
 +**8.** Edasi võib teegi testimiseks kopeerida alloleva testprogrammi lähtekoodi eelmise asemele ja üritada seda kompileerida. Kompileerimiseks võib kasutada klahvikombinatsiooni CTRL+B.
 +<code c>
 +//Lihtne testprogramm, mis kasutab Kodulabori teeki.
 +#include <avr/io.h>
 +#include <homelab/delay.h>
 +
 +int main(void)
 +{
 + // Viigu PB7 seadmine väljundiks
 + DDRB = 0x80;
 +
 + // Lõputu tsükkel
 + while (true)
 + {
 + // Viigu PB7 inverteerimine
 + PORTB ^= 0x80;
 + hw_delay_ms(500);
 + }
 +}
 +</code>
 +
 +Kui ka selle koodi kompileerimine õnnestub, siis on kõik eelnevad seadistused tehtud õigesti.
 +
 +<pagebreak>
 +
 +===== Kontrollerile koodi laadimine =====
 +
 +**1.** Ühendada kontrollerplaat USB kaabliga arvutiga. Peale kontrollerplaadi ühendamist peaks (esmasel ühendamisel teatud aja pärast) süttima väike roheline toite LED - PWR. 
 +
 +**2.** Määrata programmi laaduri (AVRDude) seaded. Selleks avada uuesti projekti seaded //Project -> Properties// ja seejärel vasakust puust //AVR -> AVRDude//, edasi //Programmer configuration -> New//. Avanenud aknas midagi eriti seadistada pole vaja ja võib kohe //OK// vajutada. Veenduge et see oleks valitud ja vajutage //Apply// ning //OK//.
 +
 +{{:software:eclipse:eclipse9.jpg?520|}}
 +
 +Oluline on kontrollida, et nüüd oleks //Programmer configuration// valikus midagi valida ja juhul kui eelnevalt midagi ei muudetud on selleks: //New Configuration//.
 +
 +{{:software:eclipse:eclipse11.jpg?520|}}
 +
 +
 +**3.** Kui Kodulabori Kontrollermoodul on arvutiga ühendatud võib kompileeritud programmi nüüd üritada laadida kontrollerisse. Selleks vajutage lihtsalt AVR ikoonile või klahvikombinatsioon CTRL + Alt + U. 
 +
 + 
 +Programmi mõjul peaks kontrolleri plaadil olev oleku-LED PB7 perioodiliselt süttima ja kustuma. Kui programm töötab, on tarkvara paigaldatud edukalt ja esimene projekt tehtud. Palju õnne!
 +
 +{{:kit:kit_2561_test.jpg?400|}}
 +
 +===== Ujukoma-arvude kasutamine =====
 +
 +Mõnikord tekib vajadus AVR programmis kasutada ujukoma-arve. Nendega arvutamiseks ja nende esitamiseks printf-tüüpi funktsioonidega tuleb projekti seadistustes teha järgmised muudatused:
 +
 +1. Avada projekti seaded menüüst File → Properties. Vasakul paneelil avada C/C++ Build → Settings. Paremal avanenud valikust valida AVR C Linker → Libraries, kuhu tuleb lisaks kodulabori teegile lisada teegi objektid //printf_flt// ja //m// (libprintf_flt.a ja libm.a).
 +
 +2. Seejärel tuleb avada AVR C Linker → General ja //Other Arguments// kasti lisada read rida //-uvfprintf//.
 +
 +{{:examples:eclipse:eclipse_floating_point_libraries.png?520|}}
 +
 +{{:examples:eclipse:eclipse_floating_point_printf.png?520|}}
 +
 +3. Vajutada OK ja sulgeda seadete aken.
et/examples/setup/windows/eclipse_v5.1340022447.txt.gz · Last modified: 2020/07/20 09:00 (external edit)
CC Attribution-Share Alike 4.0 International
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0