Описание распиновки GPIO на Raspberry Pi 3

RPi – компьютер, который получил столь высокую популярность во многом благодаря наличию встроенного интерфейса ввода/вывода. Используя его, можно создавать всевозможные гаджеты.

Описание распиновки GPIO на Raspberry Pi 3 11128
Тэги

RPi – компьютер, который получил столь высокую популярность во многом благодаря наличию встроенного интерфейса ввода/вывода. Используя его, можно создавать всевозможные гаджеты: от простых метеостанций и портативных игровых приставок до систем умного дома. У Raspberry Pi 3, конечно, тоже имеется GPIO. И он мало чем отличается от тех, который присутствует в других моделях.

Чтобы работать с GPIO Raspberry Pi 3, необходимо знать его схему. Собственно, это является самым важным. Из текста ниже, в свою очередь, вы узнаете о том, какие пины за что отвечают. А, чтобы иметь лучшее представление об устройстве GPIO, рекомендуется скачать соответствующую схему, выполненную в графике.

Что такое GPIO и для чего он нужен?

Новичкам будет полезно узнать о том, что собой представляет GPIO. Это интерфейс, который предназначен для обеспечения связи между компонентами компьютера. В случае с "Малиной" он необходим для работы основной системы с дополнительными компонентами, которые называются модулями.

Пины в GPIO могут выполнять 3 функции:

  • подача электричества определенного напряжения;
  • заземление;
  • прием/отправка сигналов.

Распиновка GPIO на Raspberry Pi 3

Интересно то, что за вход и выход в интерфейсе могут отвечать одни и те же контакты. По крайней мере это справедливо для RPi. То, как они себя должны вести, определяется программой.

Как устроено GPIO на RPi3?

Теперь можно перейти к вопросу, который касается того, какая распиновка GPIO имеется на Raspberry Pi 3. В первую очередь необходимо сказать, что общее количество пинов на соответствующей панели равняется 40. Каждый из них имеет свой номер.

Все они подразделяются на 3 группы. К первой относятся питающие (на англоязычных схемах маркируются как Power) – они подают электричество в 3,3 и 5 Вольт. При этом у разных контактов данного назначения различное напряжение. Это обязательно следует учитывать при подключении модулей.

Ко второй – заземляющие (могут именоваться RND или Ground). Они нужны, чтобы отводить электричество, тем самым обеспечивая безопасное использование.

К третьей – порты (имеют обозначение BCM). Именно они служат теми контактами, которые могут принимать и отправлять сигналы. Пользователь может подключать модули к любым из них. Самое главное – чтобы было удобно обеспечивать питание подсоединённых компонентов.

Разобравшись с тем, какие типы контактов присутствуют в GPIO, можно перейти непосредственно к тому, какие из них конкретно за что отвечают. Самый простой способ освоить распиновку – это изучить схему. Но если такой возможности нет, можно обойтись и описанием.

Распиновка GPIO на Raspberry Pi 3

Предположим, что плата расположена горизонтально таким образом, что GPIO на ней находится в левом верхнем углу. В таком случае номера портов будут располагаться так:

  • левый нижний – 1;
  • левый верхний – 2;
  • нижний во втором ряду – 3;
  • верхний во втором ряду – 4 и т.д.

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

Питающие на 3,3 Вольта – 1 и 17, а на 5 Вольт – 2 и 4 (они находятся рядом). Заземляющие внизу – 9, 25 и 39, заземляющие вверху – 6, 14, 20, 30 и 34. Все остальные контакты – это порты (BCM).

Особенности нумерации GPIO

Чтобы начать использование GPIO в Raspberry Pi 3, необходимо знать какие существуют особенности нумерации контактов у данного интерфейса. Важно понимать, что в процессоре "Малины" не записаны номера пинов, которые не работают на вход/выход, то есть не являются портами.

Поэтому при управлении GPIO на Raspberry Pi 3 необходимо знать нумерацию BCM. Она в значительной степени отличается от той, которая рассмотрена в разделе выше. Так, 3 контакт (он является портом) имеет номер BCM2. Именно такой следует указывать при написании кода.

Raspberry Pi 3 распиновка

Понятно, что из-за этого может возникнуть путаница. Ввиду этого на Raspberry Pi 3 рекомендуется использовать Wiring Pi. Это специальная библиотека, которая имеет собственную нумерацию. Так, например, 3 порт (который является BCM 2) определяется как WiringPi 8. Возможно, это покажется еще более нелогичным. Но после ознакомления с соответствующей схемой все встанет на свои места.

Что нужно знать о GPIO RPI3?

Модули возможно подключать к абсолютно любым портам GPIO "Малины", и они будут нормально работать. Но важно знать, что в системе есть пара контактов, которые зарезервированы системой для особых целей. Ими являются BCM 0 и BCM 1 (их номера на обычной схеме – 27 и 28). Они предназначаются специально для установки плат расширения. Поэтому при возможности их не нужно использовать для подключения других модулей.

Еще один важный момент – осторожное использование питания через GPIO Raspberry Pi 3. Ток на внешние устройства через "Малину" может подаваться с силой до 50 мА. Это достаточно много для столь небольшого девайса. Поэтому подавать ток под такой силой нужно только по крайней необходимости. В противном случае можно не только испортить модуль, но и процессор самой RPi.

Купить
Raspberry PI
Проверенный поставщик
MyRaspberri.ru рекоммендует

Как можно взаимодействовать с GPIO?

Работать с GPIO "Малины" можно посредством языков программирования. Вариантов здесь существует много. Самый лучший для GPIO Raspberry Pi 3 – Python. Это связано с тем, что для этого одноплатника данный ЯП является "родным". Но с не меньшим успехом с интерфейсом возможно взаимодействовать и посредством C/C++ и даже PHP или Basic. Язык каждый выбирает под себя.

Как возможно убедиться, распиновка GPIO на RPi3 не является какой-то сложной. Единственное – по неопытности в ней можно немного запутаться. Чтобы этого не происходило, рекомендуется загрузить на компьютер схему расположения контактов. При этом лучше не одну, а несколько (обычную, BCM и WiringPi). Так будет удобно и подключать модули, и взаимодействовать с ними через программные инструменты.


Оставить комментарий

Обучение разработке Raspberri Pi
Хочешь научиться делать крутые штуки с RaspberryPi? Оставь заявку и мы отправим тебе информацию о наших курсах.
Оставить заявку

Автор курса Сергей Кузнецов, специалист по Raspberri Pi