Проектиране и програмиране на AVR микроконтролери

Добър ден скъпи радиолюбители!
Поздрави за вас в сайта "Радиолюбител"

Какво е микроконтролер и за какво е той. Нека се обърнем към дефиницията му:

Микроконтролер - микросхема, предназначена за управление на електронни устройства, или с други думи - обикновен компютър (микрокомпютър), способен да изпълнява прости задачи.

програмиране

Това е, всъщност, микроконтролерът е устройство, което ни позволява да съживим нашите идеи (дори луди), но, естествено, в рамките на възможностите му. И най-важното е, че въплъщението на една идея в живота се постига не чрез създаване на усъвършенствани електронни структури, а единствено в основата на силата на нашата мисъл (искате ли да станете магьосник?).
Най-популярни сред радиолюбителите са два вида микроконтролери:
- PIC - от Microchip Technology
- AVR - Атмел

Просто искам да направя малко отклонение и да изясня една от моите позиции. Не отивам, нито сега, нито по-късно, да говоря за достойнствата на този или онзи тип микроконтролери, този или онзи софтуер и като цяло всичко, свързано с микроконтролери, да съветвам нещо, но още повече - да налагам на читателите. Всичко това е въпрос на вкус, лични предпочитания и крайните цели при изследването на микроконтролерите. Е, тъй като "необятността не е да се прегърне", ще провеждам всичките си по-нататъшни разкази във връзка с микроконтролерите AVR и, не особено често срещаната, но любимата ми програма "Алгоритъм строител". Различните видове микроконтролери, програми, разбира се, имат разлики, но имат и много общи черти. И ще опознаем света на микроконтролерите, за да може по-късно получените знания да бъдат приложени без проблеми към PIC и към всеки софтуер. И още веднъж да ви напомня, че тази поредица от статии е моят опит да помогна на тези, които за първи път са чували за съществуването на микроконтролери и искат да разберат как да работят с тях.

Какво е необходимо, за да научите как да работите с микроконтролери? Бих откроил няколко, според мен, основни условия:
1. Желание и упоритост .
Тук всичко е много просто: има желание - всичко ще се получи. А желанието с постоянство като цяло е превъзходно нещо.
2. Познаване на устройството с микроконтролер.
Дълбокото познание тук не е важно (и може изобщо да не е необходимо), но е необходимо да се знае какво има „на борда“ на микроконтролера. Само знаейки от какво се състои микроконтролерът, какви устройства той съдържа, техните възможности, как работят - само тогава ще можем да използваме възможностите на микроконтролера максимално.
3. Познаване на езика за програмиране и командите за управление на микроконтролера.
Как ще работи микроконтролерът, какви задачи му възлагате и как ще ги изпълнява, се определя от вградената в него програма - програмата, която сами съставяте за микроконтролера. И ще се спрем на този въпрос по-подробно, за да разгледаме въпроси, които могат да се появят в бъдеще.

Програма (в превод тази дума означава - „рецепта“) - предварително описание на предстоящи събития или действия.

Например искаме микроконтролерът да мига светодиод. Проста задача, но въпреки това, за да може микроконтролерът да изпълни тази задача, първо трябва стъпка по стъпка да опишем всички действия на микроконтролера, да напишем програма, която той трябва да изпълни, за да получи резултата, от който се нуждаем - мигащ светодиод . Нещо като това: