Распиновка Raspberry Pi Zero W — это 40-контактный разъём GPIO, полностью совместимый по расположению сигналов со старшими моделями вроде Raspberry Pi 3, но с одним важным нюансом: на заводе контакты не распаяны, и гребёнку придётся припаивать самостоятельно либо использовать беспаечные варианты. Именно ошибка в нумерации пинов — причина номер один, из-за которой датчики и дисплеи отказываются работать после подключения.
Ниже разберём назначение каждой группы контактов, различия между нумерацией BOARD и BCM, а также ограничения по току и напряжению, которые критичны именно для компактной платы Zero W. Вся информация соответствует официальной схеме распиновки от Raspberry Pi Foundation.
Общая схема: 40 контактов и два типа нумерации
Разъём GPIO на Raspberry Pi Zero W состоит из двух рядов по 20 контактов. Существует две системы обозначения: физическая нумерация (BOARD) — просто порядковый номер пина от 1 до 40, и нумерация BCM — по номеру канала процессора Broadcom. В коде на Python библиотека RPi.GPIO требует явно указать режим:
import RPi.GPIO as GPIOGPIO.setmode(GPIO.BCM) # или GPIO.BOARD
Путаница между режимами — частая причина «нерабочего» скрипта: вы обращаетесь к пину 11, ожидая GPIO17, а получаете совсем другой контакт. Перед запуском кода сверьтесь, какая нумерация используется в примере, и какой физический пин вы реально задействовали.
Ориентир на плате простой: контакт 1 находится со стороны, ближней к надписи на шелкографии, рядом с квадратной (а не круглой) площадкой паяного отверстия. Это 3.3V. Нечётные пины — левый ряд, чётные — правый.
💡Всегда уточняйте, в какой нумерации (BOARD или BCM) написан пример кода — подключение «по номеру пина» вместо «по номеру GPIO» ломает схему.