Инструкция
1
«Ардуино» не программируется, хотя раньше всё работало. Для такого поведения возможны несколько причин, которые обязательно нужно проверить:
- по какой-то причине произошёл сбой драйвера;
- неправильно выбран COM-порт;
- где-то есть электрическая связь, которой быть не должно (короткое замыкание);
- произошёл сбой загрузчика (bootloader) платы Arduino.
Давайте пройдёмся по всем пунктам этого списка и убедимся, пока не устраним проблему.
Ошибка "Not in sync: resp=0x30"
2
Откроем диспетчер устройств Windows через меню Пуск -> Панель управления -> Оборудование и звук -> Диспетчер устройств. Есть более короткий вариант: нажимаем клавишу Windows на клавиатуре и, не отпуская её, нажимаем клавишу Pause. Откроется окно свойств системы, в котором с левой стороны есть ссылка на диспетчер устройств.

Находим и раскрываем в диспетчере раздел Порты (COM и LPT). Если драйвер установлен и работает корректно, никаких оверлейных значков типа вопросительного или восклицательного знака на пиктограмме устройства Ардуино быть не должно. Если такие значки имеются, значит, есть проблемы в работе драйвера. Если Arduino или устройства USB-Serial вообще нет в этом разделе диспетчера, значит драйвер даже не установлен. В любом из этих у случаев драйвер необходимо установить (или переустановить).

В диспетчере устройств выбираем нашу плату Arduino (или неизвестное устройство, которое появляется при подключении платы Arduino к компьютеру), нажмём на него правой кнопкой мыши и в контекстном меню выберем пункт Обновить драйверы... (Update drivers...).

Выбираем Выполнить поиск на этом компьютере и указываем путь к директории с драйвером для платы. Далее следуем указаниям мастера настройки нового оборудования.

Для оригинальных плат семейства «Ардуино» драйверы имеются в директории среды разработки, в поддиректории drivers. Для «Ардуино»-совместимых плат ищите драйвер в интернете.
Нормальное состояние Arduino в диспетчере устройств Windows
3
Проверим, что правильно указали COM-порт в IDE Arduino. Проверить, какой порт присвоен системой нашей плате «Ардуино» можно в диспетчере устройств Windows. Платы Arduino находятся в разделе "Порты (COM и LPT)" и определяются обычно как устройства "Arduino" или "USB-Serial".

Идём в меню Инструменты -> Порт и убеждаемся, что указан верный порт. Если нет, указываем нужный.
Выбор COM-порта в среде разработки Arduino
4
Если плата Arduino лежит на токопроводящей поверхности, есть риск, что где-то имеется короткое замыкание. Это может являться причиной ошибки в работе платы и, в частности, мешать нормальному процессу программирования. Проверьте, что плата находится на изолированной поверхности.

Также к этому же типу причин я бы отнёс подключение несанкционированных проводов к выводам 0 и 1 платы «Ардуино», которые являются портами RX и TX и используются в процессе загрузки скетча в память платы.
5
Если ничего из перечисленного не помогло, попробуем ещё один вариант: перезапишем загрузчик платы (bootloader).

Загрузчик - это специальная управляющая программа для Arduino, которая исполняется при включении устройства и которая задаёт режим работы платы: либо переходит к исполнению программы из памяти Arduino, либо к процедуре программирования компьютером.

Для реализации этого варианта нам потребуется программатор. Схема подключения программатора к Arduino приведена на рисунке.

После подключения программатора в среде программирования «Ардуино» в меню Инструменты -> Программатор указываем тип нашего программатора. Например, USBasp. Теперь в том же меню Инструменты выбираем пункт Записать Загрузчик. Этот процесс не занимает много времени.

Если операция прошла успешно, IDE сообщит об этом. А плата «Ардуино» радостно замигает светодиодом на 13-ом выводе, т.к. в неё, кроме загрузчика, записан скетч по умолчанию - скетч мигания светодиодом Blink.

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