После того, как вчера разобрался с программированием stadalone ATtiny85, решил сегодня повторить то же самое с ATmega328P

Парочка микросхем была давно в заначке, на всякий случай. На глаза также попадались регулярные рецепты об их включении на макетках. Но собрался поковыряться только сейчас

Как и с ATtiny85 проблем была масса. Даже больше. Поэтому, по свежей памяти, складирую тут опыт и впечатления

Сперва не стал рыться в своих копилках, а погуглил варианты компактной сборки на макетных платах. Больше других примечателен вот такой вариант:
(По ссылке — подробная последовательность монтажа)
Подобная сборка заняла минут 5-10 и дальше встал вопрос программирования. Первая мысль была — задействовать программирование через последовательный порт. Благо, для Arduino это штатный способ. Но не тут-то было. Большинство рецептов даётся на использование другого Arduino в роль ISP-программатора. Как и в случае с ATtiny85. Ну, ладно, благо схема вчерашняя осталась, я и подключил в таком же стиле (с поправкой на мой вид схемы):
Дальше, в Arduino IDE, как и в случае с ATtiny, сперва на сам Arduino прошиваем ISP-скетч (Файл -> Примеры -> ArduinoISP) и выбираем Arduino as ISP в роли программатора в меню Инструменты.
Ага, щаз!

Бутлоадер (Инструменты -> Записать загрузчик), судя по всему, прошился. Потому что после подачи питания светодиод на макетной плате стал помигивать. Но не более того. Все попытки прошить тестовый скетч обламывались отсутствием соединения. Перепробовал все платы и программаторы, пару раз перепрошивал сам ArduinoISP, т.к. сносил его прошивку.
Дальше была обширная эпопея с поиском рецептов и вариантов для прошивки через USB-serial. Останавливаться не будут, так как ничего не достиг и снова вернулся к ArduinoISP.
И вот тут, провозившись с разными комбинациями ещё минут 15, понял главное! Шить в таком варианте нужно не через загрузку скетча привычным способом, а через пункт Скетч -> Загрузить через программатор!
И всё сразу заработало

Но чтобы дойти до этого, потратил, наверное, час или полтора экспериментов!