ELECTRONICS

Arduino Pro Mini: распиновка, 5 В против 3,3 В и как прошить через USB-TTL

14 цифровых8 аналоговых6 с ШИМ

Pro Mini — это UNO, с которой сняли всё лишнее: USB, толстый стабилизатор, разъёмы. Остался контроллер ATmega328P, кварц и гребёнка выводов на плате три на два сантиметра. Программируется тем же кодом, что и UNO.

Без USB плату прошивают через внешний переходник USB-TTL. Это единственная сложность, и она оборачивается достоинством: Pro Mini ест в десятки раз меньше, чем UNO, и месяцами живёт от батареек, если убрать светодиод питания.

Плата бывает в двух версиях, и это важно: пятивольтовая на 16 МГц и трёхвольтовая на 8 МГц. Внешне они почти неотличимы, а в среде выбираются по-разному. Официально Arduino её больше не выпускает, но клоны продаются повсюду и работают.

На схеме — массовый клон с красной кнопкой сброса: его продают почти все магазины и маркетплейсы. Край платы у всех версий одинаковый, а вот A4–A7 стоят по-разному: у клона A6 и A7 выведены на короткий торец, у оригинальной платы SparkFun — на площадки внутри.

Распиновка

ATMELMEGA328PU-KR354A3P2325P3GS4C106C106102103102598765432GNDRSTRXITXO10111213A0A1A2A3VCCRSTGNDRAWGNDA6A7TXORXIVCCGNDDTRGNDA4A5ResetPromini
Наведите на любой вывод платы — расскажем, зачем он. Цвет точки означает роль: ■ питание, ■ земля, ■ цифровой, ■ аналоговый, ■ служебный.
Запустить в симулятореПример с этой платой и скетчем · как работает симулятор

Все выводы списком

ВыводНазначение
D0UART RXПриём с компьютера: монитор порта и прошивка. На время загрузки скетча освободить.
подробнее

Приём данных по последовательному порту. Занят, пока открыт монитор порта.

D1UART TXПередача на компьютер: монитор порта и прошивка. На время загрузки скетча ничего не подключать.
подробнее

Передача данных по последовательному порту. Тоже занят при загрузке скетча.

D2прерываниеБыстрая реакция на событие: энкодер, кнопка, датчик движения.
подробнее

Умеет будить плату по изменению сигнала — это один из двух выводов прерываний.

D3ШИМ · прерываниеПлавное управление яркостью и скоростью, а также быстрая реакция на события: энкодер, кнопка.
подробнее

Второй вывод прерываний, и он же умеет ШИМ.

D4Кнопка, светодиод, реле, любой цифровой датчик.
подробнее

Обычный цифровой вывод.

D5ШИМПлавное управление: яркость светодиода, скорость мотора, сервопривод.
подробнее

ШИМ на частоте около 980 Гц.

D6ШИМПлавное управление: яркость светодиода, скорость мотора, сервопривод.
подробнее

ШИМ на частоте около 980 Гц — та же пара таймера, что и у пятого.

D7Кнопка, светодиод, реле, любой цифровой датчик.
подробнее

Обычный цифровой вывод.

D8Кнопка, светодиод, реле, любой цифровой датчик.
подробнее

Обычный цифровой вывод.

D9ШИМПлавное управление: яркость светодиода, скорость мотора, сервопривод.
подробнее

ШИМ. Вместе с десятым управляется одним таймером — тем самым, что нужен библиотеке Servo.

D10ШИМ · SPI SSШина SPI: карта памяти, считыватель RFID, радиомодуль nRF24, быстрые дисплеи. Без SPI — обычный вывод с ШИМ.
подробнее

ШИМ, он же выбор устройства на шине SPI.

D11ШИМ · SPI MOSIШина SPI: карта памяти, считыватель RFID, радиомодуль nRF24, быстрые дисплеи. Без SPI — обычный вывод с ШИМ.
подробнее

ШИМ, он же линия данных «от платы» на шине SPI.

D12SPI MISOШина SPI: карта памяти, считыватель RFID, радиомодуль nRF24, быстрые дисплеи. Без SPI — обычный вывод.
подробнее

Линия данных «к плате» на шине SPI.

D13SPI SCK · светодиодШина SPI: карта памяти, считыватель RFID, радиомодуль nRF24, быстрые дисплеи. Без SPI — обычный вывод.
подробнее

Тактовый сигнал SPI. К нему же припаян встроенный светодиод — поэтому вывод «шумит» при загрузке.

A0Аналоговый датчик: потенциометр, фоторезистор, влажность почвы, напряжение батареи.
подробнее

Аналоговый вход, десять разрядов: значения от 0 до 1023.

A1Аналоговый датчик: потенциометр, фоторезистор, влажность почвы, напряжение батареи.
подробнее

Аналоговый вход.

A2Аналоговый датчик: потенциометр, фоторезистор, влажность почвы, напряжение батареи.
подробнее

Аналоговый вход.

A3Аналоговый датчик: потенциометр, фоторезистор, влажность почвы, напряжение батареи.
подробнее

Аналоговый вход.

A4I2C SDAШина I2C: дисплеи OLED и LCD, часы реального времени, датчики давления и ускорения.
подробнее

Аналоговый вход и линия данных шины I2C — по ней идут почти все дисплеи и датчики. На Pro Mini — отверстие внутри платы, над A2 и A3.

A5I2C SCLШина I2C: дисплеи OLED и LCD, часы реального времени, датчики давления и ускорения.
подробнее

Аналоговый вход и тактовая линия шины I2C. На Pro Mini — отверстие внутри платы, над A2 и A3.

A6только входТолько чтение: кнопка, аналоговый датчик, напряжение батареи. Светодиод сюда не повесить.
подробнее

Только аналоговый вход, цифровым быть не умеет. На массовом клоне выведен на короткий торец рядом с GND, со стороны D9 и D10; у оригинала SparkFun — на площадку внутри платы.

A7только входТолько чтение: кнопка, аналоговый датчик, напряжение батареи. Светодиод сюда не повесить.
подробнее

Такой же, как A6: только измерение. Удобно для датчика напряжения батареи.

RAWВнешнее питание платы: батарея или блок питания вместо USB.
подробнее

Вход нестабилизированного питания 5–12 В, идёт на встроенный стабилизатор. Не путать с VCC.

VCCПитание платы стабилизированным напряжением и питание датчиков от неё.
подробнее

Напряжение контроллера: 5 или 3,3 В в зависимости от версии. Сюда подают стабилизированное питание или отсюда питают датчики.

GNDОбщий провод схемы: минус всех модулей, датчиков и внешнего питания.
подробнее

Земля, несколько на плате.

RSTПерезапуск платы: кнопка сброса или сигнал от другого устройства.
подробнее

Сброс. На торцевой гребёнке рядом стоит DTR — им переходник сбрасывает плату перед загрузкой.

DTRпрошивкаАвтосброс при прошивке через USB-переходник.
подробнее

Вывод торцевой гребёнки для автосброса. Без него перед каждой загрузкой придётся жать кнопку сброса вручную.

Характеристики

Микроконтроллер
ATmega328P
Версии
5 В / 16 МГц и 3,3 В / 8 МГц
Флеш-память
32 КБ2 КБ занимает загрузчик
Оперативная память
2 КБ
Цифровых выводов
146 с ШИМ
Аналоговых входов
8A6 и A7 — только вход
USB
нетпрошивка через USB-TTL
Ток с одного вывода
20 мАдо 40 в пределе
Потребление
≈5 мА в работеединицы мкА во сне без светодиода
Питание
RAW 5–12 В или VCC напрямую
Размер
33 × 18 мм

5 В или 3,3 В: как понять, какая плата у вас в руках

Pro Mini выпускают в двух версиях: пятивольтовая работает на 16 МГц, трёхвольтовая — на 8 МГц. Платы одинакового размера, с одинаковой гребёнкой и одинаковой надписью Pro Mini. Перепутать легко, а последствия неприятные: выбрали в среде не ту частоту — и все задержки идут вдвое быстрее или медленнее, а монитор порта показывает мусор вместо текста.

Надёжнее всего смотреть на кварц — прямоугольную серебристую деталь рядом с контроллером. На ней выбито 16.000 у пятивольтовой версии и 8.000 у трёхвольтовой. Это то, что физически определяет частоту, и подделать маркировку производителю незачем.

Как проверитьЧто означает
Маркировка кварца16.000 — версия 5 В. 8.000 — версия 3,3 В. Самый надёжный признак.
Надпись на стабилизатореУ пятивольтовой обычно KB33 или 33 — не путайтесь: это маркировка корпуса, а не напряжение. Ориентируйтесь на кварц.
Мультиметр на VCC и GNDПодайте 5 В на RAW и измерьте между VCC и GND: покажет 5 В или 3,3 В. Способ не врёт никогда.
Наклейка продавцаВерить можно, но проверять стоит: клоны часто пересортированы на складе.

Можно ли сделать из пятивольтовой трёхвольтовую

Полноценно — нет, и вот почему. Версии отличаются не только стабилизатором, но и кварцем: ATmega328P на 3,3 В не рассчитан на 16 МГц. Если просто подать 3,3 В на пятивольтовую плату, контроллер чаще всего заработает, но это режим вне спецификации — на холоде или при просадке питания начнутся необъяснимые зависания.

Правильный путь, если трёхвольтовая нужна всерьёз: выпаять кварц 16 МГц, поставить 8 МГц и перешить загрузчик под новую частоту. Работы на полчаса и требуется программатор. Проще купить нужную версию — она стоит те же деньги.

Отдельно про питание датчиков: если вам нужны 3,3 В только для модуля, а не для всей платы, ставьте преобразователь уровней или отдельный стабилизатор — плату при этом трогать не надо.

Как прошить Pro Mini через переходник USB-TTL

USB на плате нет, поэтому между компьютером и Pro Mini ставят переходник USB-TTL — на CH340, CP2102 или FT232. Подойдёт любой, но при покупке смотрите, чтобы у него был вывод DTR: именно он сбрасывает плату в нужный момент, и без него загрузка превращается в игру на реакцию.

  1. 1Соедините шесть выводов. GND переходника к GND платы, VCC к VCC, TX переходника к RX платы, RX к TX, DTR к DTR. Провода TX и RX идут накрест: передача одного — приём другого.
  2. 2Проверьте напряжение переходника. На большинстве переходников есть перемычка 5 В / 3,3 В. Она должна совпадать с версией платы, иначе в лучшем случае ничего не выйдет, в худшем — сгорит трёхвольтовый контроллер.
  3. 3Выберите плату в среде. Инструменты → Плата → Arduino Pro or Pro Mini. Затем Инструменты → Процессор → ATmega328P (5V, 16 MHz) или (3.3V, 8 MHz) — по вашей версии.
  4. 4Выберите порт. Он появляется, когда переходник воткнут в компьютер. Если порта нет — не установлен драйвер переходника, чаще всего это CH340. Подробнее про это на странице проблем с загрузкой.
  5. 5Нажмите «Загрузить». С проводом DTR плата сбросится сама. Без него нажмите кнопку сброса на плате ровно в тот момент, когда среда напишет «Uploading» — обычно получается с третьей попытки.

Какой контроллер на плате и что выбирать в списке плат

Название контроллера написано прямо на самой большой микросхеме платы: ATMEGA328P — это то, что стоит почти на всех современных Pro Mini. Изредка попадаются старые клоны на ATmega168 — у них вдвое меньше памяти, 16 КБ вместо 32, и скетч посложнее в них уже не помещается. Если надпись стёрлась, посмотрите описание у продавца: 328 давно стал стандартом.

В списке плат Arduino IDE пункт называется «Arduino Pro or Pro Mini» — именно так, одним пунктом на две платы. Не путайте с «Arduino Mini»: это другая, более старая плата, и загрузчик у неё свой. После выбора платы обязательно загляните в «Инструменты → Процессор» и укажите ATmega328P с нужным напряжением и частотой — это и есть то место, где чаще всего ошибаются.

Nano в этом списке тоже отдельный пункт. Скетч от Nano пойдёт на Pro Mini без единой правки — контроллер тот же, — но выбирать в среде нужно именно Pro Mini, иначе не совпадёт загрузчик.

RAW или VCC: куда подавать питание

Это второй источник сгоревших плат после перепутанных версий. RAW — вход нестабилизированного питания: сюда можно подавать от 5 до 12 вольт, дальше стоит стабилизатор. VCC — уже стабилизированное напряжение контроллера, оно идёт напрямую, минуя всякую защиту.

Значит: крона на 9 В, батарейный отсек на 6 В, блок питания на 12 В — всё это только в RAW. Ровно 5 В от USB или другого стабилизированного источника — в VCC. Подать 9 В в VCC означает мгновенно сжечь контроллер, и это не преувеличение.

Для батарейных проектов, ради которых Pro Mini обычно и берут, выгоднее второй путь: три батарейки AA дают 4,5 В прямо в VCC, минуя стабилизатор, который сам по себе ест ток. Если дополнительно отпаять светодиод питания, плата во сне потребляет единицы микроампер.

Чем отличается от соседей

Arduino Nano

Тот же контроллер и те же выводы, но с USB на борту. Если плата будет стоять у компьютера или питаться от розетки — Nano проще. Pro Mini выигрывает только там, где важен каждый миллиампер.

Arduino UNO

Для отладки на столе. Скетч, отлаженный на UNO, переносится на Pro Mini без изменений — это обычный путь: разработка на большой плате, сборка на маленькой.

ESP32-C3 Super Mini

Если нужен Wi-Fi, а не долгий сон. По размеру такая же, но энергии в спящем режиме ест больше, и логика только 3,3 В.

На чём попадаются

Куплена версия 3,3 В, а в среде выбрана 5 В

Скетч зальётся, но все задержки удвоятся, а монитор порта покажет мусор: частота 8 МГц против ожидаемых 16. В «Инструменты → Процессор» выберите нужный вариант. Версию видно по маркировке кварца: 16.000 или 8.000.

Загрузка идёт, но плата не отвечает

Переходник без вывода DTR. Плата не сбрасывается перед загрузкой, и загрузчик не успевает поймать данные. Либо переходник с DTR, либо нажимать кнопку сброса вручную ровно в момент, когда среда пишет «Uploading».

Питание в VCC вместо RAW

Девять вольт от кроны на VCC — контроллер сгорит: этот вывод идёт мимо стабилизатора. Всё выше 5 В — только в RAW. И наоборот: питать от 5-вольтового источника через RAW не стоит, стабилизатору не хватит запаса.

Батарейки садятся за неделю

Светодиод питания и стабилизатор потребляют больше, чем спящий контроллер. Для батарейного проекта их отпаивают или перерезают дорожку — тогда во сне плата ест единицы микроампер, и три батарейки живут год.

Что к ней подключают

Схемы подключения, библиотеки и рабочие скетчи для датчиков, дисплеев и драйверов — в разделе компонентов. Каждый скетч проверен компиляцией именно под эту плату.

Перейти к компонентам