Самостоятельная перепрошивка Arduino Pro Mini
Микроконтроллер Arduino pro mini – самая компактная плата линейки
Arduino pro mini – специализированная электронная платформа в виде микросхемы, предназначение которой состоит в создании электронных устройств.
Следовательно, в микроконтроллере отсутствует привычная микросхема, роль которой заключается в поддержании связи с помощью USB-UART. Цена намного дешевле, в отличие от других представителей Arduino.
Pro Mini или просто pro – модельный ряд, не оснащенный разъемами USB, которые используются для подключения и прошивания устройства.
Вместо этого существует программатор. Начинающий электронщик может выбрать из двух доступных вариантов изделия: Ардуино с 3,3 В и 8 МГц или Ардуино про мини 5 V, в котором доступна распиновка. Статья ниже познакомит читателя с особенностями модели и покажет, где можно использовать электронную плату.
Техническая сторона Arduino mini:
- рабочее напряжение, требуемое для нормальной работоспособности – 3,3 и 5 Вольт;
- напряжение, используемое при входе – 3-12 или 5-12 Вольт;
- количество цифровых входов и выходов – 14 штук, 6 из которых эксплуатируются как выходы ШИМ;
- состояние постоянного тока, требуемого для входа и выхода – 40 мА;
- flash-память – 16 Кб, но 2 Кб предназначены для загрузчика;
- оперативная память – 1 Кб;
- eeprom – 512 байт;
- частота тактов – в первой модели 8 МГц, а во второй 16 МГц;
- Arduino pro включает i2c-интерфейс.
Также стоит отдельно сказать про размеры платы — они, на самом деле очень скромные. Многие кто знакомятся с линейкой ардуино в первый раз всегда удивляются размерам, когда достают МК из коробки. Ниже вы можете оценить плату в дюймах и в сантиметрах.
Аппаратная часть мк Arduino pro mini
В таблице ниже описана аппаратная часть Arduino pro mini. На Arduino mini pro особое внимание уделяется входам и выходам.
Аппаратная часть | Особенности |
Питание | На платформе Ардуино мини про расположен разъем для подсоединения кабеля FTDI, с помощью которого устройство получает питание. Также возможно включать ардуинку через вывод Vcc или RAW. Рассмотрим подробнее источники питания на Ардуино мини:
|
Состояние памяти | Распределение памяти на схеме Ардуино мини про:
|
Количество входов и выходов и их предназначение | Для распиновки разработчики Ардуино про выделили 14 контактов, которые пользователь самостоятельно настраивает, как входы или выходы. На вывод потребуется 3,3 Вольта. В настройках по умолчанию нагрузочный резистор, сделанный для вывода, пропускает 40 мА. Особенные функции для Arduino mini pro pinout:
|
Как мы уже заметили ранее — по размерам Arduino mini pro компактна и подойдет для конструирования любого устройства.
Схема и распиновка Pro Mini
Принципиальная схема микроконтроллера выглядит так:
Принципиальная схема платы
Теперь перейдем к распиновке платы:
Распиновка микроконтроллера
Программирование мк Arduino pro mini
Все программы программируются с помощью бесплатной среды разработки для Arduino pro mini. В Arduino mini включен ATmega328, в который предварительно вшивается загрузчик. Поэтому пользователь может свободно загружать программы в память микроконтроллера. Связь обеспечивает протокол STK500.
Распиновка ATmega328
Как прошить Ардуино про мини без загрузчика с помощью внешнего программатора? Легко и просто.
Для начала потребуется отменить требование на нажатие кнопки перезагрузки перед тем, как прошивать код написанной программы. Ардуино mini pro сконструирован так, что перезагрузка посредством программного обеспечения доступна напрямую с любого компьютерного устройства. В 6-контактных выводах есть один, который напрямую связан с линией сброса Arduino 328 pro с помощью конденсатора на 100 нФ.
Через управление вышеописанным выводом возможно преобразовать USB или последовательный порт путем подключения к разъему. Если сделать так, что появится уровень ниже нормы в течение продолжительного времени, платформа автоматически перезагрузится.
СПРАВОЧНИК ПРОГРАММИСТА ARDUINO
Arduino IDE дает возможность пользователю, чтобы тот загрузил программный код при одном нажатии на кнопку для загрузки бесплатной среды разработки.
Arduino IDE
Однако повышается риск неоправданных последствий и поломки платформы. Если на компьютере электронщика установлена операционная система Мак Ос или Линукс, то сбрасывание на микроконтроллере будет происходить каждый раз, когда программное обеспечение с помощью USB-кабеля с платформой.
Спустя половину секунды с момента сброса начинает свою работу загрузчик. В основном, загрузчик устроен так, чтобы не перехватывать другие данные, однако нередко все происходит наоборот: перехватываются первые байты данных программы, которые отправляются на плату при установленном соединении.Чтобы устранить такой «баг», необходимо в коде программы, которая будет работать на Ардуино, проверить, как осуществляется процесс передачи данных программы с компьютера на платформу. Оптимальное время для отправления кода – секунда с момента установки соединения между устройствами.
Реализация проектов на базе микроконтроллера Arduino pro mini
Сегодня в интернете можно найти любой проект на Ардуино. И это неудивительно, ведь эта платформа популярна среди начинающих разработчиков электронных приспособлений для дома и дачи. Ниже представлено несколько известных и простых проектов, в основе которых используется платформа Ардуино:
- Сигнализация, построенная с помощью подключения dfplayer к Ардуино pro.
- Управляемая конструкция для квадрокоптера.
- Автоматизация аквариума.
- Таймер.
- Анализатор влажности почвы.
- Автополив для комнатных растений.
- Датчик, измеряющий осадки и скорость ветра.
Источник: https://ArduinoPlus.ru/arduino-pro-mini/
Arduino mini размеры. Самостоятельная перепрошивка Arduino Pro Mini
Инструкция
Сначала пара слов о самом программаторе. Купить такой можно за 2 доллара в любом китайском интернет-магазине.Разъём типа USB-A используется, понятно, для подключения программатора к компьютеру.ISP-соединитель нужен для подключения к программируемой плате.Джампер JP1 контролирует напряжение на VCC выводе ISP-коннектора. Оно может быть 3,3 В или 5 В.
Если целевое программируемое устройство имеет собственный источник питания, нужно убрать перемычку.Джампер JP2 используется для перепрошивки самого программатора; в данной статье не рассматривается.Перемычка JP3 нужна, если тактовая частота целевого устройства ниже 1,5 МГц.
Два светодиода показывают: G — питание подаётся на программатор, R — программатор соединён с целевым устройством.
Подключим программатор к USB-порту компьютера. Скорее всего, через какое-то небольшое время операционная система сообщит, что ей не удалось найти драйвер для данного устройства.
В этом случае скачаем драйвер для программатора с официального сайта http://www.fischl.de/usbasp/. Распакуем архив и установим драйвер стандартным способом. В диспетчере устройств должен появиться программатор USBasp.
Теперь программатор готов к работе. Отключаем его от компьютера.
Воспользуемся макетной платой и соединительными проводами — это будет быстро и надёжно. Соединяем разъём программатора с выводами на Arduino Pro Mini согласно приведённой выше схеме.
Arduino Pro Mini — вид спереди | Arduino Pro Mini — вид сзади |
Общие сведения
Arduino Pro Mini — это устройство на базе микроконтроллера ATmega328.
В его состав входит: 14 цифровых входов/выходов (из них 6 могут использоваться в качестве ШИМ-выходов), 8 аналоговых входов, кварцевый резонатор, кнопка сброса и контактные площадки для впаивания разъемов.
Шестиконтактный разъем может служить для питания и взаимодействия с платой через USB посредством FTDI-переходника либо макетной платы Sparkfun.
Arduino Pro Mini предназначен для полустационарного монтажа в различное оборудование или установки. Плата специально поставляется без впаянных разъемов, что позволяет пользователю впаивать провода или использовать необходимые типы разъемов по своему усмотрению. По расположению выводов Arduino Mini Pro совместим Arduino Mini.
Существует две версии Pro Mini: одна работает от 3.3В при частоте 8 МГц, другая — от 5В при 16 МГц.
Arduino Pro Mini разработан и изготовлен фирмой SparkFun Electronics.
Характеристики
Микроконтроллер | ATmega168 или ATmega328 |
Рабочее напряжение | 3.3В или 5В (в зависимости от модели) |
Напряжение питания | 3.35-12В (для модели 3.3В) или 5 — 12В (для модели 5В) |
Цифровые входы/выходы | 14 (из них 6 могут использоваться в качестве ШИМ-выходов) |
Аналоговые входы | 8 |
Максимальный ток одного вывода | 40 мА |
Flash-память | 16 КБ (из которых 2 КБ используются загрузчиком) |
SRAM | 1 КБ |
EEPROM | 512 байт |
Тактовая частота | 8 МГц (для модели 3.3В) или 16 МГц (в модели 5В) |
Питание
Arduino Pro Mini может быть запитан от различных источников:
- через макетную плату;
- через переходник FTDI , подсоединенный к шестиконтактному разъему;
- от стабилизированного источника питания с напряжением 3.3В или 5В (в зависимости от модели), подключенного к выводу Vcc.
Кроме того, на плате есть встроенный стабилизатор напряжения, благодаря которому допускается подавать на плату напряжение питания величиной до 12В. Если для питания платы используется нестабилизированный источник питания, убедитесь, что он подсоединен к выводу «RAW», а не VCC.
Ниже перечислены выводы питания, расположенные на плате:
- RAW. Для питания платы от нестабилизированного источника напряжения.
- VСС. Стабилизированное напряжение 3.3В или 5В.
- GND. Выводы земли.
Память
Объем флеш-памяти программ микроконтроллера ATmega328 составляет 32 КБ (из которых 2 КБ используются загрузчиком). Микроконтроллер также имеет 1 КБ памяти SRAM и 512 байт EEPROM (из которой можно считывать или записывать информацию с помощью библиотеки EEPROM).
Связь
Arduino Pro Mini предоставляет ряд возможностей для осуществления связи с компьютером, еще одним Ардуино или другими микроконтроллерами.
В ATmega328 имеется приемопередатчик UART, позволяющий осуществлять последовательную связь посредством цифровых выводов 0 (RX) и 1 (TX).
В пакет программного обеспечения Ардуино входит специальная программа, позволяющая считывать и отправлять на Ардуино простые текстовые данные через USB-соединение.ATmega328 в Arduino Pro Mini выпускается с прошитым загрузчиком, позволяющим загружать в микроконтроллер новые программы без необходимости использования внешнего программатора. Взаимодействие с ним осуществляется по оригинальному протоколу STK500 ( , ).
Автоматический (программный) сброс
Чтобы каждый раз перед загрузкой программы не требовалось нажимать кнопку сброса, Arduino Pro Mini спроектирован таким образом, который позволяет осуществлять его сброс программно с подключенного компьютера. Один из выводов шестиконтактного разъема соединен с выводом RESET микроконтроллера ATmega328 через конденсатор номиналом 100 нФ.
При подключении компьютеру этот вывод также связан с одной из линий, участвующих в аппаратном управлении потоком данных, идущих через преобразователь USB-Serial: при использовании кабеля FTDI — с линией RTS, при использовании макетной платы Sparkfun — с линией DTR.
Когда на этой линии появляется ноль, вывод RESET, соответственно, также переходит в низкий уровень на время, достаточное для перезагрузки микроконтроллера. Данная особенность используется для того, чтобы можно было прошивать микроконтроллер всего одним нажатием кнопки в среде программирования Ардуино.
Такая архитектура позволяет уменьшить таймаут загрузчика, поскольку процесс прошивки всегда синхронизирован со спадом сигнала на линии RESET.
Однако эта система может приводить и к другим последствиям. При подключении Pro Mini к компьютерам, работающим на Mac OS X или Linux, его микроконтроллер будет сбрасываться при каждом соединении программного обеспечения с платой.
После сброса на Pro Mini активизируется загрузчик на время около полсекунды. Несмотря на то, что загрузчик запрограммирован игнорировать посторонние данные (т.е.
все данные, не касающиеся процесса прошивки новой программы), он может перехватить несколько первых байт данных из посылки, отправляемой плате сразу после установки соединения.Соответственно, если в программе, работающей на Ардуино, предусмотрено получение от компьютера каких-либо настроек или других данных при первом запуске, убедитесь, что программное обеспечение, с которым взаимодействует Ардуино, осуществляет отправку спустя секунду после установки соединения.
Физические характеристики
Габаритные размеры печатной платы Arduino Pro Mini: 1.8 см х 3.3 см.
Arduino Pro Mini вид сверху
Arduino Pro Mini вид снизу
Данная плата предназначена для использования в готовом устройстве. Поэтому у этого микроконтроллера нет встроенной микросхемы для связи по USB-UART. Так же нет и разъемов USB для подключения и прошивки. Это позволяет сильно уменьшить размеры платы, а также ее стоимость. Для подключения к компьютеру и прошивки используется специальный программатор.
Существует две версии данной платы: с питанием 3,3 В и частотой 8 МГц и с питанием от 5 В с частотой 16 МГц. В младшей версии этой ардуинки используется чип ATmega168. Этот чип обладает меньшим объемом flash-памяти, энергонезависимой памяти, а так же пониженной тактовой частотой.
Так как цена разных версий Arduino Pro Mini практически не отличается мы поговорим о старшей версии с чипом ATmega328 и тактовой частотой 16 МГц.
Arduino Pro Mini 5 В
Эта версия снабжена микроконтроллером ATmega328. В отличии от своего младшего собрата, он имеет вдвое большие объемы энергонезависимой и flash памяти. И может похвастаться тактовой частотой в 16 МГц. Узнать о способах прошивки этого микроконтроллера вы можете в моей статье:
Купить Arduino Pro Mini
- Качество практически не отличается от оригинальных плат, произведенных в Италии.
- Цена в разы ниже. Итальянская ардуино про мини стоит около 7$, а в Китае этот микроконтроллер обойдется в 1,5$
- В российских магазинах наценка составляет 100-500%. При этом очень часто под видом оригинальной платы могут продавать китайские, да еще и очень низкого качества.
- На алиэкспрессе вы легко можете найти надежных продавцов с хорошими отзывами.
- Вы можете воспользоваться скидочными купонами и кэшбэк сервисами.
Подключение питания к Arduino Pro Mini
Этот микроконтроллер можно питать тремя способами:
- Переходником FTDI, подключенному к 6 соответствующим пинам.
- Подавая стабилизированное напряжение на вывод Vcc. 3,3 В или 5 В в зависимости от версии
- Подавая напряжение на вывод RAW. 3,3-12 В или 5-12 В в зависимости от версии
Как уже было написано выше, плата имеет 14 цифровых пинов. На плате они помечены порядковым номером. Они могут быть как входом так и выходом. Рабочее напряжение этих пинов составляет 3,3 В или 5 В.
Аналоговые пины на плате помечены ведущей «A». Эти пины являются входами и не имеют подтягивающих резисторов. Они измеряют поступающее на них напряжение и возвращают значение от 0 до 1024 при использовании функции analogRead(). Эти пины измеряют напряжение с точностью до 0,005 В.
Широтно-импульсная модуляция (ШИМ) Arduino Pro Mini
ШИМ выходы у этой платы никак не помечены. Нужно просто запомнить номера цифровых выводов, которые подключены к широтно-импульсному генератору. У Arduino Pro Mini есть 6 выводов ШИМ, это пины 3, 5, 6, 9, 10 и 11. Для использования ШИМ у Arduino есть специальная функция .
Другие пины:
- 0(Rx) и 1(Tx) используются для передачи данных по последовательному интерфейсу.
- Выводы 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK) рассчитаны для связи по интерфейсу SPI.
- Так же на выводе D13 имеется встроенный в плату светодиод.
- А4 (SDA) и А5 (SCL) могут использоваться для связи с другими устройствами по шине I2C. Подробнее про этот интерфейс вы можете почитать на википедии . В среде разработке Arduino IDE есть встроенная библиотека «wire.h» для более легкой работы с I2C.
Как прошить 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, что не всегда получается сделать вовремя, и это вносит свои неудобства.
Подключение переходник вы можете посмотреть по таблице ниже:
RX | RX |
TX | TX |
GND | GND |
5V | VCC |
RST или DTR или GRN | RST или DTR |
Второй способ. Прошиваем через Arduino UNO
Для этого способа нам понадобиться классическая Arduino UNO. Классическая эта та, в которой корпус микросхемы выполнен в DIP корпусе и вставлен в специальный разъем. Вот эту микросхему нам надо аккуратно поддеть отверткой. Тут важно не сломать процессор, поддевайте аккуратно, не погнув ноги.
Arduino UNO. Процессор выполнен в DIP корпусе.Аккуратно поддеваем и вытаскиваем процессор отверткой.
После того как мы вытащили процессор из Arduino UNO мы по сути получили тот самый переходник USB в TTL, осталось только соединить проводами наш новый переходник и 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 в этом случае делиться на два этапа:
- Прошивка платы Arduino как ISP программатора.
- Настройка Arduino IDE и загрузка скетча в Arduino Pro Mini.
Первым делом мы должны подготовить наш будущий программатор. Возьмем для примера всю туже Arduino UNO. Далее пошагово:
- Запускаем Arduino IDE.
- Файл — Примеры — 11.ArduinoISP — ArduinoISP.
- Инструменты — Плата — Arduino UNO.
- Инструменты — Порт — Выбираем COM-порт.
- Компилируем и заливаешь в Arduino UNO.
Далее нам необходимо соединить две Arduino проводами по следующей схеме:
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 Mini3. Инструменты — Процессор — 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. Лично я использую второй. Мне он больше нравиться.
Что будете использовать вы — выбирать вам. Оставьте в комментарии какой вариант вы предпочитаете.
Успехов вам и удачи.
Источник: http://arduino.on.kg/kak-proshit-Arduino-Pro-Mini-ot-a-do-ya