This shows you the differences between two versions of the page.
| Next revision | Previous revision | ||
| et:examples:setup:avrstudio:atmega2560 [2012/06/18 15:33] – tekitatud raivo.sell | et:examples:setup:avrstudio:atmega2560 [2020/07/20 12:00] (current) – external edit 127.0.0.1 | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| + | ====== AVR Studio ATmega2561 ====== | ||
| + | |||
| + | |||
| + | ===== 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. | ||