Микроконтроллер Arduino pro mini – самая компактная плата линейки
27 февраля в 15:36
Публикации / Arduino
Arduino pro mini – специализированная электронная платформа в виде микросхемы, предназначение которой состоит в создании электронных устройств.
Следовательно, в микроконтроллере отсутствует привычная микросхема, роль которой заключается в поддержании связи с помощью USB-UART. Цена намного дешевле, в отличие от других представителей Arduino.
Pro Mini или просто pro – модельный ряд, не оснащенный разъемами USB, которые используются для подключения и прошивания устройства.
Вместо этого существует программатор. Начинающий электронщик может выбрать из двух доступных вариантов изделия: Ардуино с 3,3 В и 8 МГц или Ардуино про мини 5 V, в котором доступна распиновка. Статья ниже познакомит читателя с особенностями модели и покажет, где можно использовать электронную плату.
Характеристика мк Arduino pro mini
Техническая сторона 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 Pro Mini по размерам сравнима с флэшкой. Рассмотрим схему платы Arduino Pro Mini ATmega328/168, распиновку, характеристики и способы прошивки.
Плата Arduino Pro Mini по размерам сравнима с флэшкой, но при этом имеет 14 полноценных портов ввода – вывода, 6 и которых – это аналоговые PWM порты. Платформа построена на базе микроконтроллера ATmega168 с частотой 8 МГц или 16 МГц (ATmega328). Рассмотрим подробнее схему платы Ардуино Про Мини, распиновку портов, характеристики и способы программирования (прошивки) данной модели.
Arduino Pro Mini: распиновка платы
Характеристики Arduino Pro Mini 5V не отличаются от платы Arduino Nano. Основное различие состоит в отсутствии микросхемы для прошивки Pro Mini по USB-UART.
Связь с ПК производится по кабелю FTDI или с помощью дополнительной платы Sparkfun.
Благодаря этому размеры платы более компактные, что позволяет использовать платформу в готовых мини-проектах, где важны небольшие габариты комплектующих.
Распиновка Arduino Pro Mini ATmega328 / ATmega168
Нумерация портов и их назначение полностью дублируют плату Arduino UNO r3. Из 14 портов ввода – вывода, 6 портов могут работать в режиме ШИМ с разрешением 8 бит.
Последовательная шина UART находится на портах 0 (RX) и 1 (TX), связь по протоколу I2C на Pro Mini Arduino с LCD дисплеем осуществляется на аналоговых портах с дополнительными функциями в работе: порт A4 (SDA) и порт A5 (SCL).
Характеристики Arduino Pro Mini
- Микроконтроллер: ATmega168 или ATmega328
- Тактовая частота: 8 МГц и 16 МГц
- Входное напряжение питания: 3,3-12 В или 5-12 В
- Напряжение логических уровней: 3,3 или 5 В
- Портов ввода-вывода общего назначения: 20
- Максимальный ток с пина ввода-вывода: 40 мА
- Портов с поддержкой ШИМ: 6
- Портов, подключённых к АЦП: 8
- Разрядность АЦП: 10 бит
- Flash-память: 16 кб
- SRAM-память: 1 кб
- EEPROM-память: 512 байт
- Габариты платы: 33×18 мм
Arduino Pro Mini: схема платы
Принципиальная электрическая схема Arduino Pro Mini
Arduino Pro Mini: питание платы, порты
Платы Arduino Pro выпускаются с двумя вариантами питания – 3,3 Вольта для микроконтроллера с частотой 8 МГц и 5 Вольт для микроконтроллера с частотой 16 МГц. Обе версии подключаются к источнику питания через кабель FTDI или плату Sparkfun. Стабилизированное напряжение 3,3 В или 5 В (в зависимости от модели) можно подать на порт VCC, не регулируемый источник подключается к порту RAW.
Схема портов на плате Arduino Pro Mini ATmega168 / ATmega328
Pro Mini : питание от внешнего источника
5V – на пин подается 5 В от внутреннего стабилизатора 3.3V – на пин подается 3,3 В, можно использовать для подключения устройств GND – пин для вывода земли VIN – пин для подключения внешнего источника питания
IREF – пин для информирования о рабочем напряжении платы
Arduino Pro Mini: прошивка, программирование
Микропроцессор Arduino Pro Mini разработан со встроенным загрузчиком, т.е. запись скетчей в плату производится без использования программаторов.
Это значительно облегчает работу с платой, особенно новичкам. Прошивка Arduino Pro Mini ATmega328 производится в среде Arduino IDE 1.8, которую можно скачать на сайте разработчика www.arduino.cc.
Дополнительные драйвера для Pro Mini Arduino не требуются.
Подключение Pro Mini для прошивки через USB
Pro Mini поддерживает три типа памяти:
Flash–память объемом 16 кБ, используется для хранения прошивки. Когда в контроллер записывается программа, она сохраняется именно во Flash–память. Чтобы очистить Flash–память следует загрузить пустой скетч (программу).
SRAM — это оперативная память объемом 1 кБ на Arduino Pro Mini. Здесь хранятся переменные, создаваемые в скетче. SRAM — это энергозависимая память, при отключении внешнего источника питания — данные удалятся.
EEPROM — это энергонезависимая память в 512 байт. Сюда можно сохранять данные, которые при отключении от источника питания не удалятся. Минус данной памяти в ограничении циклов перезаписи — не более 100 тысяч раз.
(3 votes, average: 5,00
Источник: http://xn--18-6kcdusowgbt1a4b.xn--p1ai/arduino-pro-mini/
Описание платы arduino pro mini. Arduino Pro Mini — распиновка и характеристики. Схема и исходный проект
В жизни начинающего ардуинщика рано или поздно наступает момент, когда хочется сэкономить на размере своего изделия, не жертвуя при этом функциональностью.
И тогда Arduino Pro Mini – отличное для этого решение! За счёт того, что у этой платы отсутствует встроенный USB-разъём, она в полтора раза меньше Arduini Nano. Но для того, чтобы её запрограммировать, придётся приобрести дополнительный – внешний – USB-программатор.
О том, как «залить» написанную программу в память микроконтроллера и заставить Arduino Pro Mini работать, и пойдёт речь в этой статье.
В первой строке элементов навигации нас будет интересовать только всплывающее меню «Инструменты», в котором будут найдены настройки подключения и программирования для платы. Мы опишем его позже. В следующей строке мы найдем несколько значков.
После нажатия программа проверяет и проверяет код. Если он обнаружит ошибку, он выделит ее в синтаксисе. Кроме того, мы находим значок правой стрелки – Загрузить. Другой значок с переводом новой страницы значок, который создает новый файл после нажатия.
Следующая стрелка вверх – Открыть – открывает меню для открытия программ.
Вам понадобится
- Arduino Pro Mini;
- USBasp-программатор;
- компьютер;
- соединительные провода.
1 Программатор для Arduino
Сначала пара слов о самом программаторе. Купить такой можно за 2 доллара в любом китайском интернет-магазине.
- Разъём типа USB-A используется, понятно, для подключения программатора к компьютеру.
- ISP-соединитель нужен для подключения к программируемой плате.
- Джампер JP1 контролирует напряжение на выводе VCC ISP-коннектора. Оно может быть 3,3 В или 5 В. Если целевое программируемое устройство имеет собственный источник питания, нужно убрать перемычку.
- Джампер JP2 используется для перепрошивки самого программатора; в данной статье этот вопрос не рассматривается.
- Перемычка JP3 нужна, если тактовая частота целевого устройства ниже 1,5 МГц.
- Светодиоды показывают: G – питание подаётся на программатор, R – программатор соединён с целевым устройством.
2 Установка драйвера для программатора
Подключим программатор к USB-порту компьютера. Скорее всего, через какое-то небольшое время операционная система сообщит, что ей не удалось найти драйвер для данного устройства.
Стрелка вниз – Сохранить – сохраняет текущую программу. Это вызовет последовательный монитор, о котором мы поговорим в следующий раз.
Большое количество пробелов используется для написания кода, а нижнее пространство ниже отображает информацию и операторы ошибок из среды выполнения. Однако самый простой способ – использовать библиотеку проводки.
Из-за своей сложности он иногда упоминается как отдельный язык программирования. В редакторе появляется следующий код. Мы можем видеть две вещи в примере кода.
Первый – наличие двух блоков программы. Жирные скобки включают код, который выполняется только один раз в начале программы. В их отсутствие программа была бы ошибкой. Мы также должны заметить двойную косую черту.
Это говорит нам о комментариях в программе. Часть кода или текста, написанного за косой чертой, будет проигнорирована программой.
Он используется, когда мы хотим написать примечание к части кода или если мы хотим некоторое время отказаться от части кода.
В этом случае скачаем драйвер для программатора с официального сайта . Распакуем архив и установим драйвер стандартным способом. В диспетчере устройств должен появиться программатор USBasp. Теперь программатор готов к работе. Отключаем его от компьютера.
Мы можем встретить два типа комментариев. Самая яркая особенность – белое окно с текстовым редактором для написания кода. Часто используемым помощником является также окно для отображения сообщений из последовательной линии. Это написано в текстовом редакторе среды разработки. Текстовый редактор занимает основную часть экрана.
Поддерживаемые языки
Внизу вы найдете консоль, содержащую отчеты о деятельности и запуск программы. В правом нижнем углу вы найдете текст с информацией о текущей выбранной плате и последовательном порту, к которому он присоединен. Затем выберите «Редактор языков», чтобы найти раскрывающийся список поддерживаемых языков.
3 Схема подключения Arduino к программатору
Соединяем ISP-разъём программатора с выводами на 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 МГц.
Сгоревший загрузчик содержит коды для инициализации модуля на плате. После того, как питание подается на процессор, пришло время запрограммировать последовательный порт. Если нет, запустите программу в одном образце.
С моим преобразователем обе стороны заземлены заземленными. Это видно на фиг. 3 на пятом штифте, который частично скрыт под конденсатором.
Вот почему мне пришлось повторно просверлить отверстия после сверления с обеих сторон.
Если вы используете одноразовое программирование, можно отключить автоматическую настройку и, как правило, ввести программу в одну программу с помощью классического программиста. Если мы используем программиста, мы можем загрузить загрузчик в любое время.
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.
Эти платы также обычно используют другие типы процессоров. Программисту не нужно иметь дело с конкретными деталями реализации конкретного оборудования, но использует библиотеки более высокого уровня.
Скомпилированный код будет загружен на ваш компьютер и затем загружен на плату разработки, которая будет работать в качестве следующего диска при подключении к вашему компьютеру. Транспорт в Чешскую Республику стоит около 130 крон.
Он предназначен для людей, которые не хотят изучать детали процессоров и как их программировать.
Примеры программ являются частью среды разработки. Вы можете использовать кнопку «Проверить», чтобы перевести программу. Откройте меню «Проект» – «Добавить библиотеку» – «Добавить». С этого момента библиотека может использоваться в проектах.
Но что, если наша гениальная идея окажется действительно полезной? Он имеет компактный минималистский дизайн, который позволяет легко использовать его в небольших проектах. На этом этапе мы переходим к существу дела.
Вопреки внешнему виду решение очень простое и универсальное.
Ниже перечислены выводы питания, расположенные на плате:
- RAW. Для питания платы от нестабилизированного источника напряжения.
- VСС. Стабилизированное напряжение 3.3В или 5В.
- GND. Выводы земли.
Память
Объем флеш-памяти программ микроконтроллера ATmega328 составляет 32 КБ (из которых 2 КБ используются загрузчиком). Микроконтроллер также имеет 1 КБ памяти SRAM и 512 байт EEPROM (из которой можно считывать или записывать информацию с помощью библиотеки EEPROM).
Правильная связь будет происходить, когда передатчик одного устройства подключен к другому. Подключенная система готова к программированию. Чувство правильного момента довольно легко. Но это требует некоторых действий. Таким образом, мы получаем полнофункционального программиста.
Автоматический сброс
Он поставляется в двух версиях. Один работает при пониженном напряжении 3 В, а при более низких тактовых частотах меньше потребляет энергию. Если размер пластины настолько мал, что отсутствует? Фактическое соединение можно посмотреть на этом рисунке.
В случае мини-плиток, которые из-за их небольшого размера часто находятся в труднодоступных местах, это решение имеет несомненное преимущество перед ручным сбросом.
Источник: https://bazava.ru/description-of-arduino-pro-mini-arduino-pro-mini-pinout-and-specifications.html
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
Характеристики
- Микроконтроллер: ATmega168 или ATmega328
- Предельное напряжение питания: 3,3-12 В и 5-12 В
- Цифровых вводов/выводов: 14
- ШИМ: 6 цифровых пинов могут быть использованы как выводы ШИМ
- Аналоговые выводы: 8
- Максимальная сила тока: 40 mAh с одного вывода и 400 mAh со всех выводов.
- Flash память: 16 кб
- SRAM: 1 кб
- EEPROM: 512 байт
- Тактовая частота: 8 МГц и 16 МГц
Подключение питания к Arduino Pro Mini
Этот микроконтроллер можно питать тремя способами:
- Переходником FTDI, подключенному к 6 соответствующим пинам.
- Подавая стабилизированное напряжение на вывод Vcc. 3,3 В или 5 В в зависимости от версии
- Подавая напряжение на вывод RAW. 3,3-12 В или 5-12 В в зависимости от версии
Распиновка Arduino Pro Mini
Распиновка Arduino Pro Mini
Как уже было написано выше, плата имеет 14 цифровых пинов. На плате они помечены порядковым номером. Они могут быть как входом так и выходом. Рабочее напряжение этих пинов составляет 3,3 В или 5 В.
Аналоговые пины на плате помечены ведущей «A». Эти пины являются входами и не имеют подтягивающих резисторов. Они измеряют поступающее на них напряжение и возвращают значение от 0 до 1024 при использовании функции analogRead(). Эти пины измеряют напряжение с точностью до 0,005 В.
Широтно-импульсная модуляция (ШИМ) Arduino Pro Mini
ШИМ выходы у этой платы никак не помечены. Нужно просто запомнить номера цифровых выводов, которые подключены к широтно-импульсному генератору. У Arduino Pro Mini есть 6 выводов ШИМ, это пины 3, 5, 6, 9, 10 и 11. Для использования ШИМ у Arduino есть специальная функция analogWrite().
Другие пины:
- 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 имеет следующие размеры: длина 33 мм и ширина 18 мм, а весит всего около 10 грамм. Расстояние между выводами равняется 2,54 мм.
Принципиальная схема Arduino Pro Mini
Принципиальная схема Arduino Pro MiniПредыдущая статьяArduino Leonardo
Источник: https://all-arduino.ru/product/arduino-pro-mini/
Arduino Pro Mini на микроконтроллере ATmega328P-AU, настроенная на питание 3.3V и частоту 8MHz
Большинство модулей, продаваемых как части конструктора для Arduino, представляет из себя плату с линейным стабилизатором и надписью: «входное напряжение от 3 до 5 Вольт», а сами микросхемы, выполняющие работу модулей, зачастую питаются от напряжения 3.3В, и иногда могут работать при понижении его до 3 или 1.8В.
Данный модуль поможет оптимизировать размер и увеличить время работы моего GPS-логгера… Упакован о Ардуино в пакетик со штрих-кодом:Может, это оригинальный модуль?Светодиод индикации питания зелёного цвета, #13 — красного:Зачем нужен именно этот Ардуино — на 3.3В, а не как все — на 5В по $1.
4? Всё хорошо, когда нам надо показать чудо, происходящее при подключении устройства к Ардуино: мы покупаем модули, цепляем их к общему источнику на 5В, загружаем скетч — и всё блестит и пыхтит.
Но при разработке более-менее используемых устройств, приходится задумываться и об энергоэффективности, и о компактности, — в результате, из схем вылетает половина лишних блоков.
Как видно, процессор Atmega328 данного модуля может работать на напряжении 2.
7В, причем на стабилизаторе напряжение практически на падает; для сравнения, на 5-вольтной Ардуино (из предыдущей версии GPS-логгера) у меня наблюдалось напряжение 3.6 В при питании от 5В на входе RAW.
Оптимизировать я собрался вот это устройство — оно, кроме корпуса и платы Ардуино, состоит из:
— аккумулятора, напряжением 3 — 4.15В; — модуля повышения напряжения до 5В; — модуля понижения напряжения до 3.3В, входящего в состав GPS-модуля;
— сам GPS-модуль на NEO-6M;
— плата согласования уровней сигналов SD-карты (с питанием от вышеупомянутого модлуя); — геркона — детектора каданса; — светодиодов индикации каданса и состояния GPS. Что предстоит сделать:
— добавить транзистор для отключения питания устройства и кнопку, как показано комментарии от unnk2004;
— убрать модуль повышения напряжения; — перекоммутировать устройства так, чтобы всё работало от одного понижающего модуля на 3.3В и у Ардуино была возможность мониторить напряжение аккумулятора и отключаться от него при необходимости; — убрать плату согласования уровней сигналов SD-карты; — оптимизировать расположение светодиодов и элементов внутри корпуса.
Начнем с измерения уровня логической единицы.
void setup() { pinMode(9, OUTPUT); digitalWrite(9, HIGH); } void loop() {}Мультиметр показывает на 9 контакте Ардуино 3.33 В.
Далее, попробуем подключить SD-карту. Паяем проводки напрямую к контактам адаптера SD -> MisroSD:
Скрипт теста скорости, взятый из этого обзора,
выдал W/R, Kbps: 540/102. Раньше было больше — 859/179. Припаяем конденсатор (1uF) к контактам 3 и 4 адаптера:
W/R, Kbps: 630/97;
на карточке 16GB выдаёт W/R, Kbps: 802/100, а было 893/180. Ну да ладно, может это из-за того, что данная Ардуино настроена на частоту 8МГц или проводки тонкие.
Проверим теперь этот GPS-модуль.
Кстати, с какой скоростью он выдаёт информацию? У меня был файл с логом, за две минуты набегает 5.42 КБ (4336 Кб) ~ 37 Кб/с, если я не ошибся, то скорость почти в 15 раз меньше.
Те же проводки, питание соединяем без стабилизатора — напрямую к VCC, TX -> 2:Скрипт посимвольно читает из программного последовательного порта и пишет в аппаратный, к которому мы подключили программатор и смотрим, что выдается:#include // Для использования программного порта.
SoftwareSerial mySerial(2, 3); // Инициализируем 2 контакт Arduino. char ch; // Буфер. void setup() { Serial.begin(9600); mySerial.begin(9600); } void loop() { // Если прочёлся символ из программного пота, if ((ch = mySerial.read()) != -1) Serial.write(ch); // пишем его в аппаратный.
}В «Мониторе порта» приходят строки характерные для GPS-модуля:Код, написанный ранее, на самом деле, иногда глючит, поэтому етсь еще необходимость в его доработке. Собрав такой альфа-вариант:
переписал скрипт —
почти готовый GPS-логгер
#include #define SER_SP 9600 // Скорость последовательного порта. File flDataFile; // Файл для записи GPS-строк. char chGpsLint[128]; // Переменная для хранения GPS-строки, byte btReaded; // её длина. void setup() { Serial.begin(SER_SP); // Настраиваем порт. if (!SD.begin()) // Если не получается начать работать с картой, delay(3600000); // ничего не делаем час. flDataFile = SD.open(“-NKK-LOG.GPS”, FILE_WRITE); // Файл для записи: if (!flDataFile) // если не получается открыть delay(3600000); // ничего не делаем час. } void loop() {} void serialEvent() { // Авто. вызываетcя при поступлении новых данных. while (Serial.available()) { // Пока в последовательном порту есть данные, btReaded = Serial.readBytesUntil('
', chGpsLint, 128); // читаем строку, if (btReaded > 45) // если её длинна не менее стольки символов, flDataFile.write(chGpsLint, btReaded); // пишем данные в файл. } flDataFile.flush(); // Сбрасываем файловый буфер. }Ловит текст по прерыванию. Изображённое на фото выше можно уже подключать к аккумулятору и использовать, но нужно доделать изделие!
Для монтажа было решено использовать плату, которую я недавно обозревал, но пережде, чем монтировать, не лучше ли подумать, как будут располагаться элементы — Fritzing в помощь!
Самое сложное было — дорисовывать плату, но лучше потратить время у экрана компьютера, чем еще больше с паяльником, выбирая оптимальное расположение элементов. «Хижина» слева — адаптер MicroSD->SD карт памяти; светодиоды справа вверху: 3 для каданса и один для индикации состояния устройства (сбой при обращении к карте, сбой при создании файла, ожидание данных с GPS), сопротивление будет SMD на землю; GPS-модуль не изображён: он располагается с обратной стороны платы; там же будет и батарея питания; справа внизу — jack-3.5 для подключения геркона, в корпусе возле его расположения нужно будет просверлить отверстие. Приступил к сборке, размер платы оказался как раз по размеру корпуса. Здаётся мне, я её под этот корпус и выбирал… В креплении модулей внутри корпуса, мне поможет термоклей! Сначала хотел лепить батарею к корпусу:Но особенности конструкции определи, что её лучше располагать на плате:
Затем к плате (так, чтобы ложиться рядом с батареей) был прикреплен GPS-модуль и его антенна, из-за нехватки места, пришлось снять с антенны «экран»:
Для пущей удобности извлечения, к плате была припаяна «ручка»:Изначально я планировал крепить модуль Ардуино через разъёмы, но т.к высоты корпуса не хватало, и больше пилить или резать ничего не хотелось, решил припаять его к плате прикольным способом:Впервые такой монтаж платы на плату я увидел в Bluetooth-модуле — получилось прикольно. Единственный минус — безболезненно снять обратно получится только феном. Для перепрошивки напаяю ещё контактов — плата большая.
Правильно припаять адаптер карты памяти мне помогла иллюстрация, приведённая выше, 2 раза перепаивал, на третий запомнил расположение контактов =)
Термоклеем фиксируем для удобства:
^-под адаптером расположены контакты питания GPS-модуля, соединяющиеся перемычкой: через перемычку питание происходит от линейного стабилизатора ардуино. При подключении к GPS-модулю по UART, перемычку можно снять чтобы Ардуино не перехватывала интерфейс.
После включения, GPS выдал время по Гринвичу на через 80 секунд, а данные о позиции — через 14 минут! Много, но это только с балкона. После коммутации и припаивания светодиодов и конденсатора к RAW (28uF, на всякий случай, найден «лишних» деталях):
^- для подключения к программатору на плате торчат контакты.
С обратной стороны упомянутая выше перемычка позволяет отключать GPS-молуль при работе с Ардуино или Адруино при работе с GPS-модулем через UART-программатор:
^- отдельно выведены контакты для удобства подключения к GPS.
Крышка, в которой закрепляется плата, накладывается на дно и фиксируется (пока резинками из камеры).
Дно, в свою очередь, крепится на руль, для этого имеется 4 отверстия в вершинах прямоугольника:
Ряд отверстий с краю нужен для светодиодов индикации, но они еще будут настраиваться: либо поправлю светодиоды внутри, либо заклею отверстия прозрачным термоклеем, пока не решил.
С лицевой стороны корпуса приклеена белая световозвращающая лента из этого обзора:
Дно крепится на руль:Снизу цепляется «крышка» (и превращается в дно):После закрепления на руле, «дно» уже не снимается, а устройство остаётся в крышке, его можно снять и использовать отдельно для отладки или записи трека, например, пробежки.
Три синих светодиода-индикатора каденса загораются по такой схеме:[Светодиоды] [ * * * ] 130 + [ * * ] 120 [ * ] 110 [ * * ] 100 [ * ] 90 [ * * ] 80 [ * ] 70 [ ] 70 – [Каденс]Из того, «что предстояло сделать»:
— после общения с умными людьми, было принято решение отключать программно;
— модуль повышения напряжения убран, потребляемый ток — в районе 95-125 мА — это почти в 2 раза меньше, по сравнению с данным заявлением о прошлом дизайне устройства и там не было светодиодов, каждый из которых потребляет 10-15 мА; — SD подключена напрямую; — расположение светодиодов и элементов внутри корпуса конфликтует со стремлением сделать универсальную/разборную систему на плате — в результате корпус остался тем же и батарею в нём почти некуда воткнуть =)
Исходный код
/** * По многочисленным просьбам * публикую долгожданный исходник, * без индикаторов каденса. * Один светодиод (17) горит в начале работы * до получения первой NMEA-строки длиной 70 символов. */ #include #define FILE_NM “-NKK-LOG.GPS” #define SER_SP 9600 #define RED_ON PORTC |= 0b000001000 // Зажигаем или #define RED_OFF PORTC &= 0b111110111 // тушим красный светодиод. volatile word wTotRev, // Общее количество оборотов педалей; wTotRevLastWtd = 0; // последнее, записанное в лог. File flNMEA; // Файл для записи GPS-строк. char chNMEA[128]; // Переменная для хранения GPS-строки, byte btReaded; // её длина. bool bWaitingGps = true; // Флаг ожидания первых актуальных данных GPS. void setup() { delay(800); // При включении возможен дребезг контактов питания. pinMode(17, OUTPUT); // Светодиоды состояния устройства. while (!SD.begin()) { // Пока SD-карта не обнаружена, RED_ON; delay(150); // мигаем. RED_OFF; delay(500); } flNMEA = SD.open(FILE_NM, FILE_WRITE); // Проверка работы с файлами. if (!flNMEA) // Если ошибка при открытии файла while (true) { // мигаем по 2 раза. RED_ON; delay(150); RED_OFF; delay(150); RED_ON; delay(150); RED_OFF; delay(500); } Serial.begin(SER_SP); // Стартуем работу с GPS-датчиком. RED_ON; } // setup() // void loop() { } // loop() // void serialEvent() { // Автоматически вызываетcя при поступлении новых данных. while (Serial.available()) { // Пока в последовательном порту етсь данные, читаем. btReaded = Serial.readBytesUntil('
', chNMEA, 128); if (bWaitingGps) { // Если GPS еще не выдаёт актуальные данные, if (btReaded > 70) { // проверяем их. bWaitingGps = false; RED_OFF; flNMEA.write(chNMEA, btReaded); } } else if (btReaded > 0) // Если GPS ранее выдал актуальные данные, flNMEA.write(chNMEA, btReaded); // пишем в файл. } flNMEA.flush(); // Сбрасываем файловый буфер. } // serialEvent() //
Товар предоставлен для написания обзора магазином. Обзор опубликован в соответствии с п.18 Правил сайта.
Источник: https://mysku.ru/blog/china-stores/40980.html
Знакомство с Arduino Pro mini на примере китайского аналога
Arduino Pro mini – компактная версия платформы Arduino, предназначенная для построения всевозможных проектов, имеющих не большие размеры. Платформа на 100% совместима с другими платформами Arduino, например такой как Arduino UNO, но намного компактнее её.
В данной статье я сделаю обзор на китайский аналог Arduino Pro mini, расскажу чем она отличается от оригинала, чем данная плата отличается от других плат платформы Arduino, а так же расскажу как подключить её к компьютеру для заливки в неё скетч.
В завершении убедимся в работоспособности платы, на примере скетча «blink».
Вот этот аналог Arduino Pro mini я купил на Aliexpress за $1.30, в то время как оригинальная плата на сайте производителя стоит €13. Разница в цене — это первое главное отличие китайского аналога от оригинала.
Плата пришла в антистатическом пакете. В комплекте так же находились контактные площадки.
Для сравнения, верхняя плата – оригинальная Arduino Pro mini, ниже, мой китайский аналог. По количеству и расположению контактов, плата идентична оригиналу, кроме контактов А4, А5, А6 и А7. На оригинальной плате эти контакты расположены в центре, на аналоге они находятся слева.
Для того что бы иметь визуальное представление о размерах платы, приведу её рядом со своим китайским аналогом Arduino UNO. Pro mini удалось уменьшить в размерах за счёт удаления USB разъёма, схемы согласования платы с USB портом, также был удалён разъём питания. Китайский аналог на 100% совместим со всеми модулями, драйверами, датчиками, которые работают с оригинальной версией.
Оригинальная современная плата Arduino Pro mini построена на базе микроконтроллера ATmega328, на том же самом что и Arduino UNO. Более ранние модели этой платы строились на микроконтроллере ATmega168.
Китайские же аналоги Arduino Pro mini на данный момент строятся как на ATmega328, так и на ATmega168. В этом второе отличие оригинала от аналога. Плата на ATmega168 будет стоить дешевле, чем на ATmega328. Главное же отличие этих контроллеров в том, что ATmega328 содержит на борту в два раза больше памяти, чем ATmega168.
Отличия микроконтроллеров |
ATmega168 |
ATmega328 |
Flash Memory |
16 Kбайт |
32 Kбайт |
SRAM |
1 Кбайт |
2 Кбайт |
EEPROM |
512 байт |
1024 байт |
Но это не значит, что на ATmega168 не получится построить проект, который разрабатывался на плате с ATmega328, ведь 16 Кбайт будет вполне достаточно для многих скетчей.
Всё же, если вам необходим двойной объём памяти, изучайте описание платы перед покупкой. При покупке своего китайского аналога, я выбрал плату за $1.30 с ATmega168, вместо платы с ATmega328 за $1.93.
Как видно, здесь тоже можем сэкономить на покупке.
Оригинальная плата Pro mini производится с двумя вариантами питания: на 5 и 3,3 вольта. У версии, работающей от 3,3 вольта, микроконтроллер работает на частоте 8 МГц, у 5-ти вольтовой версии – на частоте 16 МГц.
Китайские аналоги так же производятся в 2-х вариантах. Моя плата работает от 5 вольт.
Визуально частоту работы контроллера можно определить по установленному на плате кварцу, если он в большом корпусе, на нём отчётливо можно увидеть частоту, на которой он работает: 8 или 16 МГц.
Фрагменты плат с кварцами, работающими на разной частоте.
Про питание Arduino Pro mini.
Для питания платы предназначены выводы GND, VCC и RAW.
GND – это минус питания (земля).
VCC – используется для подачи питания 3,3 или 5 вольт, в зависимости от версии платы. На этот разъём подаётся строго то напряжение, на которое рассчитана плата.
Напряжение с этого контакта идёт напрямую на микроконтроллер, если оно будет выше необходимого, последний может выйти со строя.
Если питать плату собираетесь большим напряжением, тогда «+» питания следует подключать к разъёму RAW. На этот разъём можно подавать до 12 в, не зависимо, на какое напряжения рассчитана плата.
Напряжение с этого контакта подаётся на стабилизатор напряжения, который преобразует его до необходимого значения, а уже затем подаётся на контролер.
Если так получилось что вы купили плату и не знаете на какое напряжение она рассчитана, подайте на разъём RAW 5 вольт и измерьте напряжение на разъёме VCC. Если плата рассчитана на 3,3 вольта, то соответствующее напряжение будет и на VCC, если будет на VCC 5 вольт, значит плата 5-ти вольтовая.
Цифровые и аналоговые выходы Pro mini соответствуют количеству выходов как и у платы UNO: 14 цифровых и 6 аналоговых. Контакты А4 (SDA) и А5 (SCL) используются для подключения различных устройств по шине I2C.
Про прошивку Arduino Pro mini.
Став одной из самых маленьких плат платформы Arduino, плата Pro mini обрела недостаток — нельзя прошить плату без сторонней помощи. Расскажу про все возможные способы заливки скетчей в Pro mini.
Прошивка Arduino Pro mini с помощью платы Arduino UNO.
Это не самый простой способ, поскольку не у каждого имеется плата UNO и покупать её специально для прошивки плат Pro mini не целесообразно.
Но поскольку у меня имеется китайский аналог UNO, я начну с этого способа. Для реализации этого способа, должен быть установлен драйвер на плату UNO и определён номер COM – порта, к которому эта плата подключена.
Как это сделать, описано в статье про китайский аналог Arduino UNO.
Соединяем платы как на картинке. Выводы GND, TX и RX соединяем с аналогичными. Вывод «VCC» на плате Pro mini соединяем с выводом «5V» или «3V3» на плате UNO.
Если у вас 5 вольтовая версия Pro mini, то соединяете с выводом «5V», как в моём варианте. Если версия 3-х вольтовая, подключаете к «3V3» на плате UNO. Вывод RESET на плате UNO подключаем к выводу DTR на плате Pro mini.
На оригинальной плате вывод DTR обозначен как GRN, в общем это одно и то же.
Контакты UNO |
Контакты Pro mini |
GND |
GND |
TX |
TX |
RX |
RX |
5V (если 5 вольтовая версия Pro mini) |
VCC |
3V3 (если 3,3 вольтовая версия Pro mini) |
|
RESET |
DTR (GRN) |
Когда всё подключено, запускаем Arduino IDE.
Выбираем плату в которую нужно зашить скетч: «Инструменты» – «Плата:» и выбираем свою плату, в данном случае это «Arduino Pro or Pro Mini».
Поскольку платы Pro Mini могут использовать различные микроконтроллеры (ATmega168 или ATmega328 ), а так же различное напряжение питания (3,3v или 5v), выбираем свою конфигурацию: «Инструменты» – «Процессор:» в данном примере выбираю «ATmega168 (5V, 16 MHz)».
Выбираем порт, к которому подключена плата UNO: «Инструменты» – «Порт:» в моём случае это «COM7».
Попробуем залить первый скетч и убедится в работоспособности платы. Выбираем скетч «Blink», смысл которого – мигать встроенным в плату светодиодом: «Файл» – «Образцы» – «01.Basics» – «Blink».
С помощью кнопок «Проверить» и «Вгрузить» проверяется скетч на ошибки и загружается в плату. Если нет ошибок, синий светодиод начнём мигать на плате Pro Mini.
Можно поиграться значениями в скетче и изменить время горения светодиода и время погашенного светодиода, вновь залить скетч и увидеть, что светодиод будет мигать по-другому.
Прошивка Arduino Pro mini с помощью переходника USB to TTL.
Об одном из таких переходников на чипе PL2303 я как то уже рассказывал, теперь пришло время его испытать на практике. Существует две версии этого переходника, один без контакта GRN (DTR), как у меня, второй с данным контактом. Те что с контактом, стоят как минимум в два раза дороже тех, что без контакта.
Переходник USB to TTL на чипе PL2303
Если будете использовать переходник без контакта GRN (DTR), подключаете его к Pro mini как на картинке.
Pro mini |
USB to TTL PL2303 |
GND |
GND |
VCC |
+5V (для 5 вольтовой Pro mini) |
3V3 (3,3 вольтовой версии Pro mini) |
|
RX |
TX |
TX |
RX |
Если у вас будет 3-х вольтовый вариант Pro mini, то контакт VCC платы, нужно соединить с контактом 3V3 USB переходника.
Когда всё подключено, запускаем Arduino IDE. Выбираем версию платы, процессор и порт, выбираем скетч «Blink», всё так же, как в приведённом выше примере с UNO.
Для заливки скетча необходимо:
1. Нажать на кнопку «Вгрузить».
2. Начнётся процесс компиляции скетча, о чём можно понять по надписи «Компиляция скетча…».
3.
Как только данная надпись сменится на «Вгружаем…».
4. Кратковременно нажимаем на плате Pro mini кнопку RESET.
5.
Скетч зальётся в плату, об успешном окончании можно будем наблюдать за надписью «Взрузили» и по мигающему светодиоду на плате.
Если у вас в руках окажется переходника USB to TTL, с контактом DTR (он же GRN, RESET) соедините его с соответствующим контактом RESET на плате Pro mini. В таком случае, при заливки скетча, кнопку RESET нажимать не придётся, плата сама сделает сброс.
Переходник USB to TTL на чипе CH340G
Данный переходник так же как и на PL2303 позволяет прошивать плату Arduino. Схема подключения следующая:
Pro mini | USB to TTL CH340G |
GND | GND |
VCC | 5V (джампером замкнуть контакты “3V3” и “VCC”, если Arduino питается от 5 вольт) |
3V3 (джампером замкнуть контакты “5V” и “VCC”, если Arduino питается от 3,3 вольт) | |
RX | TXD |
TX | RXD |
Существуют так же другие USB переходники для прошивки Arduino Pro mini, например на микросхеме FT232, но ввиду того что этот переходник стоит дороже, я его не беру во внимание.
Прошивка Arduino Pro mini с помощью программатора на CH341A.
Программатор на микросхеме CH341A может работать в режиме UART, а значит им можно прошить Arduino Pro mini.
Программатор может быть представлен в разном визуальном оформлении, основное отличие это цена и наличие дополнительных контактов. Среди этих контактов например, дополнительно может быть разведён контакт на +5В. На том который купил я не было этого контакта, пришлось подпаиваться на плате, что бы получить это напряжение. Детальный обзор этого программатора можно прочитать здесь.
Что бы использовать данный программатор как UART переходник, нужно разомкнуть контакты P/S.
Для подключения к Pro mini понадобятся контакты на программаторе: Tx, Rx, GND и +5В.
Ещё одна особенность этого программатора в том, что на его борту имеется контакт DTR, соединив который с платой Pro mini, отпадёт необходимость нажимать кнопку Reset, при заливки скетча.
Для задействования этого контакта, нужно использовать контакт MOSI, в режиме UART он работает как DTR.
В моём варианте программатора, контакт +5В не был выведен, пришлось это напряжения взять с ножки стабилизатора. В конечном варианте подключение следующее:
Pro mini | CH341A |
Tx | Rx |
Rx | Tx |
DTR | MOSI |
GND | GND |
VCC | +5В |
Скачать драйвер: Яndex-диск MEGA Облако mail@ru
После установки драйвера, в “Диспетчере устройств” появится виртуальный COM-порт. Заливка скетчей происходит так же, как и через переходники PL2303 / CH340G, с той лишь разницей, что не нужно нажимать кнопку Reset.
Следует отметить, данный программатор можно подключать только к 5 вольтовым платам Arduino, поскольку он использует уровни 5 вольт! Это же касается и других устройств, для которых нужен UART переходник.
Прошивка Arduino Pro mini через COM – порт.
Напрямую прошить плату через COM – порт не получится, поскольку у COM – порта и Pro mini разные логические уровни. Для их согласования нужно применить переходник на микросхеме MAX232. Сама микросхема не дорогая, но не знаю, стоит ли заморачиваться для прошивки Pro mini сборкой такого переходника, если по цене выйдет не дешевле, чем купить USB переходник на PL2303.
В любом случае представляю схему.
Что бы убедится в работоспособности этого метода, пришлось самому собрать эту схему на макетной плате. Плата в процессе…
Источник: http://radiolis.pp.ua/arduino/22-znakomstvo-s-arduino-pro-mini-na-primere-kitajskogo-analoga