Raspberry Pi: первое знакомство. Урок 4. Работа с GPIO, мигание светодиодом, Python
Содержание
- Для урока нам понадобится:
- Программирование Raspberry Pi GPIO на языке Python
- Сборка модели
- Управление светодиодом на Raspberry Pi из консоли
- Программа для мигания светодиодом на Raspberry Pi
- Управление светодиодом с помощью кнопки
- Управление светодиодом с клавиатуры
- Все уроки курса Raspberry Pi: первое знакомство
- Где купить Raspberry Pi
Урок ориентирован на начинающих пользователей и представлен в текстовом и видео-форматах.
Видео четвертого урока:
Также рекомендуем ознакомиться с:
Для урока нам понадобится:
- плата Raspberry Pi;
- кабель питания;
- USB-клавиатура;
- USB-мышь;
- монитор или телевизор с HDMI/RCA/DVI интерфейсом;
- кабель, один конец которого RCA или HDMI, а другой соответствует вашему монитору;
- SD-карта с уже установленной ОС Raspbian (как ее установить);
- светодиод;
- кнопка;
- резистор на 220 Ом
- 3 провода мама-папа
- 2 провода папа-папа.
Программирование Raspberry Pi GPIO на языке Python
Для сегодняшнего урока мы выбрали язык программирования Python.
Python — современный объектно-ориентированный язык. Он наиболее часто используется для программирования GPIO на Raspberry Pi. Python входит в состав операционной системы Raspbian.
Сборка модели
Для работы нам потребуется собрать следующую схему:
Схема подключения светодиода и кнопки к Raspberry Pi
Обратите внимание, что порты GPIO на Raspberry Pi не подписаны, полезно иметь распечатанную распиновку.
Распиновка Raspberry Pi. Схема с ledgerlabs.us
Собранная модель со светодиодом и кнопкой
Управление светодиодом на Raspberry Pi из консоли
Заходим в LXTerminal и набираем:
После этого вместо имени пользователя в начале строки должно отобразиться .
Вводим следующие строки:
import RPi.GPIO as GPIO #импорт библиотеки
GPIO.setmode(GPIO.BOARD) #"включение" GPIO
GPIO.setup(7, GPIO.OUT) #объявление 7-го пина как выход
Затем для включения светодиода можно использовать команду
GPIO.output(7, 1)
А для выключения
GPIO(output(7, 0)
После работы с GPIO желательно выполнить команду
GPIO.cleanup()
Программа для мигания светодиодом на Raspberry Pi
Для автономной работы светодиода нам потребуется написать и запустить программу. Для этого откроем предустановленную программу IDLE 3 и в меню File нажмем New. В открывшемся окне мы можем писать программу.
Напишем:
import RPi.GPIO as GPIO #импорт библиотеки для работы с GPIO
import time #импорт библиотеки для ожидания
GPIO.setmode(GPIO.BOARD) #"запуск" GPIO
GPIO.setup(7, GPIO.OUT) #объявление порта 7 как выход
while True: #бесконечный цикл
____GPIO.output(7, 1) #включение светодиода
____time.sleep(1) #ожидание 1 секунды
____GPIO.output(7, 0) #выключение светодиода
____time.sleep(1) #ожидание 1 секунды
Сохраним программу в папке /home/pi.
Теперь мы можем запустить программу из LXTerminal с помощью команды
sudo python programname.py
Управление светодиодом с помощью кнопки
Поуправляем светодиодом с помощью внешней кнопки: когда кнопка зажата — светодиод горит, когда отжата — не горит.
Для этого подключим кнопку к порту 5.
Для управления нам потребуется следующая программа:
import RPi.GPIO as GPIO #импорт библиотеки GPIO
GPIO.setmode(GPIO.BOARD) #"включение GPIO"
GPIO.setup(7, GPIO.OUT) #объявление порта 7 как выход
GPIO.setup(3, GPIO.IN) #объявление порта 3 как вход
while True: #бесконечный цикл
____if GPIO.input(3) == False: #если кнопка зажата
________GPIO.output(7, 1) #включаем светодиод
____else: #иначе
________GPIO.output(7, 0) #выключаем
Управление светодиодом с клавиатуры
Сделаем еще одну программу. Она будет менять состояние светодиода при получении пустой строки и заканчиваться при получении другой строки.
import RPi.GPIO as GPIO
GPIO.setmode(GPIO.BOARD)
GPIO.setup(7, GPIO.OUT)
while True:
____str = input("Enter — включение, другое — выход ");
____if str != "":
________break
____else:
________GPIO.output(7, 1)
____str = input("Enter — выключение, другое — выход ");
____if str != "":
________break
____else:
________GPIO.output(7, 0)
GPIO.cleanup()
На этом четвертый урок по Raspberry Pi для начинающих закончен, продолжение следует!
Все уроки курса Raspberry Pi: первое знакомство
Где купить Raspberry Pi
Raspberry Pi и наборы с ней можно купить у официальных дилеров и их партнеров и в многочисленных интернет-магазинах. Наиболее привлекательные цены, постоянные спецпредложения и бесплатная доставка на сайтах китайских магазинов AliExpress и DealExtreme. Если нет времени ждать посылку из Китая — рекомендуем интернет-магазин Амперка.
Будьте аккуратны при выборе – в продаже имеются разные модели A, A+, B, B+, Raspberry Pi 2 и Raspberry Pi Zero.
Курс будет пополняться дополнительными уроками. Подпишитесь на нас ВКонтакте или Facebook, чтобы быть в курсе обновлений.
Источник: