Bibliotecas GPIO
[Link]
1.Descrição: É a biblioteca oficial e mais tradicional
para controle de GPIOs na Raspberry Pi.
2.Instalação: Já vem instalada no
Raspbian/Raspberry Pi OS, mas pode ser
instalada com pip install [Link].
3. Uso típico:
4. Controle de pinos digitais (entrada e saída)
5. Detecção de bordas (eventos)
import [Link] as GPIO
[Link]([Link])
[Link](18, [Link])
[Link](18, [Link])
[Link]()
gpiozero
6.Descrição: Biblioteca de alto nível desenvolvida
para facilitar o uso de periféricos GPIO, ideal para
iniciantes.
7.Instalação: sudo apt install python3-gpiozero
8. Uso típico:
9. LEDs, botões, sensores, motores, etc.
10. Sintaxe mais intuitiva e orientada a objetos.
from gpiozero import LED
from time import sleep
led = LED(18)
while True:
[Link]()
sleep(1)
[Link]()
sleep(1)
pigpio
11. Descrição: Biblioteca mais avançada, permite
controle preciso dos pinos, incluindo PWM por
hardware e comunicação remota via daemon.
12. Instalação: sudo apt install pigpio
python3-pigpio
13. Uso típico:
14. PWM real por hardware
15. Controle remoto de GPIOs
16. Comunicação com sensores analógicos via ADC
externos
import pigpio
pi = [Link]()
pi.set_mode(18, [Link])
[Link](18, 1)
[Link]()
WiringPi (e suas variantes)
17. Descrição: Inspirada na biblioteca Wiring do
Arduino, foi uma das primeiras bibliotecas para
controle de GPIOs na Raspberry Pi usando
C/C++.
18. Uso típico: Projetos em C/C++ com controle de
GPIOs, comunicação I2C, SPI, UART, PWM, etc.
19. Sintaxe parecida com Arduino, o que facilitava
a transição para quem já usava
microcontroladores.
Para executar um script Python diretamente no
terminal (sem digitar python [Link]), você
precisa:
No topo do seu arquivo .py, coloque:
#!/usr/bin/env python3
Dar a permissão:
chmod +x nome_do_arquivo.py
Executar o script
./nome_do_arquivo.py
Exemplo completo: Script: led_blink.py
Esse script pisca um LED conectado ao GPIO 18
(pino físico 12) a cada segundo.
#!/usr/bin/env python3
import [Link] as GPIO
from time import sleep
# Configuração do pino
[Link]([Link])
[Link](18, [Link])
try:
while True:
[Link](18, [Link])
print("LED ON")
sleep(1)
[Link](18, [Link])
print("LED OFF")
sleep(1)
except KeyboardInterrupt:
print("Encerrando script...")
finally:
[Link]()
Comando echo "gpio" sys
Esse comando envolve o uso do sistema de
arquivos virtual do Linux (mais especificamente,
o /sys/class/gpio), que permite controlar GPIOs
diretamente via terminal, sem precisar de
bibliotecas Python. Isso é útil em scripts shell,
automações simples ou testes rápidos.
echo 18 > /sys/class/gpio/export
echo out > /sys/class/gpio/gpio18/direction
echo 1 > /sys/class/gpio/gpio18/value
sleep 1
echo 0 > /sys/class/gpio/gpio18/value
echo 18 > /sys/class/gpio/unexport