Node.js Raspberry Pi — Введение в GPIO
Что такое GPIO?
GPIO означает ввод-вывод общего назначения.
Raspberry Pi имеет два ряда контактов GPIO, которые соединяют Raspberry Pi и реальный мир.
Выходные контакты похожи на переключатели, которые Raspberry Pi может включать и выключать (например, включать и выключать светодиод). Но он также может отправить сигнал на другое устройство.
Входные контакты подобны переключателям, которые вы можете включать и выключать из внешнего мира (например, выключатель света). Но это также могут быть данные с датчика или сигнал с другого устройства.
Это означает, что вы можете взаимодействовать с реальным миром и управлять устройствами и электроникой с помощью Raspberry PI и его контактов GPIO!
Пристальный взгляд на контакты GPIO
Это иллюстрация Raspberry Pi 3.
Штыри GPIO — это маленькие красные квадраты в два ряда на правой стороне Raspberry Pi, на самом Raspberry Pi это маленькие металлические штифты.
Raspberry Pi 3 имеет 26 контактов GPIO, остальные контакты — питание, земля или «другое».
Расположение контактов соответствует таблице ниже.
Raspberry Pi B+, 2, 3 и ноль
3V3 | 1 | 2 | 5В |
GPIO 2 | 3 | 4 | 5В |
GPIO 3 | 5 | 6 | ЗАЗЕМЛЕНИЕ |
GPIO 4 | 7 | 8 | GPIO 14 |
ЗАЗЕМЛЕНИЕ | 9 | 10 | GPIO 15 |
GPIO 17 | 11 | 12 | GPIO 18 |
GPIO 27 | 13 | 14 | ЗАЗЕМЛЕНИЕ |
GPIO 22 | 15 | 16 | GPIO 23 |
3V3 | 17 | 18 | GPIO 24 |
GPIO 10 | 19 | 20 | ЗАЗЕМЛЕНИЕ |
GPIO 9 | 21 | 22 | GPIO 25 |
GPIO 11 | 23 | 24 | GPIO 8 |
ЗАЗЕМЛЕНИЕ | 25 | 26 | GPIO 7 |
ДНК | 27 | 28 | ДНК |
GPIO 5 | 29 | 30 | ЗАЗЕМЛЕНИЕ |
GPIO 6 | 31 | 32 | GPIO 12 |
GPIO 13 | 33 | 34 | ЗАЗЕМЛЕНИЕ |
GPIO 19 | 35 | 36 | GPIO 16 |
GPIO 26 | 37 | 38 | GPIO 20 |
ЗАЗЕМЛЕНИЕ | 39 | 40 | GPIO 21 |
Легенда
Физический контактный номер |
Мощность + |
Земля |
UART |
I2C |
СПИ |
GPIO |
Не подключать |
Пристальный взгляд на макетную плату
Макетная плата используется для макетирования электроники, позволяет создавать схемы без пайки. По сути, это пластиковая доска с сеткой точек привязки (отверстий). Внутри доски есть металлические полосы, соединяющие различные точки крепления определенным образом.
На приведенной ниже иллюстрации мы выделили некоторые разделы разными цветами. Это должно показать вам, как сетка связана.
Различные разделы макетной платы:
- Слева и справа по 2 столбца связующих точек. Все связующие точки в каждом из этих столбцов соединены.
- Шина питания — столбцы, выделенные красным цветом. Обычно используются для подключения питания к макетной плате. Поскольку вся колонна подключена, вы можете подключить питание к любой точке привязки в колонне.
- Наземная шина — столбцы, выделенные синим цветом. Обычно они используются для подключения заземления к макетной плате. Поскольку вся колонна подключена, вы можете подключить землю к любой точке привязки в колонне.
- Ряды соединенных связующих точек — ряды, выделенные зеленым цветом. Завязки каждого из этих рядов связаны, но не всего ряда! Левые связующие точки соединяются (ABCDE), а правые связующие точки соединяются (FGHIJ).
- В центре макета есть канавка, разделяющая левый и правый ряды. Ширина траншеи рассчитана таким образом, чтобы через нее поместилось много интегральных схем.
Установите модуль включения
Для взаимодействия с GPIO на Raspberry Pi с помощью Node.js мы будем использовать модуль с именем «onoff».
Install the onoff module using npm:
pi@w3demopi:~ $ npm install onoff
Now onoff should be installed and we can interact with the GPIO of the Raspberry Pi.