Начало работы с Arduino ISP

Первые шаги по настройке Arduino ISP

Примечание

Это снятый с производства продукт.

Arduino ISP — это внутрисистемный программатор (In-System-Programmer), который используется для программирования микроконтроллеров AVR. Вы можете использовать Arduino ISP для загрузки скетчей непосредственно на платы Arduino на базе AVR без необходимости загрузчика. Также его можно использовать для восстановления загрузчика.

Как подключить Arduino ISP

Подключите Arduino ISP к 6-контактному разъёму ICSP платы Arduino, которую вы хотите программировать, как показано на изображении.

Подключение Arduino ISP

Подключите Arduino ISP к компьютеру с помощью кабеля micro USB и подключите целевую плату к источнику питания (USB-кабель или через разъём питания). Целевая плата также может питаться от Arduino ISP. Для включения этой функции необходимо замкнуть перемычку SJVCC с помощью паяльника и капли припоя.

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

Выбор программатора в Arduino IDE

Прошивка загрузчика

Загрузчик — это небольшая программа, которая позволяет вашей плате Arduino связываться с Arduino IDE, когда вы хотите загрузить скетч. Обычно для загрузки программы в микроконтроллер требуется внешний программатор, такой как Arduino ISP. Загрузчик устраняет необходимость во внешнем программаторе, поскольку протокол, позволяющий вашему компьютеру программировать флеш-память AVR, содержится внутри загрузчика. Все платы Arduino на базе AVR поставляются с предустановленным загрузчиком, но иногда процесс загрузки или некоторые скетчи могут повредить память, в которой находится загрузчик, что приведёт к сбою будущих процедур загрузки. Повторная прошивка загрузчика с помощью Arduino ISP может восстановить загрузчик и вернуть возможность загрузки через USB-порт вашего Arduino. Вы также можете использовать Arduino ISP для прошивки загрузчика в совершенно новый ATmega. Если вы замените микроконтроллер ATmega на вашем Arduino, вам потребуется прошить загрузчик, чтобы загружать скетчи обычным способом. Вы можете легко сделать это с помощью Arduino ISP.

Прошивка загрузчика — это простая функция, предоставляемая Arduino IDE. Чтобы загрузить загрузчик на вашу плату, просто подключите всё, как описано выше, и нажмите Burn bootloader в меню Tools.

Прошивка загрузчика в Arduino IDE

Загрузка скетча

Программатор Arduino ISP также можно использовать для загрузки скетчей на платы Arduino на базе AVR или на другие микроконтроллеры AVR, поддерживаемые программным обеспечением Arduino.

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

Важно

Помните, что если вы перезапишете загрузчик, вы не сможете загружать другие скетчи, нажимая кнопку загрузки в Arduino IDE. Если вы хотите снова использовать Arduino как раньше, сначала необходимо прошить загрузчик.

После завершения скетча и правильной настройки перейдите в меню File и нажмите Upload using Programmer. В качестве альтернативы существует сочетание клавиш. Для загрузки через программатор нажмите клавиши «CTRL+SHIFT+U».

Загрузка скетча через Arduino ISP

Программирование фьюз-битов на микроконтроллерах ATmega

Arduino ISP можно использовать для программирования фьюз-битов на микроконтроллерах ATmega. Программирование фьюзов позволяет настраивать внутренние периферийные устройства и поведение микроконтроллера. Например, вы можете выбрать тактовую частоту, запрограммировать сторожевой таймер и многое другое. Это требует определённого опыта и внимательности, поскольку неправильная установка этих фьюзов может привести к тому, что микроконтроллер перестанет работать, и его восстановление может быть очень сложным.