
Arduino Pro Mini – компактная и энергоэффективная плата без встроенного USB-интерфейса. Для её программирования необходимо использовать внешний программатор. Один из самых доступных способов – задействовать Arduino Uno в качестве преобразователя USB-UART.
Чтобы прошить Pro Mini через Uno, потребуется предварительно снять чип ATmega328P с платы Uno или временно отключить его путём прошивки специального скетча. Это исключает конфликты на линии передачи данных между двумя микроконтроллерами. Напрямую подключать TX и RX пины между платами нельзя без учёта логических уровней: Pro Mini чаще всего работает на 3.3 В, в то время как Uno использует 5 В. Несоблюдение этого требования может повредить микроконтроллер.
В Arduino IDE следует выбрать тип платы “Arduino Pro or Pro Mini” и указать правильный порт. Скорость загрузки обычно составляет 57600 или 115200 бод, в зависимости от версии загрузчика. При правильной настройке и подключении прошивка проходит без ошибок, обеспечивая полноценную работу скетча на Pro Mini.
Для прошивки Arduino Pro Mini с использованием платы Arduino Uno необходимо выполнить прямое соединение определённых пинов, исключив микроконтроллер с платы Uno. Для этого аккуратно извлеките микросхему ATmega328P с DIP-корпусом из сокета Uno или временно отключите её, выгнув ножки 0 и 1.
Подключение выполняется следующим образом:
Перед загрузкой скетча выберите в Arduino IDE плату «Arduino Pro or Pro Mini» и нужное значение частоты (обычно 16 МГц для версии 5V). В качестве порта используйте тот, к которому подключена плата Uno. Далее нажмите «Загрузить» – прошивка начнётся автоматически при правильных соединениях.
Удаление микроконтроллера с платы Arduino Uno

Для прошивки Arduino Pro Mini с использованием платы Uno потребуется извлечь микроконтроллер ATmega328P с DIP-корпусом. Это необходимо, чтобы исключить конфликт на линии передачи данных и избежать загрузки кода в саму Uno.
Перед началом отключите питание от платы Uno и убедитесь в отсутствии подключения к USB или внешнему источнику. Используйте тонкую плоскую отвертку или специальный извлекатель для DIP-чипов. Аккуратно подденьте микроконтроллер с одной стороны, приподнимите его на 1–2 мм, затем сделайте то же самое с противоположной стороны. Повторяйте, пока чип полностью не освободится из разъема. Не тяните за корпус – это может повредить ножки.
Проверьте цоколевку разъема после извлечения: ножки должны оставаться ровными и без изгибов. Если микроконтроллер был установлен плотно, возможны легкие механические повреждения корпуса – визуально оцените целостность перед повторной установкой в будущем.
Настройка Arduino IDE для загрузки скетча в Pro Mini

Откройте Arduino IDE и перейдите в меню Инструменты → Плата. Выберите Arduino Pro or Pro Mini.
Затем в том же меню Инструменты выберите Процессор. Укажите точную версию микроконтроллера и напряжение питания вашей платы. Если у вас, например, Pro Mini на 5V и 16 MHz, выберите ATmega328P (5V, 16 MHz). Для версии на 3.3V – ATmega328P (3.3V, 8 MHz).
Теперь выберите порт. Если вы используете Arduino Uno как программатор, подключите её к компьютеру и выберите соответствующий COM-порт в меню Инструменты → Порт.
Выберите программатор: Инструменты → Программатор → Arduino as ISP (не путать с ArduinoISP, это другой скетч).
Важно: не используйте стандартную кнопку загрузки скетча. Вместо этого загрузка должна выполняться через меню: Скетч → Загрузить через программатор (Ctrl+Shift+U).
Если загружаемый скетч слишком большой или появляется ошибка «avrdude: verification error», убедитесь, что выбранный процессор точно соответствует прошиваемой плате, а также что на Uno предварительно загружен скетч ArduinoISP.
Выбор правильной платы и процессора в настройках IDE

Перед прошивкой Arduino Pro Mini необходимо точно задать параметры в Arduino IDE. Неправильный выбор платы или процессора приведёт к ошибкам компиляции или невозможности загрузки прошивки.
В меню Инструменты → Плата выберите Arduino Pro or Pro Mini. Эта опция подходит для всех версий Pro Mini, но ключевым моментом остаётся настройка процессора и частоты.
В пункте Инструменты → Процессор укажите конкретную конфигурацию микроконтроллера. Наиболее распространённый вариант – ATmega328P (5V, 16 MHz). Если у вашей платы питание 3.3 В и кварц на 8 МГц, выберите ATmega328P (3.3V, 8 MHz). Для старых ревизий с чипом ATmega168 выберите соответствующий вариант в списке процессоров.
При использовании Arduino Uno в качестве программатора обязательно установите Процессор: ATmega328P, а не ATmega328P (Old Bootloader), если только вы точно знаете, что используется старая загрузочная программа. В новых платах Pro Mini чаще всего используется обновлённый загрузчик.
Проверьте также выбранный порт в Инструменты → Порт. После подключения Arduino Uno через USB он должен отобразиться в списке. Pro Mini не появится, так как загружается через Uno.
Использование Arduino Uno как программатора

Для прошивки Arduino Pro Mini с использованием платы Arduino Uno необходимо преобразовать Uno в ISP-программатор. Это позволяет передавать прошивку через стандартный протокол SPI напрямую, минуя загрузчик.
- Откройте Arduino IDE. В разделе «Файл» → «Примеры» → «11.ArduinoISP» выберите скетч ArduinoISP.
- Подключите Arduino Uno к компьютеру через USB и загрузите скетч ArduinoISP на плату.
После загрузки Uno готов к работе как программатор. Подключите его к Pro Mini следующим образом:
- Uno D10 → Pro Mini RST
- Uno D11 → Pro Mini D11
- Uno D12 → Pro Mini D12
- Uno D13 → Pro Mini D13
- Uno GND → Pro Mini GND
- Uno 5V → Pro Mini VCC (если Pro Mini 5В, для 3.3В используйте отдельный источник)
В Arduino IDE:
- Выберите «Инструменты» → «Плата» → Arduino Pro or Pro Mini.
- Установите правильный вариант процессора и частоты (например, ATmega328P (5V, 16 MHz)).
- В «Инструменты» → «Программатор» выберите «Arduino as ISP».
- Выберите пункт «Записать загрузчик», если требуется заменить загрузчик или очистить флеш-память.
- Затем используйте «Загрузить через программатор» (Shift + Загрузка), чтобы прошить нужный скетч напрямую.
При использовании Uno как программатора убедитесь, что на его пине D10 нет стороннего сигнала, иначе сброс на целевой плате будет некорректным. Также рекомендуется отключить авто-сброс Uno (подключив 10 мкФ конденсатор между RST и GND Uno), чтобы он не сбрасывался при каждой загрузке.
Поиск и устранение ошибок загрузки скетча

Если при прошивке Arduino Pro Mini через плату Uno возникает ошибка загрузки, в первую очередь отключите микроконтроллер на Uno, удалив его из панели или разорвав линию Reset с помощью перемычки между GND и Reset.
Убедитесь, что используется 5V версия Pro Mini, если подаёте питание от Uno. Для 3.3V версии обязательно подключать внешний источник питания или использовать стабилизатор напряжения.
Проверьте правильность подключения: TX Uno должен идти на RX Pro Mini, RX Uno – на TX Pro Mini. Не перепутайте – при обратной полярности загрузка не начнётся, но ошибки будут неочевидны.
Убедитесь, что выбран правильный COM-порт и плата в Arduino IDE: «Arduino Pro or Pro Mini» и соответствующий процессор (обычно ATmega328P или ATmega328P (Old Bootloader)). При неправильном выборе загрузка завершится ошибкой sync.
Если появляется сообщение stk500_getsync(): not in sync, проверьте соединения, плотность прижатия проводов и наличие контакта GND. Также стоит заменить USB-кабель – повреждение внутри кабеля не всегда визуально заметно.
Для стабильной загрузки подключите конденсатор 10 мкФ между Reset и GND на Uno, чтобы подавить автосброс при старте прошивки. Это особенно важно, если Uno используется в качестве программатора без снятия микроконтроллера.
Используйте провод длиной не более 20 см между платами. Длинные провода увеличивают помехи и вероятность ошибок передачи данных.
Если после всех проверок прошивка не идёт, попробуйте понизить скорость загрузки до 57600 бод, изменив соответствующую настройку в boards.txt или выбрав старую версию загрузчика.
Проверка работы прошитого скетча на Pro Mini

После загрузки скетча через Arduino Uno важно убедиться в корректной работе устройства. Первым шагом подключите Pro Mini к источнику питания 3.3 В или 5 В в зависимости от версии платы. Необходимо снять соединение с Arduino Uno, используемым для прошивки, чтобы избежать конфликтов.
Если скетч содержит индикаторы, например, мигание светодиода на пине 13, проверьте его работу визуально. Важно убедиться, что светодиод мигает с частотой и интервалом, заложенными в программе. При отсутствии реакции рекомендуется перепроверить правильность подключения питания и пинов, а также убедиться, что загрузка прошивки прошла без ошибок.
В случае отсутствия отклика рекомендуется повторно перепрошить плату, внимательно следя за правильностью подключения проводов и выбором платы и процессора в настройках Arduino IDE. Особое внимание уделите выбору COM-порта и скорости передачи данных, совпадающей с конфигурацией скетча.
Вопрос-ответ:
Можно ли использовать Arduino Uno для прошивки Arduino Pro Mini, и как это правильно сделать?
Да, Arduino Uno часто применяется как программатор для Arduino Pro Mini. Для этого Uno подключают к компьютеру, загружают скетч «Arduino as ISP», а затем с помощью проводов соединяют выводы Uno и Pro Mini согласно схеме. После настройки в среде разработки выбирают тип платы Pro Mini и нужный COM-порт, после чего загружают скетч на Pro Mini через Uno.
Какие контакты нужно соединить между Arduino Uno и Pro Mini при прошивке?
Для передачи данных необходимо соединить несколько выводов: MOSI с MOSI, MISO с MISO, SCK с SCK, вывод RESET Arduino Pro Mini с пином 10 Arduino Uno, а также общий GND и питание (VCC) между двумя платами. Важно правильно подключить пин RESET, чтобы Uno мог управлять сбросом Pro Mini при программировании.
Что делать, если при попытке прошивки Arduino Pro Mini через Uno возникает ошибка «avrdude: stk500_getsync() not in sync»?
Эта ошибка обычно указывает на проблемы с соединением или настройками. Проверьте правильность подключения проводов, особенно RESET и землю. Убедитесь, что в среде Arduino выбрана правильная плата (Arduino Pro Mini) и выбран правильный порт. Также проверьте, что на Arduino Uno загружена прошивка «Arduino as ISP» и что она не используется как последовательный адаптер в момент прошивки.
Можно ли питать Arduino Pro Mini напрямую от Arduino Uno во время прошивки, и какие моменты следует учитывать?
Да, Pro Mini можно питать от 5V вывода Arduino Uno, если модель Pro Mini рассчитана на 5 В. Однако важно убедиться, что общий провод (GND) подключен между платами. Если Pro Mini 3.3 В, питание от 5 В может повредить плату, поэтому лучше использовать внешний источник с нужным напряжением. Во время прошивки питание должно быть стабильным, чтобы избежать сбоев.
Какие преимущества дает прошивка Arduino Pro Mini через Uno по сравнению с использованием отдельного программатора?
Использование Arduino Uno в качестве программатора удобно и доступно, так как это позволяет обойтись без покупки отдельного устройства. Это быстро и практично, особенно если есть несколько плат Arduino. Минус — требуется правильно подключить провода и загрузить специальный скетч на Uno, но процесс достаточно прост и хорошо описан в руководствах.
