Хочу поделиться своим опытом знакомства с микроконтроллером ATmega328. Но сначала небольшое отступление.
Наверное уже все читали или уж точно слышали про Arduino. На мой взгляд, Arduino хорошая платформа для ознакомления с миром микроконтроллеров. Низкий порог вхождения и богатый набор различных библиотек, несомненно, является ключевым достоинством этой платформы. Под словом платформа я понимаю само устройство и штатная IDE с набором библиотек. Но к сожалению, ради обеспечения низкого порога вхождения штатная IDE вынуждена многое делать неявно для программиста. Например, процесс компиляции и прошивки, или даже формирование конечного main-файла с подключением всех include. Именно эти неявные действия и создают пробелы в знаниях при изучении платформы.Итак, наши цели:
- Написать программку на чистом C, которая будет мигать светодиодом (aka "Hello world!" только для МК)
- Собрать прошивку для МК
- Настроить fuses bits нашего МК
- Прошить МК