AVR в C - просто?

Материалите по-долу са предназначени за потребители, които са запознати с програмирането като цяло и с езика C (по избор) в частност.
По същество представеният материал описва използването на AVR микроконтролери, с особено внимание към ATmega328. За да изучите материалите, ще ви трябва Arduino Uno или Arduino Nano 3. Да, простете ми хейтърите на arduino, но в този случай Arduino ще се използва като макет на достъпна цена и с възможност за използване без програмист .

1. Подготовка за проучване

За да учим, трябва:

Стандартни C библиотеки за AVR микроконтролери;

Програма за зареждане на фърмуер в микроконтролера;

1.1. Среда за развитие

Когато избирате среда за разработка, можете да срещнете „стена, която не може да бъде счупена“ от много софтуерни обвивки за програмиране на различни програмни езици. Но като се има предвид посоката към микроконтролерите, кръгът за търсене се стеснява до среди за разработка, адаптирани за специфичен тип микроконтролери Atmel AVR. Също така средата за разработка е език за програмиране C.

Помислете от многото опции среда за развитие C odeBlocks. Ще използваме оригиналната версия на C odeBlocks от сайта за разработчици www.codeblocks.org, най-новата версия, по време на писането това е версия 16.01. Тази среда за разработка е интересна с наличието на версии за популярни операционни системи Linux, Windows и Mac OS.

Нека да разгледаме набързо инсталацията под Windows. След като изтеглите файла codeblocks-16.01-setup.exe, стартирайте го.

Code Blocks

Нека се запознаем с лиценза и да го приемем.

Code Blocks

Инсталиране на всички компоненти без промени

Arduino Nano

Оставете инсталационния път непроменен.

среда разработка

Инсталационните редове се изпълняват и се появява предложение за стартиране на програмата, ние се съгласяваме. И разбира се, щракнете върху Напред в инсталатора и завършете инсталацията.

Code Blocks

Получаваме инсталираната среда за разработка Code: Blocks.

среда разработка

1.2. C/C ++ стандартни библиотеки за AVR микроконтролери

Средата за разработка е инсталирана, но за да работите, трябва да свържете библиотеките за компилиране на програми за микроконтролера. Един от начините е да инсталирате WinAVR. Но защо, ако средата за разработка вече е избрана. Нека вземем всичко необходимо от сайта на производителя на микроконтролери от семейството на AVR.

Ще взема Atmel AVR 8-битова верига с инструменти тъй като ще използваме ATmega328 и той е 8-битов. След изтеглянето стартирайте получения разопакован архив и вземете папка (като avr8-gnu-toolchain) с всичко необходимо. Къде да го сложа?

Стартирайте предварително инсталирания Code: Blocks, отидете в менюто Settings >> Compiler, отидете в раздела за изпълними Toolchain, изберете компилатора, който ни интересува, от списъка Selected compiler, това ще бъде GNU GCC Compiler за AVR. След това разглеждаме пътя по подразбиране за поставяне на предварително изтеглената и разопакованата папка.

среда разработка

Преименувайте нашата папка, както е в настройките на Code: Blocks и я преместете по посочения път.

1.3. Програма за зареждане на фърмуер в микроконтролера

Сега всичко е готово за програмиране, но няма достатъчно програма, която да улесни фърмуера на микроконтролера. За да проучим микроконтролера ATmega328, ще използваме Arduino UNO или Arduino Nano v3. Това прави възможно изучаването на микроконтролера без поялник и програмист. Има добра програма ArduinoBuilder за Arduino и черупка от проекта CodeBlocks Arduino IDE (Код на средата за разработка: Блокове с добавяне на библиотеки на arduino). Използването на микроконтролер без arduino е много по-интересно, затова изтегляме само ArduinoBuilder. Ще го използваме, за да експериментираме с микроконтролер на платка Arduino. Разархивираме архива, например, до корена на c: \ устройството в папка, да речем ArduinoBuilder, от него правим връзка към работния плот и получаваме два преки пътища:

Целият софтуер е готов. Нека да стигнем до „железните“ въпроси

1.4. Микроконтролер

В нашето изследване ще разгледаме микроконтролера ATmega328, ще напишем програми специално за него. "Експерти" веднага ще ни изпратят до DataSheet но това не е за нас. Ще тръгнем по своя път и ще изучим анатомията му на практика - по метода "Tyka":).

Първото нещо, което трябва да направите, е да закупите минималния хардуер. Като начало нека се ограничим до закупуването на ардуино или аналог. Основното е, че върху него е инсталиран микроконтролер ATmega328.

Arduino Pro (на ATmega328);

и разбира се клонинги от китайски другари.

Всяка от изброените опции ще работи с определени ограничения или промени.

Нека разгледаме по-отблизо Arduino Nano v3. Тук е инсталиран микроконтролер ATmega328P, има възможност за свързване чрез USB, а има и няколко клонинги на достъпна цена. Можете да намерите много описания в Интернет, така че ще разгледаме само схематично описание, намерено в Интернет.

среда разработка

В диаграмата съответствията на физическите заключения на микроконтролера са подчертани в тъмно сиво и ние ще разчитаме на тях при програмиране.