Управление GPIO через командную строку Bash на Raspberry Pi — мигаем лампочкой Ильича

Здравствуйте.

В этой статье я постараюсь осветить актуальную и интересную для многих тему, а именно использование GPIO интерфейса  на базе Raspberry Pi B (ее описание тут). с помощью командной строки Bash. Очень удобная штука для создания умного дома и другой автоматики.

Видео версия статьи:

Сабж является самым простым способом управления интерфейсом GPIO, так как не требует никаких дополнительных настроек и работает сразу из коробки, при условии использования официальной сборки ОС Raspbian c сайта производителя. Основная фишка в том, что интерфейсом можно управлять на уровне операционной системы без дополнительных извращений.

На плате интерфейс выглядит так:

А вот распиновка:

Управление портами производится по номерами GPIO ножек: GPIO0, GPIO1, GPIO2  и т.д. (смотрите распиновку).

Основная особенность *nix систем — это то, что ВСЕ является файлами, и GPIO не не исключения.

Для инициализации порта необходимо ввести следующую команду (под рутом):

echo «4» > /sys/class/gpio/export // Эта команда инициализует GPIO4

Теперь задаем режим работы ножки (выход/вход):

echo «out» > /sys/class/gpio/gpio4/direction // out — пин работает как выход, in — работает как вход

Теперь мы может управлять ногой из консоли:

echo «1» > /sys/class/gpio/gpio4/value // 1 — выставляем высокий уровень, 0 — низкий

А вот так мы можем сделать пин входом:

echo «in» > /sys/class/gpio/gpio4/direction
cat /sys/class/gpio/gpio4/value

Таким макаром мы можем считывать значения с самых разных датчиков. Стоит обратить внимение на то, что малина оперирют 3.3В уровнями, подача 5В чревата порчей устройства — будьте внимательны!

Вот пример подключения к Raspberry Pi лампочки Ильича через реле:

IMG_0418

Реле использовал обычное ардуиновское, малиновые логическое уровни оно без проблем скушало. Реле можно купить там.

Доступ к портам из командной строки дает очень широкие возможности в плане автоматизации. Так же интерфейсом можно управлять из таких языков программирования  как С, С++, питон и многие другие. Если вы хотите увидеть еще статьи по данной теме, то пишите в комментариях.

Всем спасибо за внимание.

 

Поддержать сайт и автора: Z208212694629
R429062753687
Яндекс деньги - https://money.yandex.ru/to/410013974912682

Подпишись:
На мой канал youtube
На рассылку свежих статей
На группу ВК
На группу в ОК

Понравилась статья? Поделись с друзьями)

Опубликовать в Google Buzz
Опубликовать в Google Plus
Опубликовать в LiveJournal
Опубликовать в Мой Мир
Опубликовать в Одноклассники

Добавить комментарий