При работе с Ардуино, существует ряд задач, которую можно решить только при наличии программатора. Например, он необходим для прошивки микроконтроллера платы. Для этой цели можно использовать другую Ардуино, сделав из нее ISP (внутрисхемный программатор). В этой статье расскажем, как прошить Ардуино через другую Ардуино и что для этого понадобится.
Подготовка платы-программатора
Для прошивки одной Ардуино через другую, нам понадобится
настроить плату, чтобы она выступала в качестве программатора. Для этого:
- Подключаем плату к компьютеру.
- Заходим в Arduino IDE и заливаем в него готовый скетч Arduino ISP
После того, как залили скетч, необходимо подключить конденсатор емкостью 10 мКф в контакты GND и Reset.. Без конденсатора, скорее всего, Arduino IDE выдаст ошибку «not in sync».
После выполненных действий плата-программатор готова прошивать другую Ардуинку.
Сборка схемы и прошивка
Для прошивки программируемой платы, необходимо соединить их по следующей схеме:
Arduino Uno (программатор) | Arduino Uno (программируемая) |
5V | 5V |
GND | GND |
10 | Reset |
11 (MOSI) | 11 (MOSI) |
12 (MISO) | 12 (MISO) |
13 (SCK) | 13 (SCK) |
Для остальных плат, необходимо уточнить выводы MOSI, MISO, ISK. Можно сверяться с этой таблицей:
Плата Ардуино | MOSI | MISO | SCK | Уровень |
Uno, Duemilanove | 11 или ICSP-4 | 12 или ICSP-1 | 13 или ICSP-3 | 5V |
Nano | 11 или ICSP-4 | 12 или ICSP-1 | 13 или ICSP-3 | 5V |
Pro Mini | 11 | 12 | 13 | 3.3V |
Leonardo | ICSP-4 | ICSP-1 | ICSP-3 | 5V |
Due | ICSP-4 | ICSP-1 | ICSP-3 | 3.3V |
Zero | ICSP-4 | ICSP-1 | ICSP-3 | 3.3V |
Если на плате невозможно снять сигнал сброса с вывода Reset (например на Leonardo), снимаем его с разъема ICSP-5:
После подключения плат, выбираем плату, которую надо запрограммировать:
И выбираем тип программатора:
Теперь можно прошить Ардуино. Откройте нужную прошивку и загрузите ее в плату через меню «Скетч» > «Загрузить через программатор».
После выполнения всех действий, плата будет прошита и готова к дальнейшему использованию.
Заключение
В статье разобрали, как прошить Ардуино, используя другую Ардуино. Для этого, в стандартных библиотеках Arduino IDE есть специальный скетч, что делает из прошивку простым процессом. Соблюдая эту инструкцию, прошивка не вызовет проблем даже у начинающего ардуинщика.