arduino mega 2560 программатор

Содержание

  1. Описание
  2. Необходимые компоненты и навыки
  3. Принцип работы
  4. Порядок действий
  5. Популярные вопросы
  6. Первый 3D-принтер и комплектующие к нему
  7. Стоит ли брать AnyCubic Kossel Linear Plus ? Интересует качество стоковых компонентов
  8. Зачем используют слово ‘3D’ при описании аддитивных технологий?
  9. Ответы
  10. цифровая электроника вычислительная техника встраиваемые системы
  11. Используем Arduino Mega 2560 в качестве внутрисхемного программатора (ISP)

Описание

Регулярно заказываю платы Arduino и компоненты к ним на известном всем китайском мегабазаре. Что бы там не говорили некоторые, качество плат ничем не отличается от оригинальных (те которые с «made in italy») — ибо все равно и те и другие делаются у «дядюшки Ляо». Но периодически встречается плата без прошитого бутлоадера. То есть она как бы рабочая, а скетч не заливается. Открыть спор с поставщиком и вернуть деньги за плату конечно же можно, но нам ведь нужны не деньги, а сама плата, так? Причем крайне желательно рабочая. Почему бы не пришить бутлоадер самим? В этом случае у нас есть несколько вариантов:

Необходимые компоненты и навыки

Принцип работы

Каждая плата Arduino может загружаться со своего загрузчика, прошитого на микроконтроллере, а может и с внешнего загрузчика. Вот именно это мы и используем для прошивки отсутствующего бутлоадера. Нам достаточно просто подать загрузить на рабочую плату скетч программатора (он есть в примерах Arduino IDE), соединить рабочую плату с прошиваемой и запустить процесс прошивки. Все остальное выполняется автоматчиески.

На платах соединяем контакты 5V, GND, MOSI, MISO и SCK. Также нам понадобится поключить контакт SS на плате-программаторе к контакту RESRT на прошиваемой плате. Какие контакты куда подключать на наиболее известных платах можно увидеть в следующей таблице.

MOSI MISO SCK SS Mega 51 50 52 53 Nano 11 12 13 10 Uno 11 12 13 10 Leonardo ICSP 11 ICSP 12 ICSP 13 ICSP 10

Порядок действий

Условимся, что в качестве программатора будем использовать плату Arduino Mega 2560(Возможно также пользоваться любой другой — для этого надо просто поменять используемые контакты). Итак:

Доброго времени суток. Вопрос такой: можно ли починить сгоревшую ардуину мега? (спалил по глупости, подал большое питание)

При подключении по usb комп её не видит, но на плате загораются индикаторы L и ON.

Сгоревший преобразователь я выпаял, внешнее питание мне на неё подавать не надо.

Так как я в этих делах не очень, прошу вашей помощи.

Только чтобы работал через USB.

Популярные вопросы

Первый 3D-принтер и комплектующие к нему

Стоит ли брать AnyCubic Kossel Linear Plus ? Интересует качество стоковых компонентов

а) нужен не шибко большой принтер для мелочевки. детали, в основном, не больше 10 см по XY, для больше есть другой принтер

Зачем используют слово ‘3D’ при описании аддитивных технологий?

Ответы

Думаю стоит начать с определения живости самой меги.

Подключите ISP программатор к той колодке рядом с мегой и попробуйте считать тип процессора.

точнее надо подключать к обоим колодкам, возле обеих мег ) по очереди )

К сожалению такого программатора у меня нет, но есть ардуино нано. Можно ли его использовать в качестве программатора, если да то как?

можно https://habr.com/ru/post/144620/ , по статье залей проишвку . дальше скачай SinaProg попытайся считать фьюзы(синапрог потому как ардуино иде фуфло г. е , которое очень хреново работает со своейже платой как программатором) , если с 2560 считались фьюзы без проблем . попытайся залить прошивку марлина твоего принтера отдельным hex файлом. если сработает и на дисплей посыпятся символы , а температура стоал и экструдера не будет бешенно маленькой или наоборот большой , то скоерй всего она жива . Дальше проверь мегу32у2 , проверяется фактически так же как мега2560 , но если окажется жива при этом даже если после перепроишвки не видится ком-порт , то она бесполезна , лучше убрать , дальеш на сериал 0 подпаять любой usb-uart переходник ( любой , даже можно закоротить нану , т.е замкнут ьеё ресет на гнд) и можно работать через него.

Если что , пиши в вк , помогу с проверкой . всё же это обыкновенная avr

цифровая электроника вычислительная техника встраиваемые системы

Используем Arduino Mega 2560 в качестве внутрисхемного программатора (ISP)

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

  • Arduino Mega
  • Плата с микроконтроллером ATmega, который нужно прошить
  • Конденсатор 100 нФ
  • USB-кабель, соединяющий Arduino Mega с компьютером
  • Среда разработки Arduino IDE
  • Несколько проводов для соединения Arduino Mega с самодельным Arduino

Основная трудность заключается в том, что у Arduino Mega другая распиновка в отличие от Arduino UNO, Duemilanove или Diecimila, поэтому руководства использования в качестве программатора перечисленных плат не подходят. Подробнее про распиновку Arduino Mega можно узнать здесь.

Вам нужно соединить Arduino Mega 2560 с платой с чипом Atmega 168/328 следующим образом:

Итак, для начала нужно загрузить скетч ArduinoISP. Откройте Arduino IDE, выберите Tools – Board – Arduino Mega 2560 (Сервис – Плата – Arduino Mega 2560). Выберите корректный COM-порт: Tools – Serial port – нужный порт (Сервис – Последовательный порт – нужный порт). Теперь перейдите в File – Examples – ArduinoISP (Файл – Примеры – ArduinoISP). Перед вами откроется скетч ArduinoISP. Нажмите кнопку Upload (Загрузить) и загрузите его в Arduino Mega 2560.

После того, как скетч будет полностью загружен, подключите конденсатор 100 нФ между линией питания +5 В и выводом RESET на Arduino Mega, чтобы отключить автосброс. В противном случае ничего не получится.

Далее выберите плату, которую хотите запрограммировать. Если у вас, например, микроконтроллер Atmega328 с осциллятором 16 МГц, то следует выбрать Arduino Duemilanove or Nano /w Armega 328.

Выберите Tools – Burn Bootloader – Arduino as ISP (Сервис – Программатор – Arduino as ISP). После загрузки кода вы сможете наслаждаться вашим самодельным Arduino.

Если у вас возникли ошибки:

  • Проверьте правильность выбора платы
  • Если у вас появилась ошибка типа avrdude: stk500_getsync(): not in sync: resp=0x00, то вы не поместили конденсатор 100 нФ между линией питания +5 В и выводом RESET на Arduino Mega
  • Если у вас другая ошибка, то ищите ответ в гугле
  • Если не нашли ответ в гугле, то воспользуйтесь тематическими форумами про Arduino

Если при программировании вашего Arduino появилась ошибка avrdude: stk500_getsync(): not in sync: resp=0x00 avrdude: stk500_disable(): protocol error, expect=0x14, resp=0x51, значит не в порядке автосброс (DTR). То есть Arduino IDE не может перезагрузить Arduino, и загрузка кода заканчивается провалом. Чтобы избежать этого, вы можете:

  • Нажать кнопку сброса на Arduino, кода появляется «Binary sketch size: xxxx bytes (of a xxxxxxx byte maximum)»
  • Если это не помогло, то вы можете подключить USB-кабель к компьютеру, но не к Arduino, и после того, как появится «binary sketch…», быстро воткнуть кабель в Arduino
  • Если и это не помогло, то вы можете держать нажатой кнопку сброса на Arduino, нажать Upload (Загрузить) в Arduino IDE и отпустить кнопку, когда появится «binary sketch size . »
  • Если и это не помогло, то вы можете нажать кнопку сброса после появления «binary sketch size . » и держать ее 2-10 секунд
  • Если и это не помогло, то вы можете заново загрузить загрузчик
  • Если и это не помогло, то вы можете взять другую плату Arduino, если есть такая в запасе
  • Если и это не помогло, то остается только спросить на форуме

Источник: computermaker.info

Понравилась статья? Поделиться с друзьями:
Ок! Компьютер
Добавить комментарий