Как залить скетч в ардуино про мини
Перейти к содержимому

Как залить скетч в ардуино про мини

  • автор:

Как прошить Arduino Pro Mini (от А до Я)

Приветствую Вас, читатели нашего ресурса. Сегодня мы поговорим об одном контроллере из серии Arduino, а именно об Arduino Pro Mini. Это маленький, компактный контроллер, имеющий все преимущества Arduino, но при этом очень компактный, можно сказать самый маленький из всех существующих Arduino контроллеров на данный момент. Многих так же привлекает и цена его Китайский копий, а стоят они от одного до двух долларов за штуку (местами и того меньше), что так же заставляет задуматься об его приобретении. Но существует и одна проблема, его не так-то уж и просто прошить, особенно Китайские копии, которые оснащают процессором Atmel ATmega168P, которыми некогда не оснащали официальные контроллеры Arduino Pro Mini и как следствие Arduino IDE отказывается их прошивать, сообщая о неправильной сигнатуре процессора.

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

Что для этого нужно?

Arduino Pro Mini очень компактный, а компактность требует жертв и жертва это — USB интерфейс который полностью выкосили в данном контроллере т.е. подключить Pro Mini к компьютеру напрямую у вас не получится и как следствие для этого понадобится либо специальный переходник USB в TTL или другой контроллер Arduino.

Далее мы разберем три способа как прошить Pro Mini и для всех трех способов нам что-то понадобиться:

  • Первый способ. Прошиваем через адаптер USB в TTL – нужен сам адаптер в количестве одной штуки.
  • Второй способ. Прошиваем через Arduino UNO – нужна Arduino UNO, но не простая, а в классическом исполнении, это та Arduino, в которой процессор выполнен в DIP корпусе и вставлен в черный разъем.
  • Третий способ. Прошиваем через SPI интерфейс – нужна любая Arduino: UNO, Nano, Mega, Leonardo – не важно, главное чтобы был USB разъем для подключения к ПК.
Первый способ. Прошиваем через адаптер USB в TTL

Первым и самым простым способом загрузить свой скетч в Arduino Pro Mini — это приобрести специальный адаптер USB в TTL или как его называют UART переходник. Как правило, этот переходник это и есть та часть, которую вырезали из Arduino Nano, превратив ее в Arduino Pro Mini. Стоимость подобных переходников копеечная, а выбор и того больше. Китайцы наштопали их столько, что глаза разбегаться какой из них выбрать. При этом цена сего девайса не более одного вечно зеленого. После того как вы соедините Pro Mini и UART переходник проводами или шлейфом, остаётся только воткнуть его (переходник) в ПК, установить драйвер (не для всех переходников они требуются) и на этом собственно все. Ваш ПК определит переходник как очередной COM-порт, который появляется при подключении любой Arduino к ПК. Выбираете его, плату, с которой будете работать (Arduino Pro Mini) и спокойно загружаете свой скетч.

Единственным нюансом в данных переходниках, является наличие или отсутствие контактов RST или DTR. Рекомендую покупать переходники, на которых эти контакты есть. Они значительно упрощают жизнь и делают процесс прошивки беспроблемным. Если же вы купили уже переходник, на котором подобных контактов нет, то при каждой загрузке скетча в Arduino вам придется нажимать на кнопку Reset, что не всегда получается сделать вовремя, и это вносит свои неудобства.

Подключение переходник вы можете посмотреть по таблице ниже:

Arduino UNO

USB в TTL (UART) Arduino Pro Mini
RX RX
TX TX
GND GND
5V VCC
RST или DTR или GRN RST или DTR
Второй способ. Прошиваем через Arduino UNO

Для этого способа нам понадобиться классическая Arduino UNO. Классическая эта та, в которой корпус микросхемы выполнен в DIP корпусе и вставлен в специальный разъем. Вот эту микросхему нам надо аккуратно поддеть отверткой. Тут важно не сломать процессор, поддевайте аккуратно, не погнув ноги.

Arduino UNO

Arduino UNO. Процессор выполнен в DIP корпусе.

Arduino UNO

Аккуратно поддеваем и вытаскиваем процессор отверткой.

После того как мы вытащили процессор из Arduino UNO мы по сути получили тот самый переходник USB в TTL, осталось только соединить проводами наш новый переходник и Arduino Pro Mini по следующей схеме:

Arduino UNO

Arduino UNO (без процессора) Arduino Pro Mini
RX RX
TX TX
GND GND
5V VCC
RST RST

После того как вы соединили две Arduino воедино, можно приступать к прошивке Arduino Pro Mini. Подключаем Arduino UNO по USB к ПК. Выбираем в настройках Arduino IDE COM-порт, указываем, что мы теперь работаем не с Arduino UNO, а с Arduino Pro Mini и все, заливаем наши скетчи. Способ довольно интересный, если вы не боитесь испортить Arduino и рядом не оказалось переходника USB в TTL.

Третий способ. Прошиваем через SPI интерфейс

Третьим и самым неудобным способом загрузить свой скетч в Arduino Pro Mini это прошить его при помощи ICSP интерфейса. Данный интерфейс присутствует на большинстве плат Arduino. Основные контакты данного интерфейса выведены на порты с 10 по 13, а так же выведены отдельно в виде шести контактной колодки с подписью ICSP. Располагается колодка, как правило, в центральной правой части Arduino.

Прошивка Arduino Pro Mini в этом случае делиться на два этапа:

  1. Прошивка платы Arduino как ISP программатора.
  2. Настройка Arduino IDE и загрузка скетча в Arduino Pro Mini.

Первым делом мы должны подготовить наш будущий программатор. Возьмем для примера всю туже Arduino UNO. Далее пошагово:

  1. Запускаем Arduino IDE.
  2. Файл — Примеры — 11.ArduinoISP — ArduinoISP.
  3. Инструменты — Плата — Arduino UNO.
  4. Инструменты — Порт — Выбираем COM-порт.
  5. Компилируем и заливаешь в Arduino UNO.

Далее нам необходимо соединить две Arduino проводами по следующей схеме:

Arduino UNO (ISP) Arduino Pro Mini
5V VCC
GND GND
10 RST
11 (MOSI) 11 (MOSI)
12 (MISO) 12 (MISO)
13 (SCK) 13 (SCK)

Теперь опять открываем Arduino IDE. Открываем в ней скетч который вы хотите залить в Pro Mini и выполняете следующие действия:

2. Инструменты — Плата — Arduino Pro Or Pro Mini
3. Инструменты — Процессор — ATmega168 (5V, 16 MHz)
4. Инструменты — Порт — Выбираете порт
5. Инструменты — Программатор — Arduino as ISP
6. Скетч — Загрузить через программатор

Как видите загружать скетч в этом режиме надо через специальное меню «Загрузить через программатор», а не через кнопку «Загрузить» на главной форме Arduino IDE. В этом и связано все неудобство. Если вы нажмете кнопку «Загрузить» как это делаете обычно, то вы зальете скетч в Arduino UNO, а не Arduino Pro Mini, что затрет там скетч программатора. Так же в этом режиме недоступен класс Serial, то есть отлаживать свой скетч обмениваясь сообщениями по COM-порту у вас так же не получится. Ну и еще одна ложка дегтя в том, что после данной перепрошивки, в большинстве случаев, перепрошить Arduino Pro Mini через переходник у вас так же больше не получиться. Исправляется это заливкой нового bootloader-а через меню «Инструменты» — «Записать Загрузчик».

Добавляем китайский Pro Mini в Arduino IDE

Как я уже говорил в данной статье, Китайские клоны порой оснащают процессорами которыми не оснащали официальные версии Arduino Pro Mini и как следствие при прошивке их вы можете увидеть следующую или подобную ошибку.

avrdude: Expected signature for ATmega168 is 1E 94 06 Double check chip, or use -F to override this check. Найден неправильный микроконтроллер. Вы указали правильную плату в меню Инструменты -> Плата?

Исправляется это легко:

  • Для начала необходимо открыть папку в которой расположена Arduino IDE.
  • Затем переходим в следующую папку «Папка с Arduino IDE\hardware\arduino\avr\».
  • Ищем там файл «boards.txt» и открываем его в текстовом редакторе.
  • Ищем в файле следующую строку «pro.menu.cpu.16MHzatmega168.build.mcu=atmega168».
  • И заменяем ее на «pro.menu.cpu.16MHzatmega168.build.mcu=atmega168p».
  • Перезапускаем Arduino IDE и на этом все.
  • Если у вас к примеру 328 процессор то делаем все так же, только ищем строку с цифрами 328.
Заключение

В данной статье я привел аж три варианта загрузки скетчей в Arduino Pro Mini. Лично я использую второй. Мне он больше нравиться.

Что будете использовать вы — выбирать вам. Оставьте в комментарии какой вариант вы предпочитаете.

Прошивка Arduino Pro Mini через USB to TTL

Прошивка Arduino Pro Mini через USB to TTL

Прошивка Arduino Pro Mini через внешний программатор или Arduino Uno / Nano. Как загрузить код на Arduino Pro Mini, поскольку у платы нет программатора. Для загрузки программы вы можете использовать модуль адаптера PL2303HX USB To RS232 TTL Auto Converter (UART), использовать программатор USBasp или плату Arduino Mega / Nano / Uno. В статье мы рассмотрим наиболее простые способы загрузки программы в Pro Mini.

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

  • Arduino Uno / Arduino Nano / Arduino Mega
  • Arduino Pro Mini
  • адаптер FTDI (USB-TTL)
  • коннекторы
  1. Arduino Pro Mini распиновка, характеристики
  2. Протокол SPI Ардуино (пины MISO, MOSI)
  3. Интерфейс I2C Ардуино (пины SDA и SCL)

Существует две версии Arduino Pro Mini — одна работает от 3,3 Вольт с частотой 8 МГц, а другая от 5 Вольт с частотой 16 МГц. Это важно при подключении питания к микроконтроллеру, если плату с питанием 3,3 Вольт подключить к 5 Вольт, она выйдет из строя. Во-вторых, необходимо проверить, поддерживает ли микроконтроллер Arduino Pro Mini 328 автоматический сброс (вывод DTR) — ниже мы объясним, почему это важно.

Прошивка Ардуино про мини через USB TTL (FTDI)

Прошивка Ардуино про мини через USB TTL

После подключения платы (как показано на схеме выше), запустите утилиту Arduino IDE и выберите COM-порт, где находится программатор. После этого выберите нужную модель Arduino Pro Mini. Затем нажмите на кнопку «Загрузить». Если ваша плата Ардуино про мини не имеет вывода DTR и не выполняет автоматический сброс, вы должны вручную сбросить его, нажав кнопку RST на микроконтроллере при начале компиляции скетча.

Перед использованием модуля FTDI на компьютере должны быть установлены драйверы. Если программатор FTDI обнаружен как «неопознанное устройство», скачайте и установите на свой компьютер драйвер, на которой основан модуль, например, CP2102, CH340/341, FT232 и т.д. И не забудьте, что существует две версии микроконтроллера Pro Mini: одна работает на 3,3 вольта с частотой 8 МГц, а другая — на 5 вольт с частотой 16 МГц.

Прошивка Ардуино про мини через Arduino Uno

Прошивка Ардуино про мини через Arduino Uno

Прошивка Ардуино про мини через другую плату Ардуино — более простой способ загрузить скетч в Arduino Pro Mini Atmega328, при условии, что у вас есть на руках вторая плата Uno или Nano (Arduino Mega также подходит для этой цели). Вам не нужно будет менять никаких настроек в Arduino IDE, просто соедините два микроконтроллера вместе, как показано на схеме, и замкните контакты GND и RESET на плате программатора.

После подключения Arduino Uno к компьютеру в Arduino IDE выберите COM-порт на котором находится Uno, и выберите нужную модель Arduino Pro Mini. Затем нажмите кнопку «Загрузить». При начале компиляции необходимо нажать кнопку RST на плате Arduino Pro Mini Atmega 328, а когда начнется процесс загрузки, отпустить кнопку. Это не всегда получается с первого раза, от вас потребуется сноровка и определенный навык.

Прошивка Ардуино про мини через Arduino Nano

Прошивка Ардуино про мини через Arduino Nano

Arduino Pro Mini Atmega328 не имеет встроенного моста USB-TTL, который позволяет плате общаться с компьютером через последовательное соединение. Поэтому вы можете использовать Arduino Nano или Mega, подключенную к портам коммуникации RX и TX и контактам питания Arduino. Перед загрузкой программы в Ардуино про мини необходимо плату сбросить, для этого на платах есть вывод DTR (Data Terminal Ready).

Заключение. Вы можете использовать все вышеперечисленные методы для прошивки Arduino Pro Mini, чтобы прошить и другие платы Arduino. Например, можно запрограммировать плату Ардуино Нано через Arduino Mega 2560. Также, если у вас под рукой программатор, вы можете не только загружать скетчи в микроконтроллер Atmega328, но и выгружать скетчи из Arduino на компьютер, что может быть очень полезно.

Прошивка Arduino Pro Mini с помощью конвертера PL2303HX.

В предыдущей статье уже рассказывал про USB-to-UART TTL конвертер на PL2303HX и как установить драйвера на Linux, Windows 8/10, Mac OS. А сегодня с помощью данного преобразователя запрограммируем Arduino Pro Mini.

Arduino Pro Mini одна из самых маленьких плат семейства Arduino

Arduino Pro Mini одна из самых маленьких плат семейства Arduino и при этом может использоваться в готовых проектах. Построена на микроконтроллере ATmega168, а позже вышла плата на базе микроконтроллера ATmega328. Платформа содержит 14 цифровых входов и выходов (6 из которых могут использоваться как выходы ШИМ), 6 аналоговых входов. Arduino Pro Mini — это Arduino Nano без встроенного преобразователя FTDI FT232RL (или CH340G). Поэтому прошивка загружается с помощью программатора или конвертора.

Существует две версии платформы Pro Mini.

Существует две версии платформы Pro Mini. Одна версия работает при напряжении 3.3 В и частоте 8 МГц, другая при напряжения 5 В и частоте 16 МГц. В статье для примера буду прошивать Arduino Pro Mini 5 В и частоте 16 МГц с микроконтроллером ATmega328.

 Arduino Pro Mini — это Arduino Nano без встроенного преобразователя FTDI FT232RL

Схема подключения Arduino Pro Mini к PL2303HX.

Для прошивки Arduino Pro Mini нужно подключить к PL2303HX по схеме, которая изображена на картинке. Сложного нет ничего, главное не перепутать подключение питания. Если ваша Arduino Pro Mini работает при напряжении 3.3 В подключаем к данному выводу, в противном случае плата выйдет из строя. В моем случае рабочее напряжение 5В, поэтому запитываю плату от 5 В.

Схема подключения Arduino Pro Mini к PL2303HX.

Для примера загрузим Blink, данный пример есть в среде Arduino IDE.

Для примера загрузим Blink, данный пример есть в среде Arduino IDE.

Затем выберем плату и порт, к которому подключен конвертор PL2303HX.

Затем выберем плату и порт, к которому подключен конвертор PL2303HX.

При загрузке скетча, когда появится надпись «Загрузка», нужно нажать на плате кнопку Reset. (Иногда одно нажатие не срабатывает и нужно произвести 2 кратковременных нажатия.)

При загрузке скетча, когда появится надпись «Загрузка», нужно нажать на плате кнопку Reset.

Нужно нажать на плате кнопку Reset.

После чего вы увидите, что загрузка прошла успешно.

После чего вы увидите, что загрузка прошла успешно.

Если вам нужно программировать Arduino Pro Mini довольно часто, то можно не экономить на программаторе, и купить его с выходом DTR. При загрузке скетча вам не нужно будет постоянно нажимать кнопку Reset. Загрузка будет происходить в автономном режиме.

программатор с выходом DTR

Но и дешёвый преобразователь можно доработать. На чипе PL2303 есть 2-я ножка с сигналом DTR. На чип IDE программа и так посылает сигнал сброса при прошивке, так почему нам его не использовать.

 На чипе PL2303 есть 2-я ножка с сигналом DTR.

Поэтому если вы хотите использовать, к примеру ATmega 8 или 328, то для авто-сброса при прошивке вам необходимо установить конденсатор 0,1мкФ.

Поэтому если вы хотите использовать, к примеру ATmega 8 или 328

 ATmega 8 или 328, то для авто-сброса при прошивке вам необходимо установить конденсатор 0,1мкФ.

Но я не проводил модернизацию своего конвертора PL2303HX . Я не так часто программирую Arduino Pro Mini и нажать на кнопку Reset не так и сложно.

Подведем итог. Запрограммировать Arduino Pro Mini с помощью конвертора PL2303HX не так и сложно. Есть свои нюансы, зная про которые программирование Arduino Pro Mini не многим сложнее, чем загрузка скетча в Arduino NANO.

Понравилась статья Прошивка Arduino Pro Mini с помощью конвертора PL2303HX? Не забудь поделиться с друзьями в соц. сетях.

А также подписаться на наш канал на YouTube, вступить в группу Вконтакте, в группу на Facebook.

Спасибо за внимание!

Технологии начинаются с простого!

Arduino mini Как залить скетч

Кому интересно, история была следующая.
1. Припаял к ножке МК переходника usb-uart проводок DTR.
Ардуино не шьётся.

2. Нашел переходник usb-uart со штатным разъемом DTR (снял с предыдущего проекта на голой AVR).
Ардуино не шьётся.

3. Взял программатор Usbasp для ISP.
Ардуино не шьётся.

Вывод ардуино вышла из строя.
Теперь спустя время, я думаю на ней слетела программа, которая отвечает за прошивку непосредственно чипа на ардуино. Возможно ещё вернусь к этому вопросу позже, но это уже другая тема.

4. Заменил ардуино на аналогичную (покупал две как раз для подобных случаев).
Переходником с самодельным DTR не шьётся.
Переходником со штатным DTR шьётся.
Usbasp шьётся. Обрадовался, поставил на устройство.
Пару раз попрошивал — снова неполадки. Сначала отказал способ с переходником, а затем и по isp.
Вывод. Ситуация аналогичная предыдущей мини.

5. Взял ардуино Уно (позаимствовал у друга, который не подсажен на Китай).
Работает без проблем.
Работа серво никак не сказывается.
Только корпус в срочном порядке пришлось увеличивать.
Смотрится не очень, буду искать качественные мини/микро.

Вывод.
1. Нужно аккуратнее выбирать поставщиков компонентов.
Уйму времени убил на эти две мини.
2. Если кто знает надёжные варианты, будет не плохо, если напишите.
3. Ссылку на продавца моих мини тоже могу привести при необходимости.

По факту, вопрос темы закрыт.

  • NStorm
  • Сообщений: 1978
  • Зарегистрирован: Ср июл 17, 2013 13:55:57

Re: Arduino mini Как залить скетч

Вт май 26, 2020 00:17:41

Выводы не совсем верные. Да, полно залипух на Али, но тут почти наверняка не тот случай. С этими ардуинками проблем не замечено от любых поставищков, если изначально работало. Либо аспом вы фьюзы кривые прошили, либо спалили сами что-то.

  • BOB51
  • Сообщений: 13997
  • Зарегистрирован: Вт мар 16, 2010 22:02:27
  • Откуда: ДОНЕЦК

Re: Arduino mini Как залить скетч

Вт май 26, 2020 09:41:58

Для работы именно «в рамках и при помощи ардуино IDE»
(вопрос о свободном применении платок с другими средами/компиляторами и программаторами требует особого рассмотрения)

«Штатная» прошивка таких плат предпочтительно через адаптер на основе FT232RC
http://img.radiokot.ru/files/20529/1to07i23ar.JPG
Поскольку существуют две разновидности платок 5В/16МГц и 3В/8МГц
— причем не всегда отмаркированные — проверять надо ХУ ИЗ ХУ самостоятельно.
А адаптер на FTDI для таких целей наиболее подходящий — и напряжения можно изменять и выходной каскад от прикладной схемки кормить.
Плюсиком полное совпадение раскладки контактов у про-мини и адаптера.

Касательно ISP прошивалки. наиболее удачным вариантом представляется использование одной ардуино нанки со штатной прошивкой примера из IDE и последующим «обрезанием» нанки.
В среде устанавливаем «программатор «arduino as ISP»».

  • NStorm
  • Сообщений: 1978
  • Зарегистрирован: Ср июл 17, 2013 13:55:57

Re: Arduino mini Как залить скетч

Вт май 26, 2020 10:54:53

предпочтительно через адаптер на основе FT232RC

Ой как уже давно нет.
На Али все эти модули на FT232R как раз таки с фейковыми чипами идут. Их официальный драйвер под Win «ломает», перепрошивая USB VID, PID в нули. Известный случай, куча «ардуинщиков» на это напоролась. Восстанавливается при желании конечно и всё работает дальше, но задача для ТС окажется нетривиальной.
3.3/5В у многих других переходников есть. У меня есть на CP2102, например. Да и ардуино на 3В нынче редкость, это больше для других вещей нужно.

Да и для ISP прошивался USBAsp вполне удачно работает. Не вижу смысла в arduino as isp, если он есть.

  • Luki4G1
  • Сообщений: 10
  • Зарегистрирован: Ср апр 29, 2020 23:22:44

Re: Arduino mini Как залить скетч

Вт май 26, 2020 13:11:15

Да, забыл сразу написать, второй экземпляр мини запитывал только через RAW, а Уно, только через Barrel jack. Напряжение 6,5 В

Re: Arduino mini Как залить скетч

Вт май 26, 2020 14:05:45

На Али все эти модули на FT232R как раз таки с фейковыми чипами идут. Их официальный драйвер под Win «ломает», перепрошивая USB VID, PID в нули.

Два года назад брал на алли такие модули… работают без замечаний.

  • NStorm
  • Сообщений: 1978
  • Зарегистрирован: Ср июл 17, 2013 13:55:57

Re: Arduino mini Как залить скетч

Вт май 26, 2020 14:34:41

Самсусамыч , у вас явный фейк: https://zeptobars.com/en/read/FTDI-FT23 . e-supereal
Они нормально работают. Если не напороться на драйвер, который сносит VID&PID в EEPROM чипа в нули. Видимо не ставили такой драйвер просто.

Re: Arduino mini Как залить скетч

Вт май 26, 2020 14:48:21

Дополнительно под данный модуль драйвера не ставил… он не требовал дополнительно драйверов, так как драйвера уже ранее были установлены под данный чип (FT232R)…

Добавлено after 7 minutes 46 seconds:

Самсусамыч , у вас явный фейк:

Почитал по ссылке… на моих чипах надписи выполнены гравировкой а не краской.

  • BOB51
  • Сообщений: 13997
  • Зарегистрирован: Вт мар 16, 2010 22:02:27
  • Откуда: ДОНЕЦК

Re: Arduino mini Как залить скетч

Вт май 26, 2020 14:50:38

Ессно ставится «рекомендуемый».
(2.08.14)

Powered by phpBB © phpBB Group.

phpBB Mobile / SEO by Artodia.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *