This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revision | |||
et:examples:setup:windows:v5 [2012/06/18 12:33] – eemaldatud raivo.sell | et:examples:setup:windows:v5 [2020/07/20 09:00] (current) – created - external edit 127.0.0.1 | ||
---|---|---|---|
Line 1: | Line 1: | ||
+ | ====== Arenduskeskkond AVR Studio (Windows) ATmega2561 ====== | ||
+ | Järgnev juhend kirjeldab Kodulabori versioon 5 (Kontroller v1 - ATmega2561) arenduskeskkonna paigaldamist ja kasutamist Windows operatsioonisüsteemis. | ||
+ | |||
+ | ===== Tarkvara paigaldamine ===== | ||
+ | |||
+ | Enne paigaldamist tuleks hankida alljärgnev tarkvara, kas tootja või Kodulabori kodulehelt või Kodulaboriga kaasas olevalt plaadilt. | ||
+ | |||
+ | **1. AVR Studio** | ||
+ | |||
+ | AVR Studio on Atmeli arenduskeskkond (inglise keeles IDE // | ||
+ | |||
+ | **2. WinAVR** | ||
+ | |||
+ | WinAVR on GNU-GCC kompilaator AVR mikrokontrolleritele. See on vabavara, mille leiab Sourceforge veebilehelt. WinAVR pakub paigaldamisel välja kataloogi nime, mis sisaldab lisaks nimele versiooni numbrit, kuid kataloog tuleks käsitsi muuta lihtsalt: | ||
+ | |||
+ | C:\WinAVR | ||
+ | |||
+ | **3. Kodulabori teek** | ||
+ | |||
+ | Kodulabori teek sisaldab programmi lihtsustavaid funktsioone AVR ja Kodulabori komplekti osade kasutamiseks. Teegi viimase versiooni leiab Kodulabori veebilehelt. Teek tuleb kindlasti installeerida samasse kataloogi, kus on WinAVR. ATmega2561 kontrolleriga varustatud Kodulabori (Controller board v1.x) jaoks on sobiv homelab_library_v2.x. | ||
+ | {{: | ||
+ | |||
+ | **4. JTAG liides** | ||
+ | |||
+ | JTAG liides - HappyJTAG2 on liides programmaatori ja AVR Studio vahele. Tarkvara on pakitud zip failiks ja piisab selle lahtipakkimisest soovitud kataloogi näiteks C:\WinAVR (tarkvara eraldi paigaldada ei ole vaja) | ||
+ | {{: | ||
+ | |||
+ | **5. Programmaatori ajur** | ||
+ | |||
+ | Ajur võimaldab arvutiga ühendada programmaatori, | ||
+ | |||
+ | {{ : | ||
+ | {{ : | ||
+ | |||
+ | Enne järgmist sammu tuleks oodata, kuni paigaldamine on täielikult valmis. | ||
+ | |||
+ | |||
+ | ===== Projekti loomine ===== | ||
+ | |||
+ | Kui arendustarkvara on paigaldatud saab alustada programmi kirjutamist. | ||
+ | AVR kontrolleri programmi kirjutamiseks tuleb luua uus projekt, mis tüüpiliselt sisaldab endas palju erinevaid faile: programmikoodi(e), | ||
+ | |||
+ | Uue projekti loomiseks tuleb läbida järgmised sammud: | ||
+ | |||
+ | **1.** Avada AVR Studio ja vajutada nupule uus projekt (//New Project//). Juhul kui vastav aken automaatselt ei avane, valida menüüst //Project - New project//. Pärast sobivat sisestust vajutada nupule //Next//. | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | **2.** Avaneb aken, kus tuleb märkida kompilaatori ja failide algseaded. Kompilaatoriks valida AVR GCC ja paremas akna osas sisestada projekti nimi ning algkoodi faili nimi. Algkoodi faili nimi peaks kindlasti lõppema laiendiga " | ||
+ | |||
+ | NB! Kui kompilaatori valikus puudub AVR GCC, siis ei ole WinAVR korrektselt paigaldatud ja seda tuleks enne C-keele programmi kirjutamist kindlasti teha. | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | **3.** Järgnevalt avaneb aken, kus tuleb märkida kasutatav silumise platvorm ja mikrokontrolleri tüüp. Kodulaboris (v5) on silumise platvormina kasutusel //JTAGICE mkII// programmaator ja mikrokontrolleriks on // | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | **4.** Nüüd avaneb juba programmeerimise kasutajaliides, | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | < | ||
+ | |||
+ | **5.** Enne koodi kompileerimist tuleb määrata projekti seaded. Olulisemad seaded on kontrolleri taktsagedus ja kompilaatori optimeerimismeetod. Kodulabori kontrolleri taktsagedus on 14,7456 MHz ehk 14745600 Hz. See sagedus tuleb hertsides määrata //Project -> Configuration Options -> General// aknas. Optimeerimise meetodiks jätta -Os, kui ei ole konkreetset vajadust teiste meetodite järgi. | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | **6.** Kodulabori teegi kasutamine AVR Studio-ga eeldab, et see on tarkvara paigaldamise juhendi kohaselt süsteemi paigaldatud. Iga projekti korral tuleb teek projekti seadetest //Project -> Configuration Options -> Libraries// lisada lingitavate objektide nimekirja. | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | Kui objekt // | ||
+ | |||
+ | < | ||
+ | |||
+ | ===== Seadistuste testimine ===== | ||
+ | |||
+ | Kui arenduskeskkond on esimest korda paigaldatud ja seadistatud, | ||
+ | |||
+ | **1.** Ühendada kontrollerplaat USB kaabliga arvutiga. Peale kontrollerplaadi ühendamist peaks süttima väike roheline toite LED - PWR. | ||
+ | |||
+ | **2.** Käivita liidesprogramm HappyJTAG2 ja seejärel AVR Studio. Oluline on sammude järjekord. Esmalt tuleb ühendada kontroller arvutiga ja veenduda, et kontroller lülitub sisse. Seejärel käivitada programm HappyJTAG2 ja AVR Studio. | ||
+ | |||
+ | **3.** AVR Studios luua vajadusel projekt ja sisestada lihtne C-kood: | ||
+ | |||
+ | Testida võib kahte erinevat koodi. Esimene neist kasutab Kodulabori teeki, teine teeb sama asja ilma teegita. | ||
+ | |||
+ | <code c> | ||
+ | //Lihtne testprogramm, | ||
+ | #include < | ||
+ | #include < | ||
+ | |||
+ | 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 c> | ||
+ | //Lihtne testprogramm, | ||
+ | #include < | ||
+ | |||
+ | 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 (" | ||
+ | } | ||
+ | } | ||
+ | } | ||
+ | } | ||
+ | |||
+ | </ | ||
+ | |||
+ | |||
+ | [{{ : | ||
+ | |||
+ | Kompileerida programm käsuga //Build// (kiirklahv F7) ja kontrollida, | ||
+ | |||
+ | Build succeeded with 0 Warnings... | ||
+ | |||
+ | < | ||
+ | |||
+ | **4.** Avada koodi laadimise aken nupust //Tools -> Program AVR -> Auto Connect//. Tulemuseks peaks avanema kompileeritud faili mikrokontrollerisse laadimise aken. Kontrollige, | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | |||
+ | Kui eespool toodud aken ei avane ja avaneb aken // | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | **5.** Programmaatori aknas sisestada // | ||
+ | |||
+ | OK | ||
+ | Reading FLASH input file.. OK | ||
+ | Setting device parameters for jtag programming ..OK | ||
+ | Entering programming mode.. OK | ||
+ | Erasing device.. OK | ||
+ | Programming FLASH .. OK | ||
+ | Reading FLASH .. OK | ||
+ | FLASH contents is equal to file.. OK | ||
+ | Leaving programming mode.. OK | ||
+ | |||
+ | 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! | ||
+ | |||
+ | {{: | ||
+ | |||
+ | ===== Siluri kasutamine ===== | ||
+ | |||
+ | [{{ : | ||
+ | |||
+ | Programmi silumiseks (inglise keeles // | ||
+ | |||
+ | Programmi käivitamiseks siluri režiimis AVR Studio-ga tuleks see esmalt kompileerida nupuga //Build// (kiirklahv F7) ja käivitada kompileeritud programm käsuga //Run// (kiirklahv F5). Programmi lähtekoodi võib enne seda soovitud kohtadele lisada katkestuspunkte (inglise keeles //break point//) (kiirklahv F9). Kui programmi täitmine jõuab katkestuspunktini, | ||
+ | |||
+ | ===== Ujukoma-arvude kasutamine ===== | ||
+ | |||
+ | Mõnikord tekib vajadus AVR programmis kasutada ujukoma-arve. Nendega arvutamiseks ja nende esitamiseks // | ||
+ | |||
+ | **1.** Avada projekti seaded menüüst //Project -> Configuration Options//. Seadete kaardil // | ||
+ | |||
+ | **2.** Seejärel tuleb avada //Custom Options// kaart ja valida //[All files]// sektsioon. Parempoolsesse kasti lisada read " | ||
+ | |||
+ | **3.** Vajutada OK ja sulgeda seadete aken. |