PR.FT5_15·Kit RPi›BuzzerPróximo →
⬤ Iniciante · PWM · Frequência

🔊 Buzzer

Gerar sons com buzzer ativo e passivo. Criar melodias e alertas sonoros controlando a frequência com PWM.

Ativo vs Passivo

TipoComo funcionaControlo
AtivoOscilador interno — basta ligar/desligarGPIO digital HIGH/LOW
PassivoSem oscilador — precisa de sinal externoPWM com frequência variável

Circuito

Buzzer + (VCC) → GPIO 18
Buzzer − (GND) → GND (pino 6)

Exercício 1 — Buzzer ativo (alerta)

Python · buzzer_ativo.py
import RPi.GPIO as GPIO
import time

BUZZ = 18
GPIO.setmode(GPIO.BCM)
GPIO.setup(BUZZ, GPIO.OUT)

for _ in range(3):
    GPIO.output(BUZZ, GPIO.HIGH)
    time.sleep(0.2)
    GPIO.output(BUZZ, GPIO.LOW)
    time.sleep(0.1)

GPIO.cleanup()

Exercício 2 — Buzzer passivo (melodia)

Python · buzzer_melodia.py
import RPi.GPIO as GPIO
import time

BUZZ = 18
GPIO.setmode(GPIO.BCM)
GPIO.setup(BUZZ, GPIO.OUT)
pwm = GPIO.PWM(BUZZ, 440)

# Notas: (frequência_Hz, duração_s)
notas = [
    (262, 0.3),  # Dó
    (294, 0.3),  # Ré
    (330, 0.3),  # Mi
    (349, 0.3),  # Fá
    (392, 0.5),  # Sol
]
for freq, dur in notas:
    pwm.ChangeFrequency(freq)
    pwm.start(50)
    time.sleep(dur)
    pwm.stop()
    time.sleep(0.05)

GPIO.cleanup()