У вас є arduino значить у вас є програматор!

У вас є arduino значить у вас є програматор!
Все таки, приказка «Вік живи - вік учись!» Придумана не просто так! Свого часу, почавши цікавитися микроконтроллерами сімейства AVR (і зокрема, Arduino) я занепокоївся про інструмент для програмування оних. Тобто программаторах. А адже програматор (ну, може не в настільки явному вигляді) у мене завжди був під рукою. Це плата Arduino.
ISP (In-system programming) - це здатність мікроконтролера отримувати прошивку перебуваючи вже безпосередньо в зібраній схемі. Програматором (пристроєм передавальним прошивку від комп'ютера в контролер) в нашому випадку буде виступати Arduino.
Аргументи для тих, хто сумнівається (робити / не робити)
за:
1) цей Шилд дасть друге життя «морально застарілим» платам Arduino на Atmega8
2) У Вас з'явитися прекрасна можливість писати програми для мікроконтролерів серії Attiny в звичному Arduino IDE
3) це самий «копійчаний» програматор (за умови наявності у Вас Arduino)
4) цей Шилд ДУЖЕ простий у виготовленні, не містить дефіцитних деталей і не вимагає настройки
5) дозволяє (в якійсь мірі) зберегти порядок на Вашому робочому місці :)
проти:
- я не знайшов

Якщо готові, то поїхали.
Щоб Arduino стала ISP программатором на неї необхідно залити спеціальну прошивку. Ця прошивка поставляється разом з Arduino IDE. Нагадаю. Ще без будь-якої периферії Arduino підключаємо до комп'ютера і завантажуємо Arduino IDE. Вибираємо [File] -> [Examples] -> [ArduinoISP]

У вас є arduino значить у вас є програматор!

Ну і далі, люди роблять щось приблизно таке:
У вас є arduino значить у вас є програматор!

До речі, я теж так робив :). Власне, після чого і з'явилася ця задумка. Варіант «Клубкова» з'єднання, природно, має право на життя. Але, скажімо так:
-> Незручно
-> ненадійно
-> Некрасиво і все таке :(
Логічно було б припустити, що розумні люди зметикували «що до чого» і налагодили випуск готових ARDUINO ISP Shield-ів. Ось парочка прикладів:
У вас є arduino значить у вас є програматор!

Я теж хочу таку річ! Але, "Це не наш метод! Ми все зробимо самі."
Отже, я згадав всі мікроконтролери, з якими мені доводилося стикатися. Це були Atmega8 (168/328), Atmega16, Attiny2313 (4313), Attiny13 (45/85). Разом, (для мене, принаймні) обмежимося корпусами DIP8, DIP20 і DIP28. Здоровенна Atmega16 - «поки нервово курить збоку». Поставимо додатково стандартний ICSP роз'єм на 10 контактів, для можливості підключення зовнішнього адаптера. І для краси встановимо світлодіоди, що відображають поточний стан програматора. Распіновку беремо з скетчу ArduinoISP:

Схема. Хм, звичайно складно це назвати схемою, але все ж:

У вас є arduino значить у вас є програматор!

Розводка друкованої плати багато часу не зайняла. Я фактично розташував потрібні корпусу і роз'єми на плату, підписав потрібні висновки і тупо їх з'єднував :) Ось, що вийшло:

У вас є arduino значить у вас є програматор!

Друга сторона:

У вас є arduino значить у вас є програматор!

Звертаю Вашу увагу, на наявність трьох SMD перемичок (резистори 0R).

Ось готовий виріб:

У вас є arduino значить у вас є програматор!

. ВАЖЛИВИЙ МОМЕНТ. Дуже рекомендую встановити панельки з цанговими контактами!

У вас є arduino значить у вас є програматор!

Отже, все у нас готове для проведення «ходових» випробувань. Підключаємо наш Шилд до ЗАРАНЕЕ «прошиту» Ардуіно

У вас є arduino значить у вас є програматор!
.

Перевіряємо працездатність за допомогою GUI оболонки для AVRDUDE:

У вас є arduino значить у вас є програматор!

Для «гурманів», зеленою смужкою я виділив відповідні параметри для консольного варіанту :)

Звертаю вашу увагу на правильний вибір типу програматора і типу з'єднання. Уточнити можна в IDE (вище наведено скріншот для самопальной COM-портової плати).

Нижче картинки для варіанту з CraftDuino (у мене CraftDuino спілкується через віртуальний COM N14. Природно, у Вас може бути інший)

У вас є arduino значить у вас є програматор!

У вас є arduino значить у вас є програматор!

Все добре. Радіємо і ляскаємо в долоні :) (чесно кажучи, вийшла плата мені ДУЖЕ подобається. Я пишу цю статтю і верчу її в руках).
Пара корисних посилань, про те, як подружити мікроконтролери Attiny із середовищем програмування Arduino:
Attiny13
Attiny2313
Ну а далі вже самі :) Як то кажуть, Google Вам в допомогу!

Весь матеріал проекту забираємо ТУТ.
Всі удачі і хорошого настрою!