Распиновка Orange Pi 3 — первое, что нужно открыть перед подключением любого датчика или модуля к 40-контактному разъёму: ошибка даже на один пин при подаче 5 В на линию данных способна вывести из строя процессор Allwinner H6. Плата использует гребёнку формата 2×20, внешне похожую на разъём Raspberry Pi, однако полной электрической и программной совместимости между ними нет, и об этом стоит помнить при переносе проектов.
Ниже разберём назначение контактов, уровни напряжений, доступные интерфейсы UART, I2C, SPI и PWM, а также типовые ошибки при подключении периферии. Ориентируйтесь на официальную схему от производителя (Orange Pi публикует pinout в руководстве пользователя конкретной ревизии платы), поскольку нумерация в разных версиях образов системы может отличаться.
Общая структура 40-pin разъёма
Разъём GPIO на Orange Pi 3 выполнен в виде двухрядной штыревой гребёнки с шагом 2,54 мм. Контакт 1 находится у края платы — обычно он помечен шелкографией или квадратной площадкой на обратной стороне. Нечётные пины образуют один ряд, чётные — соседний, поэтому перед подключением шлейфа проверьте ориентацию дважды.
Логика платы работает с уровнями 3,3 В. Это значит, что напрямую подключать 5-вольтовые датчики к линиям данных нельзя — потребуется преобразователь логических уровней или делитель напряжения. Контакты питания 5 В на разъёме есть, но они предназначены для запитки внешних модулей, а не для подачи сигналов в GPIO.
- 🔌 Пины 2 и 4 — питание 5 В для внешних модулей
- 🔋 Пины 1 и 17 — питание 3,3 В с ограничением по току
- ⏚ Пины 6, 9, 14, 20, 25, 30, 34, 39 — земля (GND)
- 📡 Остальные контакты — сигнальные линии GPIO и интерфейсов
Таблица распиновки основных контактов
Ниже приведены ключевые назначения контактов. Полную и актуальную карту для вашей ревизии платы сверяйте с официальным мануалом Orange Pi 3, поскольку часть пинов имеет альтернативные функции и конфигурируется через систему.
| Пин № | Назначение | Примечание |
|---|---|---|
| 1 | 3,3 В | Питание маломощной периферии |
| 2 | 5 В | Питание модулей, общий с входом платы |
| 3 | I2C SDA | Линия данных шины I2C (по умолчанию — зависит от конфигурации) |
| 5 | I2C SCL | Линия тактирования шины I2C |
| 6 | GND | Земля |
| 8 | UART TX | Передача данных отладочной консоли / UART |
| 10 | UART RX | Приём данных, уровень строго 3,3 В |
Обратите внимание: нумерация в таблице — физическая (по положению контакта). В программных библиотеках вроде wiringPi или OPi.GPIO используется собственная логическая нумерация, и она не совпадает с физической. Перед написанием кода уточните, какую схему нумерации использует ваша библиотека.
Интерфейсы: UART, I2C, SPI и PWM
Через разъём доступны основные последовательные интерфейсы, но их активация зависит от настроек системы. В образах на базе Armbian интерфейсы включаются через оверлеи device tree — например, утилитой armbian-config или правкой параметров загрузки.
sudo armbian-configраздел System → Hardware → включить нужные оверлеи (uart, i2c, spi)
UART обычно используется для отладочной консоли: подключив USB-TTL адаптер с уровнями 3,3 В к пинам 8 и 10, вы получите доступ к загрузочному логу и терминалу. I2C подходит для датчиков температуры, дисплеев и расширителей портов, SPI — для более быстрых устройств вроде экранов и ADC. Линии PWM позволяют управлять яркостью или сервоприводами, но доступность аппаратного PWM зависит от конкретного пина и конфигурации ядра.
💡Перед подключением I2C-устройства проверьте шину командой i2cdetect (пакет i2c-tools) — так вы убедитесь, что интерфейс активен и устройство отвечает на своём адресе.