Все, что вам нужно знать о выводах GPIO Raspberry Pi

Raspberry Pi — дешевый и крошечный компьютер, способный выполнять огромное количество задач, включая ретро-игры и домашний медиацентр. Pi также в значительной степени ориентирован на образование, причем версии Scratch и Minecraft Pi направлены на то, чтобы помочь молодым людям научиться программировать, а контакты GPIO ( General Purpose Input/Output ) открывают целую мир электронных мастеров и изобретений своими руками.

Что такое контакты Raspberry Pi GPIO ?

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

Перед тем, как мы начнем, обратите внимание: Различные версии Pi могут отличаться в зависимости от их контактов! Прежде чем прикреплять что-либо к своей плате, убедитесь, что вы используете правильные. . Быстрый способ проверить — ввести pinout в терминал Raspberry Pi, после чего появится диаграмма вашей текущей настройки.

Контакты GPIO интегрированы в печатную плату компьютера. Их поведение может контролироваться пользователем, чтобы позволить им считывать данные с датчиков и таких компонентов управления, как светодиоды, двигатели и дисплеи. В старых моделях Pi было 26 контактов GPIO, а в новых моделях — 40. На этой диаграмме показано, что делает каждый вывод:

На помеченной выше схеме вы можете видеть, что существуют разные типы контактов GPIO. которые служат разным целям. Вы можете найти интерактивную версию этой диаграммы на сайте pinout.xyz. Она также описывает одну из первых запутанных вещей, с которыми вам придется столкнуться. К каждой булавке прикреплены два числа. Его номер BOARD (числа в кружке) и его номер BCM (канал Broadcom SOC). Вы можете выбрать, какое соглашение использовать при написании кода Python:

  # 1 - Нумерация GPIO/BCM 
GPIO.setmode (GPIO.BCM)
# 2 - Нумерация плат
GPIO.setmode (GPIO.BOARD)

В каждом проекте можно использовать только одно соглашение, поэтому выберите одно и придерживайтесь его. Ни одно из соглашений не является «правильным», поэтому выбирайте то, которое вам больше всего подходит. Однако стоит отметить, что некоторые периферийные устройства полагаются на нумерацию GPIO/BCM.

В этой статье мы будем придерживаться нумерации BOARD .. Так что же на самом деле делают булавки?

Power Pins

Начнем с контакты питания. Raspberry Pi может обеспечивать питание как 5 В (контакты 2 и 4), так и 3,3 В (контакты 1 и 17). Он также обеспечивает заземление (GND) для цепей на контактах 6, 9, 14, 20, 25, 30, 34 и 39.

К сожалению, есть Нет однозначного ответа на вопрос, сколько тока могут потреблять контакты питания 5 В, поскольку это зависит от того, какой источник питания вы используете, и какие другие компоненты вы подключили к своему Pi. Raspberry Pi 3 потребляет только 2,5 А от источника питания и требует около 750 мА для загрузки и нормальной работы без наушников. Это означает, что если вы используете источник питания 2,5 А, выводы 5 В могут обеспечивать максимальный ток около 1,7 А. К сожалению, это зависит от модели Pi, однако, как показано в этой таблице:

Для большинства пользователей, только начинающих работать с Pi, это не будет проблемой, но следует помнить об этом, когда вы тратите больше времени с выводами GPIO.

Контакты 3,3 В несколько проще: последние версии Raspberry Pi (начиная с модели B +) обеспечивают до 500 мА , а более старые модели — только 50 мА . Обратите внимание, что этот ток также распределяется между всеми другими контактами GPIO!

Итак, эти контакты могут обеспечивать питание ваших компонентов, но это все, что они делают. Самое интересное — это остальные булавки.

Standard GPIO

На графике выше, не обращая внимания на контакты питания, вы увидите, что некоторые из них отмечены разными цветами. Зеленые контакты — это стандартные контакты GPIO, которые вы будете использовать в большинстве проектов для начинающих. Эти выводы могут выдавать 3,3 В , что также называется установкой вывода HIGH в коде. Когда выходной контакт LOW , это означает, что он просто выдает 0В.

Они также могут принимать вход до 3,3 В, который на выводе читается как HIGH .

Не подавайте на контакты больше 3,3 В: это быстрый способ поджарить ваш Pi!

Чтобы получить отличное руководство по началу работы с выводами GPIO в простом проекте, попробуйте наш проект «Начало работы с Raspberry Pi GPIO».

В то время как в этой статье мы рассмотрим некоторые из контактов со специальным назначением, вы можете использовать любые контакты , кроме контактов питания, и контакты 27 и 28 как обычные. Контакты GPIO.

PWM

ШИМ (широтно-импульсная модуляция) используется с такими компонентами, как двигатели, сервоприводы и светодиоды, посылая короткие импульсы для управления получаемой мощностью. Мы использовали его с Arduino в нашем руководстве Ultimate Guide to LED Strips.

ШИМ также возможен на Pi. Контакт 12 (GPIO 18) и контакт 35 (GPIO 35) поддерживают аппаратную ШИМ, хотя Pi также может предоставлять программную ШИМ через библиотеки, такие как pigpio.

Этот простой учебник по яркости светодиода поможет вам начать знакомство с кодом, необходимым для ШИМ.

UART

Контакты 8 и 10 (GPIO 14 и 15) — это контакты UART, предназначенные для связи с Pi через последовательный порт. Есть определенные ситуации, когда вы можете захотеть это сделать, но для большинства новичков будет проще подключиться к вашему Pi через SSH или с помощью VNC.

Если вас интересует подробное представление о том, как работают последовательные контакты, это отличный пример для начинающих.

SPI

SPI (шина последовательного периферийного интерфейса) — это метод связи с такими устройствами, как считыватель RFID, который мы использовали в нашем проекте DIY Smart Lock с Arduino и RFID.

Он позволяет устройствам обмениваться данными с Raspberry Pi синхронно, что означает, что гораздо больше данных может передаваться между главным и подчиненным устройствами. . Если вы когда-либо использовали небольшой сенсорный экран для своего Pi, они общались именно так.

Существуют различные устройства и HAT расширения для Raspberry Pi, которые используют SPI, и он может открыть ваши проекты для гораздо большего количества оборудования, чем могут поддерживать обычные контакты GPIO. Однако для его работы требуется довольно много проводов. Подробный обзор SPI можно найти на веб-сайте Raspberry Pi Foundation.

Контакты 19, 21, 23, 24, 25 и 26 (GPIO 10, 9, 11, 8, GND , и GPIO 26) используются для подключения к устройству SPI, и все они необходимы для бесперебойной работы. Хороший способ избежать спагетти — купить готовое расширение, такое как Sense HAT, которое устанавливается поверх вашей платы и снабжено светодиодной матрицей и большим количеством датчиков. Он был фаворитом уже несколько лет и даже использовался на Международной космической станции для проведения некоторых экспериментов!

Протокол SPI не включен в стандартной комплектации в Raspbian, но его можно включить в файле raspi-config вместе с I2C..

I2C

I2C (Inter-Integrated Circuit) похож на SPI, но обычно считается более простым в настройке и использовании. Он обменивается данными асинхронно и может поддерживать столько различных устройств, сколько необходимо, при условии, что каждое из них имеет уникальные адресные места на шине I2C. Из-за этой системы адресации Pi требуется только два контакта I2C — контакт 3 (GPIO 2) и контакт 5 (GPIO 3), что делает его намного проще в использовании, чем SPI.

Небольшие размеры I2C открывают огромный диапазон возможностей. Со стандартными контактами GPIO настройка ЖК-экрана и некоторых кнопок займет почти каждый контакт, а использование устройства I2C, такого как контроллер Adafruit Negative LCD, сокращает его до двух контактов!

У Sparkfun есть полное изложение SPI и I2C вместе с примерами для начала.

Контакты 27 и 28 (отмеченные ID_SD и ID_SC) также являются I2C. Они используются Pi для внутренних функций, а также некоторыми платами HAT. Как правило, не связывайтесь с ними, если вы действительно не знаете, что делаете!

Raspberry Pi: контакт GPIO для всего!

Raspberry Pi — это швейцарский армейский нож современных вычислений. Наряду с огромным количеством потрясающих повседневных задач, он также открывает каждому возможность создавать свои собственные крутые творения.

Многие проекты Raspberry Pi для начинающих используют протоколы, обсуждаемые в этой статье, и практический подход — лучший способ научиться. Продолжайте возиться и получайте удовольствие!

Оцените статью
cuterful.ru
Добавить комментарий