Инсталиране на софтуера.
- Задайте WINAVR срещу 1.4 или по-висока. WINAVR съдържа AVR GCC компилатор. които в бъдеще ще използваме изпод AVR Studio.
- Рестартирането на компютъра.
- Инсталирайте AVR Studio 4.
ZapuskaemAVR Studio 4.
- На първия старт (и когато използвате, ако не премахне квадратчето Покажи диалогов прозорец при стартиране) се появява диалогов прозорец, помощник. Щракнете върху бутона Нов проект. Появява се нов диалогов прозорец.
- Списъкът вид на проекта, изберете вида на проекта AVR GCC. Line Име на проекта даде на проекта име, като SOS. Линия Местоположение Посочете папката, в която проектът ще се намира нашия пример J: \ MyPojects \ SOS \. Щракнете върху бутона, ще се появи нов диалогов прозорец.
- В списъка, изберете Debug Platform (все още) AVR Simulator. но в бъдеще аз препоръчвам да си купите или да направите дебъгер JTAG ICE. или по-бърз брат JTAG mkll. В списъка с устройства, изберете вида на микроконтролер, за която ние ще напишем програма. Щракнете върху бутона Finish. прозорец Project ще се появи J: \ MyPojects \ SOS \ SOS. в. Но преди да започнете да пишете кода на източника, трябва да направите две по-важни операции.
- Натиснете на проекта \ конфигурационни опции. в Frequensy линия показва честотата, с която да се работи в нашия микроконтролер, например 4000000 Hz. Тази опция е необходимо да се знае компилатор за съставяне на правилно, някои характерни за AVR ССЗ съставител функции, като например закъснения.
- Кликнете Build \ Build. Компилаторът автоматично ще генерира папка в J: \ My_Pojects \ SOS \ подразбиране грим файл.
Като цяло, има няколко C компилатор за AVR микроконтролери. Най-често използваните от другите съставителите - IAR и код визия AVR.
Основните предимства на AVR GCC са: само това е безплатно, но тя е вградена в AVR Studio. Той генерира най-компактен код, особено при използване на числа с плаваща запетая.
Предимствата на IAR трябва да включват факта, че само той напълно подкрепя C ++, AVR GCC поддържа C ++, но не напълно.
Предимствата на визия AVR кодът е присъствието в него на първоначалния код генератор, което го прави лесен за конфигуриране на контролера и да пишат някои функции, като например 1- тел интерфейс и LCD модули. В допълнение, дебъгерите Кодекса визия AVR имат възможност да се свържете AVR Studio (но не всички).
По този начин, основни недостатъци са AVR GCC - липса на пълна подкрепа на C ++ и липсата на старт генератора на код. Липсата на пълна поддръжка на C ++ за микроконтролери не са много важни, тъй като първоначалната генератора код може да бъде успешно заменя с развитието на библиотечните функции WINAVR. той може да допълни своя собствена.
Започваме създаване на изходния текст. Структурата на програмата в C.
Напишете програма за микроконтролера ATmega 16, която ще се формира от всички Port B сигнал «SOS». Ако някоя изходен порт B за свързване на LED катода и анода свързан с положителен през резистор 560 ома, то мига предаване SOS в морзов код сигнал.
Програми обикновено започват с директиви предпроцесорни (започва с "#"), които, всъщност, не са езикови конструкции С и зърно газопровод преди самото съставяне на програмата. Техният смисъл - тя не се разширява, което код в програмата. Така, например, често се използва директивата # включват. която включва изходния файл на програмата текстови появата на заглавната част на файла (разширение. з). Header файлове съдържат оп-определеност на глобалните типове, константи, променливи и функции.
# включват
# включват
// Процедура "пауза", времето за пауза е настроен на процедурите "Point" и "тире" параметър мс.
нищожен Pause (грозен Чар мс) // Вид на променливите мс - грозен Чар. който е 0-255.
PORTB = 0xFF; // Задаване на всички констатации от журнала на порт B. 1.
_delay_ m S (MS); // закъснение
В допълнение към знаците +, -, *, /,% може да се Побитовото и се операция. Когато съкратени записи между героите не може да се сложи на място!
Когато нарастване или спадане се използва в експресията е важно, когато има два знака + или - преди или след променлива променлива:
А = В ++; / * Тази линия е C: вземете стойността на променливата В я възлага на променлива и след това добавете 1 до променливата В и запишете резултата да б. Сега, = 7; б = 8 * /
а = ++ б; / * Тази линия е С: вземе стойността на променливата В след това се добавя 1 към него, и съхранява резултата б, и същия резултат е назначен. Сега, = 8, б = 8. * /
Юнайтед са признаци на поредица от прояви, се състои в скоби:
PORTB = 0xFF; // Задаване на всички констатации от журнала на порт B. 1.
_delay_ m S (MS); // закъснение
Така, например, функции са означени гранични и изрази блокове в циклични и условни конструкции (вж. Съответните разделите по-долу).
Свързани статии