🎛️ Potenciómetro + MCP3008
O RPi não tem conversor ADC nativo. Usamos o MCP3008 (8 canais, 10 bits, SPI) para ler o potenciómetro e outros sensores analógicos.
Ativar SPI e instalar biblioteca
Terminal
# Ativar SPI: raspi-config → Interfacing Options → SPI
sudo raspi-config
pip3 install adafruit-mcp3008
Circuito MCP3008
MCP3008 VDD + VREF → 3.3V
MCP3008 AGND + DGND → GND
MCP3008 CLK → GPIO 11 (SCLK)
MCP3008 DOUT → GPIO 9 (MISO)
MCP3008 DIN → GPIO 10 (MOSI)
MCP3008 CS → GPIO 8 (CE0)
Potenciómetro saída → MCP3008 CH0 (pino 1)
Exercício — Ler potenciómetro
Python · potenciometro.py
import Adafruit_MCP3008 import time mcp = Adafruit_MCP3008.MCP3008(clk=11, cs=8, miso=9, mosi=10) try: while True: valor = mcp.read_adc(0) # canal 0, 0-1023 pct = round(valor / 1023 * 100) barra = '█' * (pct // 5) + '░' * (20 - pct // 5) print(f"\r[{barra}] {pct:3d}% raw={valor}", end="") time.sleep(0.1) except KeyboardInterrupt: print()