Платы разработки: распиновка и устройство
Платы разработки по их собственной документации: где какой контакт, к какому выводу микроконтроллера он подключён, что умеет и как устроены питание и загрузка. Расположение контактов взято из CAD-файлов и чертежей производителя, а назначение выводов сверено с ядром Arduino, схемами и даташитами микроконтроллеров.
- Raspberry Pi Pico40 контактов, функции GPIO, питание, АЦП, BOOTSEL и SWD
- Raspberry Pi Pico W40 контактов, Wi-Fi и Bluetooth, занятые GPIO, светодиод, SWD, антенна
- Raspberry Pi Pico 240 контактов как у Pico, функции GPIO RP2350A, HSTX, питание, эррата E9
- ESP32-DevKitC V438 контактов, АЦП, сенсоры, обвязка загрузки, питание, прошивка
- NodeMCU ESP8266D0–D10 и GPIO, выводы загрузки, A0, питание, прошивка
- ESP32-S3-DevKitC-144 контакта, АЦП, сенсоры, обвязка загрузки, два USB, RGB-светодиод, PSRAM
- Wemos D1 mini16 контактов, GPIO, выводы загрузки, A0, питание, I²C
- ESP32-C3-DevKitM-130 контактов, 15 GPIO, АЦП, обвязка загрузки, USB, RGB-светодиод на GPIO8
- Raspberry Pi 540-контактный разъём, функции GPIO RP1, ток выводов, питание 5 В 5 А
- STM32 Blue PillSTM32F103C8T6: функции выводов, 5 В-выводы, питание, загрузка
- STM32 Black PillSTM32F411: функции выводов, 5 В, питание, DFU и SWD
Платы разработки — это микроконтроллер, питание, преобразователь USB и разъёмы на одной печатной плате. Для каждой платы здесь своя страница: рисунок с расположением контактов по CAD-файлу, таблицы «контакт → вывод микроконтроллера → что умеет», схема питания и настройки загрузчика.
Платы Arduino
| Плата | Микроконтроллер | Цифровые / ШИМ / аналоговые | USB | Размер, мм |
|---|---|---|---|---|
| Arduino Uno R3 | ATmega328P | 14 / 6 / 6 | USB-B, ATmega16U2 | 68,6 × 53,4 |
| Arduino Nano | ATmega328P | 14 / 6 / 8 | Mini-B USB, FT232RL | 45 × 18 |
| Arduino Mega 2560 | ATmega2560 | 54 / 15 / 16 | USB-B, ATmega16U2 | 101,5 × 53,3 |
Цифровой вывод Arduino — это вывод порта микроконтроллера: D13 у Uno и Nano — это PB5 у ATmega328P, а у Mega 2560 — PB7 у ATmega2560. Поэтому один скетч работает на разных платах по номерам Arduino, а код на регистрах приходится переписывать. Порты, таймеры ШИМ и код на регистрах для любого вывода показывает инструмент «Пины Arduino», а что ядро Arduino делает при запуске — статья «Arduino и AVR».
Платы на других микроконтроллерах
| Плата | Микроконтроллер | GPIO / из них АЦП | USB | Размер, мм |
|---|---|---|---|---|
| Raspberry Pi Pico | RP2040 | 26 / 3 | micro-USB, USB 1.1 самого RP2040 | 21 × 51 |
| Raspberry Pi Pico W | RP2040 | 26 / 3 | micro-USB, USB 1.1 самого RP2040 | 21 × 51 |
| Raspberry Pi Pico 2 | RP2350A (QFN-60) | 26 / 3 | micro-USB, USB 1.1 самого RP2350 | 21 × 51 |
| ESP32-DevKitC V4 | ESP32 (модуль ESP32-WROOM-32E и др.) | 26 / 16 | micro-USB, мост USB-UART CP2102N | 27,94 × 48,26 |
| ESP32-S3-DevKitC-1 v1.1 | ESP32-S3 (модуль ESP32-S3-WROOM-1, -1U или -2) | 36 / 20 | 2 × micro-USB: мост USB-UART CP2102N и встроенный USB ESP32-S3 | 25,4 × 62,74 |
| ESP32-C3-DevKitM-1 | ESP32-C3 (модуль ESP32-C3-MINI-1 или -1U) | 15 / 6 | micro-USB, мост USB-UART CP2102N | 25,4 × 38,91 |
| NodeMCU DevKit V1.0 | ESP8266EX (модуль ESP-12E) | 11 / 0 | micro-USB, мост USB-UART CP2102 | 25,4 × 48,26 |
| LOLIN (Wemos) D1 mini V4.0.0 | ESP8266EX (на плате, флеш 4 МБ) | 11 / 0 | USB-C, мост USB-UART CH340C | 25,4 × 34,3 |
| STM32 Blue Pill | STM32F103C8T6 | 32 / 10 | micro-USB, USB самого STM32F103 | 23 × 53 |
| WeAct Black Pill V3.1 (STM32F411) | STM32F411CEU6 (раньше и STM32F401CCU6/CEU6) | 32 / 10 | USB-C, USB OTG FS самого STM32F411 | 20,78 × 52,81 |
У этих плат два ряда контактов по длинным сторонам, и каждый GPIO может работать с несколькими блоками периферии. Поэтому на их страницах у каждого контакта перечислены все функции, которые микроконтроллер может на него вывести, а кнопки над рисунком подсвечивают контакты одного блока — например, все выводы, куда можно назначить UART1.
Одноплатные компьютеры
- Raspberry Pi 5 — 40-контактный разъём GPIO, функции выводов контроллера RP1 (UART, I²C, SPI, ШИМ, I²S), ток выводов и питание 5 В 5 А.
Как проверены данные
- Расположение контактов — из CAD-файлов Eagle самих плат: координаты контактов, контур платы и крепёжные отверстия.
- Назначение контактов — по цепям CAD-файла: от контакта разъёма до вывода микроконтроллера. Номер вывода в корпусе сверен с распиновкой из атласа AVR, а номер Arduino — с таблицами ядра Arduino AVR. Подписи, напечатанные на плате рядом с контактами, совпадают с этими номерами.
- Питание, сброс и тактирование — по деталям и цепям CAD-файла; характеристики платы — по tech-specs.yml и даташиту Arduino.
- Платы без открытого CAD-файла (Raspberry Pi Pico, ESP32-DevKitC) — по чертежу размеров и рисунку нумерации контактов из даташита платы и по её схеме; функции GPIO — по таблице функций из даташита микроконтроллера, сверенной с заголовочными файлами SDK производителя.
- NodeMCU — по открытой схеме и Gerber-файлам платы: координаты контактов и отверстий взяты из файлов сверловки и контура, назначение — из листа IO CONN схемы и карты выводов; функции GPIO — по таблицам даташита ESP8266EX, сверенным с заголовками SDK Espressif.
Готовятся к публикации
Arduino Leonardo и Micro · Arduino Pro Mini
Частые вопросы
Чем отличаются Arduino Uno, Nano и Mega 2560?
Uno и Nano построены на ATmega328P: у обеих 14 цифровых выводов, из них 6 с ШИМ, но у Nano 8 аналоговых входов вместо 6 (A6 и A7 — только аналоговые), он меньше и вставляется в макетную плату, а USB у него через FT232RL вместо ATmega16U2. Mega 2560 построена на ATmega2560: 54 цифровых вывода, 15 с ШИМ, 16 аналоговых входов и четыре аппаратных UART.
Откуда взято расположение контактов?
Из CAD-файлов Eagle, которые Arduino публикует в своей документации под лицензией CC BY-SA 4.0: в них есть координаты каждого контакта и цепь, к которой он подключён. По цепи контакт доходит до вывода микроконтроллера, а номер этого вывода сверен с атласом и с таблицами ядра Arduino.
Подходят ли страницы для клонов плат?
Назначение контактов у клонов обычно такое же, потому что они повторяют разводку разъёмов, но детали питания и преобразователь USB часто другие. Страницы описывают оригинальные платы Arduino; на клоне сверяйте маркировку микросхем.
Смотрите также
- Raspberry Pi 540-контактный разъём, функции GPIO RP1, ток выводов, питание 5 В 5 А
- Пины ArduinoПин Arduino → порт ATmega, ШИМ, прерывания и регистры
- Arduino и AVRЧто делают init(), millis(), analogWrite(), analogRead() и загрузчик
- ATmega328PРаспиновка, фьюзы, Optiboot, периферия, питание, схема и код на C
- Фьюзы AVRБиты фьюзов, заводские значения и avrdude
- AVR ISP, UPDI и TPIISP 6 и 10 pin, USBasp, UPDI и TPI