Как да направя нов avr-gcc проект в AVR Studio 4, avr, програмиране

Ето стъпка по стъпка процес за създаване на проект, базиран на безплатен компилатор AVR GCC.

един. Бягай AVR Studio, в стартовия съветник щракнете върху големия бутон Нов проект, изберете AVR GCC, въведете името на проекта (Име на проекта: изберете името на проекта, така че да е ясно какъв е проектът), изберете папката за поставяне на проекта (Местоположение: ), щракнете върху Напред.

2. Изберете платформа за отстраняване на грешки (Debug platform:), тип микроконтролер (Device:), щракнете върху Finish.

3. Въведете текста на програмата в основния C файл на проекта (името му е същото като името, което сте дали на проекта), нещо като:

4. Ако искате автоматично да вземете инструкциите за включване "filename.h", тогава трябва да посочите всички папки, в които трябва да търсите тези включени файлове, в настройките на проекта - менюто Project -> Options Options -> щракнете върху бутона на вляво "Включване на директории", щракнете върху New (Insert), посочете пътя до папката (можете да използвате бутона за сърфиране.).

6. Ако включите файлове декларират функции, дефинирани в други C файлове, тогава тези C файлове трябва да бъдат добавени към изходните файлове, така че те също да се компилират.

7. Типът на процесора (например ATMega16) е посочен в менюто Project -> Configuration Options -> General button -> Device: atmega16 падащ списък. В този случай, в зависимост от избора, компилаторът получава информация от типа на процесора, използвайки опцията -mmcu = microcontroller_type (в нашия пример -mmcu = atmega16). Символична информация за имената на регистрите (която е различна за всеки тип процесор) се предоставя от селекторния файл avr/io.h, който зарежда необходимия файл за включване въз основа на типа на процесора. В нашия пример файлът avr/iom16.h ще бъде зареден и този файл не може да бъде включен директно (без avr/io.h).

девет. Блокиращите закъснения могат да бъдат генерирани с помощта на функциите, дефинирани в заглавката delay.h.

За да работят коректно рутинните процедури, тактовата честота на микроконтролера трябва да бъде зададена в свойствата на проекта (Проект -> Опции за конфигуриране -> Общ бутон -> посочете в прозореца за въвеждане на честота: честота в херци). В същото време опцията -DF_CPU = clock_in_hertz се предава на компилатора, тя създава дефиницията на макроса F_CPU, която се използва за генериране на закъснението.

десет. Използване на инструкции за вграден асемблер:

единадесет. Работа с таймер Куче пазач (WDT):

12. Проверка на битове (например ADSC бита на регистъра ADCSRA):

В последните версии на gcc (WINAVR) функцията bit_is_clear може да отсъства [1]. Вместо това използвайте следната конструкция:

Извикването на функцията bit_is_set (ADCSRA, ADSC) може да бъде заменено с (ADCSRA & (1

13. AVR GCC има вградена поддръжка за битови константи, което е доста удобно:

Не ви съветвам обаче да се увличате с битови константи, защото при пренасяне на кода на други компилатори и платформи ще възникнат проблеми.