| Both sides previous revisionPrevious revisionNext revision | Previous revision |
| ru:examples:setup:windows [2013/08/19 14:58] – eduardtlmk | ru:examples:setup:windows [2020/07/20 09:00] (current) – external edit 127.0.0.1 |
|---|
| ====== Arenduskeskkond AVR Studio (Windows) ATMega128 ====== | ====== Среда разработки AVR Studio (Windows) ATMega128 ====== |
| |
| NB! Uue versioon (ATmega2561) paigaldusjuhend asub [[et:examples:setup:windows:v5|siin]] | NB! Руководство по установки новой версии (ATmega2561) находится [[et:examples:setup:windows:v5|здесь]] |
| |
| Järgnev juhend kirjeldab AVR arenduskeskkonna installeerimist ja kasutamist Windowsi operatsioonisüsteemis kasutades arendusplatvormina AVR Studio-t. | В ниже приведенном руководстве описывается установка среды разработки AVR для операционной системы Windows, используя платформу разработки AVR Studio-t. |
| |
| ===== Tarkvara paigaldamine ===== | ===== Установка программного обеспечения ===== |
| |
| Enne paigaldamist tuleks hankida alljärgnev tarkvara, kas tootja või Kodulabori kodulehelt või Kodulabori kohvriga kaasas olevalt plaadilt. | Перед установкой программного обеспечения необходимо добыть нижеследующее программное обеспечение, с сайта производителя или сайта Домашней Лаборатории или с диска находящегося в чемодане Домашней Лаборатории. |
| |
| **1. AVR Studio** | **1. AVR Studio** |
| |
| AVR Studio 4 on IDE (inglise keeles //Integrated Development Environment//), milles toimub tarkvara kirjutamine ja mikrokontrollerisse laadimine. Uusima AVR Studio versiooni leiab selle tootja, Atmeli, kodulehelt. | AVR Studio 4 IDE (inglise keeles //Integrated Development Environment//) – это программа, которая предназначена для написания программного кода и загрузки его в микроконтроллер. Последняя версия AVR Studio находится на веб-сайте производителя Atmel. |
| |
| **2. WinAVR** | **2. WinAVR** |
| |
| WinAVR on GNU-GCC kompilaator AVR mikrokontrolleritele. See on vabavara, mille leiab Sourceforge veebilehelt. WinAVR pakub installeerimisel välja kataloogi nime, mis sisaldab lisaks nimele versiooni numbrit, kuid kataloog tuleks käsitsi muuta lihtsalt: | WinAVR является GNU-GCC компилятором для микроконтроллеров AVR. Это свободное программное обеспечение, которое можно найти на сайте Sourceforge. При инсталляции WinAVR предлагает имя каталога, которое также содержит номер версии, но директория должна быть изменена вручную: |
| |
| C:\WinAVR | C:\WinAVR |
| |
| **3. Kodulabori teek** | **3. Библиотека Домашней Лаборатории** |
| |
| 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. | Библиотека Домашней Лаборатории содержит функции, облегчающие использование AVR и устройств комплекта Домашней Лаборатории. Последняя версия библиотеки находится на сайте Домашней Лаборатории. Библиотека должна быть обязательно установлена в том же каталоге, где WinAVR. |
| |
| **4. Virtuaalne COM pordi ajur** | **4. Драйвер виртуального COM порта** |
| |
| Ajur võimaldab arvutiga ühendada JTAG ICE programmaatori. Ajur tuleb installeerida enne programmaatori ühendamist arvutiga. Paigaldusprogrammi nimi on "CDM x.xx.xx.exe", kus "x" tähistab versiooni. Seejärel tuleb ühendada programmaator arvutiga USB liidese kaudu ja lasta Windows-il teostada automaatne paigaldus. Olekuribal peaks nägema umbes sellist teadet. | Драйвер позволяет подключить к компьютеру программатор JTAG ICE. Драйвер должен быть установлен до подключения к компьютеру программатора. Имя установочной программы 'CDM x.xx.xx.exe», где «х» обозначает версию. Затем необходимо подключить программатор к компьютеру через USB интерфейс, и позволить Windows выполнит автоматическую установку. В строке состояния должно появиться примерно такое сообщение: |
| |
| {{ :examples:install:windows:new_hardware_popup.png?349 |Uue pordi leidmise teade}} | {{ :examples:install:windows:new_hardware_popup.png?349 |Uue pordi leidmise teade}} |
| |
| Sõltuvalt sellest, kui palju virtuaalseid jadaporte on arvutisse eelnevalt paigaldatud ja kasutusele võetud, paigaldab Windows automaatselt järgmise järjekorranumbriga virtuaalpordi. Uus järjekorranumber genereeritakse ka USB pordi vahetamisel. AVR Studio mõned versioonid tunnevad JTAG ICE programmaatori ära ainult jadaportides COM1...COM9 ja silumise funktsiooni lubavad kasutada ainult jadaportides COM1...COM4. Kasutajal on võimalus pordi järjekorranumbrit muuta, kasutades //Device manager// töövahendit. [[et:examples:setup:portissue|Vaata protseduuri veebilehelt]]. | В зависимости от того, сколько виртуальных последовательных портов на вашем компьютере уже установлено и введено в эксплуатацию, Windows автоматически установит следующий порядковый номер виртуального порта. Новый порядковый номер генерируется и при смене порта USB. Некоторые версии AVR Studio признают программатор ICE JTAG, только в последовательных портах COM1 ... COM9 и функцию отладки позволяют использовать только последовательные порты COM1 ... COM4. Пользователь имеет возможность изменить порядковый номер порта, использую инструмент //Device Manager//. |
| | [[et:examples:setup:portissue|Посмотри процедуру на сайте]]. |
| |
| ===== Projekti loomine ===== | ===== Создание проекта ===== |
| |
| AVR programmi kirjutamiseks tuleb luua uus projekt, mis tüüpiliselt sisaldab endas palju erinevaid faile: programmikoodi(e), päisefaile, kompileeritud programmi jne. Selleks et projektid oleks korrektselt eristatavad, tuleks iga projekti jaoks luua uus kataloog (seda võimalust pakub uue projekti loomise abimees). | Для написания AVR программы, необходимо создать новый проект, который обычно включает в себя много различных файлов: программный код (ы), файлы заголовков и компилированные программы т.д. Для того чтобы проекты корректно различались, необходимо для каждого проекта создавать новый каталог. |
| |
| 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//. | **1.** Открыть AVR Studio и нажать кнопку новый проект (//New Project//). Если окно не открывается автоматически, выберите из меню //Project - New project//. Затем нажмите кнопку //Next//. |
| |
| {{ :examples:install:windows:studio_welcome.png?400 |}} | {{ :examples:install:windows:studio_welcome.png?400 |}} |
| |
| **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 ".c". Aknas on võimalik veel märkida valikud automaatseks projekti nimega kataloogi ja algkoodi faili tekitamiseks. Mõlemad valikud on mõistlik ära märkida. Samuti tuleks näidata kataloog, kuhu vastav projektikataloog tekitatakse. Pärast valikute tegemist vajutada nupule //Next//. | **2.** Откроется окно, в котором необходимо обозначить начальные настройки компилятора и файлов. В качестве компилятора выберите AVR GCC и в правом окне введите имя проекта и имя исходного файла. Имя исходного файла должно обязательно иметь расширение “.c“. Необходимо так же указать каталог, где будет создаваться соответствующий каталог проекта. После выбора, нажмите кнопку //Next//. |
| |
| NB! Kui kompilaatori valikus puudub AVR GCC, siis ei ole WinAVR korrektselt paigaldatud ja seda tuleks enne C-keele programmi kirjutamist kindlasti teha. | NB! Если при выборе компилятора отсутствует AVR GCC , то WinAVR установлен неправильно и это необходимо сделать до того, как писать программу на языке Си. |
| |
| {{ :examples:install:windows:studio_new_project.png?400 |}} | {{ :examples:install:windows:studio_new_project.png?400 |}} |
| |
| **3.** Järgnevalt avaneb aken, kus tuleb märkida kasutatav silumise platvorm ja mikrokontrolleri tüüp. Kodulaboris on silumise platvormina kasutusel //JTAG ICE// programmaator ja mikrokontrolleriks on //ATmega128//. Projekti lõplikuks loomiseks vajutada nupule //Finish//. | **3.** Далее открывается окно, в котором отмечается платформа, используемая для отладки типа микроконтроллера. В Домашней Лаборатории используется в качестве платформы для отладки //JTAG ICE// ICE программатор и микроконтроллер //ATmega128//. Для создания проекта нажми кнопку //Finish//. |
| |
| {{ :examples:install:windows:studio_project_programmer.png?400 |}} | {{ :examples:install:windows:studio_project_programmer.png?400 |}} |
| |
| **4.** Nüüd avaneb juba programmeerimise kasutajaliides, kuhu saab hakata kirjutama uut programmi lähtekoodi. | **4.** Далее открывается уже пользовательский интерфейс программирования, куда можно начать писать новый исходный код программы. |
| |
| {{ :examples:install:windows:studio_overview.png?500 |}} | {{ :examples:install:windows:studio_overview.png?500 |}} |
| |
| ~~PB~~ | <pagebreak> |
| |
| **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. | **5.** Перед компиляцией кода, необходимо определить настройки проекта. Наиболее важными параметрами является тактовая частота контроллера и метод оптимизации компилятора. Тактовая частота контроллера Домашней лаборатории 14,7456 МГц (14745600 Гц). Частоту необходимо установить в свойствах проекта в Гц (не МГц) в окне //Project -> Configuration Options -> General//. Метод оптимизации должен остаться -Os, если нет необходимости использовать другие методы. |
| |
| {{ :examples:install:windows:studio_project_properties_general.png?400 |}} | {{ :examples:install:windows:studio_project_properties_general.png?400 |}} |
| |
| **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. | **6.** Для использования домашней лаборатории библиотека функций программного обеспечения должны быть установлены правильно. При каждом проекте необходимо из настроек //Project -> Configuration Options -> Libraries// добавить из списка нужную библиотеку проекта. |
| |
| {{ :examples:install:windows:studio_project_properties_libraries.png?400 |}} | {{ :examples:install:windows:studio_project_properties_libraries.png?400 |}} |
| |
| Kui objekt //libhomelab.a// nimekirjast puudub, siis ei ole Kodulabori teek korrektselt süsteemi paigaldatud. | Если объект //libhomelab.a// отсутствует в списке, то библиотека Домашней Лаборатории установлена неправильно. |
| |
| ~~PB~~ | <pagebreak> |
| |
| ===== Seadistuste testimine ===== | ===== Тестирование установки ===== |
| |
| Kui arenduskeskkond on esimest korda paigaldatud ja seadistatud, on mõistlik testida, kas kõik sai tehtud õigesti. Selleks on lihtsaim viis teha üks väike programm, see ära kompileerida ja laadida kontrollerisse. | После установки среды разработки в первый раз желательно проверить, все ли было сделано правильно. Простейший способ - это написать короткую программу, скомпилировать ее и загрузить в контроллер. |
| |
| **1.** Ühendada programmaator ATmega128 plaadiga. Ühendamisel kontrollida, et programmaator saab ühendatud õigesse pesasse (JTAG) ja õigetpidi (kaabel on suunatud kontrolleri plaadist eemale - vaata järgmist pilti). Peale programmaatori ühendada kontrolleri toide (kontrollerplaadil peab süttima väike roheline LED). Sisestada lihtne C-kood: | **1.** 1. Подключите программатор с платой ATmega128. При подключении проверьте, чтобы программатор был подключен в правильное гнездо (JTAG) (смотри следующее фото). После программатора подключите к плате контроллера питания (если источник питания подключен правильно, то должен загореться маленький зеленый светодиод). |
| |
| <code c> | <code c> |
| int main(void) | int main(void) |
| { | { |
| // Viigu PB7 seadmine väljundiks | // Настройка вывода PB7 выходом |
| DDRB = 0x80; | DDRB = 0x80; |
| |
| // Lõputu tsükkel | // Бесконечный цикл |
| while (true) | while (true) |
| { | { |
| // Viigu PB7 inverteerimine | // Инвертирование вывода PB7 |
| PORTB ^= 0x80; | PORTB ^= 0x80; |
| hw_delay_ms(500); | hw_delay_ms(500); |
| </code> | </code> |
| |
| [{{ :examples:install:windows:studio_quick_buttons.png?267 |Kompileerimise ja programmaatori nupud}}] | [{{ :examples:install:windows:studio_quick_buttons.png?267 |Кнопки компилирования и программатора}}] |
| |
| Kompileerida programm käsuga //Build// (kiirklahv F7) ja kontrollida, et kompileerimine õnnestus. Selleks peab teadete aknasse tekkinud kompilaatori väljundi lõpp olema järgmine: | Скомпилировать программу приказом //Build// (клавиша F7). Убедитесь в том, что компиляция удалась. Для этого должно появиться следующее сообщение: |
| |
| Build succeeded with 0 Warnings... | Build succeeded with 0 Warnings... |
| |
| ~~PB~~ | <pagebreak> |
| |
| **2.** Avada koodi laadimise aken nupust //Tools -> Program AVR -> Auto Connect//. Tulemuseks peaks avanema kompileeritud faili mikrokontrollerisse laadimise aken. Kontrollige, et avatud oleks kaart //Program//. | **2.** Откройте окно загрузки кода с помощью //Tools -> Program AVR -> Auto Connect//. В результате должно открыться окно загрузки скомпилированного файла в микроконтроллер. Убедитесь, чтобы открытой была карта //Program//. |
| |
| {{ :examples:install:windows:studio_programmer.png?400 |}} | {{ :examples:install:windows:studio_programmer.png?400 |}} |
| |
| Kui eespool toodud aken ei avane ja avaneb aken //Connection Failed//, siis puudub ühendus programmaatoriga. Esmalt tuleks kontrollida, kas mikrokontrolleril on järel toide ja kas programmaator on ühendatud õigesti (JTAG pistikusse, kaabel õiges suunas). Kui see on korras, siis tuleks kontrollida, mis COM pordi numbri on Windows programmaatorile omistanud. Kui see on suurem 9-st, siis ei pruugi tarkvara seda leida ja pordile tuleb omistada väiksem järjenumber. | Если приведенное выше окно не открывается и появляется окно //Connection Failed//, то отсутствует связь с программатором. Сначала необходимо убедиться, что на микроконтроллер приходит питание и подключен правильно программатор (к разъему JTAG подключен кабелей в правильном направлении). Если с этим все в порядке, то необходимо проверить какой номер СОМ порта назначил Windows для программатора. Если номер больше чем 9, то программное обеспечение может не найти его и порту нужно назначить меньший порядковый номер. |
| |
| {{ :examples:install:windows:studio_project_programmer_port.png?400 |}} | {{ :examples:install:windows:studio_project_programmer_port.png?400 |}} |
| |
| **3.** Programmaatori aknas sisestada //Flash//-sektsioonis tekstikasti //Input HEX File// kompileeritud fail. Seda saab teha "..." nuppu vajutades. Kompileeritud fail asub tavaliselt projekti alamkataloogis //default// ja see on sama nimega, mis projekt, kuid laiendiga ".hex", näiteks "labor1.hex". Pärast õige faili valimist vajutada nupule //Program//, mis laeb valitud programmi kontrollerisse. Kui kõik õnnestus, tekib programeerimiskeskkonna allosasse teade: | **3.** В окне программатора введите в //Flash//-секцию текстовое поле //Input HEX File// скомпилированный файл. Вы можете сделать это нажатием кнопки "...". Скомпилированный файл обычно находится в подкаталоге проекта //default// и имеет такое же имя, как и проект, но с расширением “.hex“, к примеру, „labor1.hex“. После выбора правильного файла, нажмите на кнопку //Program//, который загрузит выбранную программу в контроллер. Если все удалось, то в нижней части окна среды программирования появится следующее сообщение: |
| |
| OK | OK |
| Leaving programming mode.. 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! | Под влиянием программы на плате контроллера должен периодически загораться и гаснуть индикатор состояния PB7. Если программа работает, то программное обеспечение удачно установлено и первый проект сделан. Поздравляем! |
| |
| {{:kit:kit_test.jpg?400|}} | {{:kit:kit_test.jpg?400|}} |
| |
| ===== Siluri kasutamine ===== | ===== Использование отладчик ===== |
| |
| [{{ :examples:install:windows:studio_debugger_io_view.png?280|ATmega128 registrite loetelu siluris}}] | [{{ :examples:install:windows:studio_debugger_io_view.png?280|Список регистров ATmega128 в отладчике}}] |
| |
| Programmi silumiseks (inglise keeles //debugging//) nimetatakse vigade otsimist programmist. Selleks on loodud eraldi vahendid - silurid (inglise keeles //debugger//), mis võimaldavad programmi täita samm-sammult, peatades seda soovitud kohtades. Selline programmi täitmine võimaldab igas programmi faasis kontrollida muutujate väärtusi, registrite sisusid ja programmi täitmise järjekorda. Eriti oluline on silumise võimaluse kasutamine keerukamate programmide juures, kus vea põhjust on tihti keeruline otsida. Mikrokontrollerite puhul on veel oluline, et tarkvara samm-sammult täitmine toimub reaalselt kontrolleris ja võimaldab nii lisaks registrite väärtuste vaatamisele näha ka reaalsete väljundite muutumist. Siluri kasutamiseks on eelkõige vaja kahte tingimust: kasutatav mikrokontroller peab silumist toetama ja peab olema silumist toetav riistvara - JTAG programmaator. Odavamad programmaatorid, mis kasutavad ISP programmeerimise liidest, võimaldavad laadida kontrollerisse kompileeritud programmi, kuid ei võimalda silumist. | Отладкой программы (на английском языке //debugging//) называется поиск ошибок в программе. Для этого созданы отдельные средства – отладчики (на английском языке //debugger//), которые позволяют выполнять программу от шага к шагу, останавливаясь в желательных для этого местах. Такое выполнение программы позволяет в каждой фазе программы контролировать значение переменных, содержание регистров и порядок выполнения программы. Наиболее важно использование отладки при сложных программах, где часто поиск ошибки затруднен. Для использования отладчика нужны прежде всего два условия: используемый микроконтроллер должен поддерживать отладку и необходимо программное обеспечение поддерживаемое отладку – JTAG программатор. Более дешевые программаторы, которые используют интерфейс программирования ISP, позволяют загружать в контроллер скомпилированную программу, но не позволяют её отладку. |
| |
| 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, peatatakse programmi töö, võimaldades nii uurida mikrokontrolleri olekut sellesse punkti jõudmisel. Programmi täitmist võib jätkata jällegi käsuga //Run// või siis kasutada käskhaaval täitmist käsuga //Step Into// (kiirklahv F11). | Для запуска программы с AVR Studio в режиме отладки необходимо сначала её скомпилировать кнопкой //Build// (клавиша F7) и запустить скомпилированную программу приказом //Run// (клавишей F5). В программный код можно заранее добавить в желаемые места пункты прерывания (на английском языке //break point//) (клавиша F9). Когда выполнение программы дойдет до пункта прерывания, остановиться работа программы, позволяя таким образом выяснить состояние микроконтроллера при достижении в этот пункт. Выполнение программы можно заново возобновить приказом //Run// или приказом //Step Into// (клавиша F11). |
| |
| ===== 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: | Иногда возникает необходимость в программе AVR использовать чисел с плавающей запятой. Для их вычисления и представления функцией //printf// типа необходимо в настройках проекта сделать следующие изменения: |
| |
| **1.** Avada projekti seaded menüüst //Project -> Configuration Options//. Seadete kaardil //Libraries// tuleb sinna, kuhu on lisatud Kodulabori teegi objekt //libhomelab.a//, järgi lisada ka //libprintf_flt.a// ja //libm.a//. | |
| |
| **2.** Seejärel tuleb avada //Custom Options// kaart ja valida //[All files]// sektsioon. Parempoolsesse kasti lisada read "-lprintf_flt" ja "-lm". //[Linker Options]// sektsiooni lisada rida "-uvfprintf". | **1.** Откройте настройки проекта из меню //Project -> Configuration Options//. На карте настроек //Libraries//, куда добавлен объект //libhomelab.a// библиотеки Домашней Лаборатории, добавить файлы //libprintf_flt.a// и //libm.a//. |
| |
| **3.** Vajutada OK ja sulgeda seadete aken. | **2.** Затем необходимо открыть карту //Custom Options// и выбрать секцию //[All files]//. В правой ячейке добавить строки "-lprintf_flt" и "-lm". В секцию //[Linker Options]// добавить строчку "-uvfprintf". |
| | |
| | **3.** Нажмите ОК и закройте окно настройки. |