Введение в GPIO: ввод/вывод #
GPIO (от англ. General Purpose Input/Output) — это универсальные цифровые пины, которые можно программно настроить как вход или выход. Они позволяют Repka Pi взаимодействовать с внешним оборудованием напрямую, без дополнительных микросхем.
-
В режиме входа (Input) пин может считывать логическое состояние внешнего сигнала: например, определять, нажата ли кнопка или поступает ли сигнал с датчика.
-
В режиме выхода (Output) пин может устанавливать логический уровень (высокий или низкий), например — зажигать светодиод, управлять реле или подавать сигнал на другой контроллер.
GPIO — это ключевая возможность для управления периферией и создания интерактивных проектов. С их помощью можно собрать простую схему с несколькими компонентами — или сложную систему автоматизации.
Важно помнить: GPIO-пины работают с логическими уровнями 3.3 В, и прямое подключение к более высоким напряжениям (например, 5 В) может повредить плату.
Нумерация пинов #
Перед тем как приступить к работе с GPIO на Repka Pi, важно разобраться, как именно пронумерованы пины — ведь одна и та же физическая ножка разъёма может иметь несколько «имен», в зависимости от контекста. Существует несколько систем нумерации, и каждая используется в своих целях:
Варианты нумерации:
-
Физическая нумерация
Это просто позиция пина на 40-контактном разъёме. -
GPIO-имена от SoC (логическая нумерация)
Каждый пин напрямую связан с конкретным выводом на микросхеме (SoC). Эти пины обозначаются по схеме типа PL11, PG10, PC7 и т.п., где:-
Первая буква указывает порт (Port),
-
Цифра — номер пина в этом порту (от 0 до 31).
-
-
Внутренние GPIO-номера (целые числа)
Некоторые низкоуровневые системы (например,/sys/class/gpio
) используют целочисленные номера GPIO, полученные по формуле:
GPIO_number = base_offset + (порт_буква * 32) + номер_пина
.
Например, если PG начинается с номера 192, то PG10 = 192 + 10 = 202.
Ниже представлено изображение, на котором показано в какой колонке искать определенный тип нумерации пинов на наших изображениях с распиновками к Repka Pi: