In acest articol vom vedea cum putem genera sunete cu ajutorul lui Raspberry Pi Pico si a unui buzzer.
Pentru scrierea si incarcarea codului sursa vom folosi editorul Thonny.
Buzzerul va fi conectat la pinul GPIO 15 si la GND.
Codul sursa folosit pentru a testa functionalitatea este cel de mai jos:
from machine import Pin, PWM
from time import sleep
buzzer = PWM(Pin(15))
buzzer.freq(500) #setam frecventa dorita
buzzer.duty_u16(1000) #setam volumul redarii la maxim
sleep(1) #rulare sunete timp de 1 secunda
buzzer.duty_u16(0) #setare volum suunete la minim
sleep(1) #rulare a programului 1 secunda apoi se va opri rularea
Codul de mai sus va rula un singur sunet cu frecventa de 500 de Hertzi timp de 1 secunda apoi se va opri.
In schimb putem modifica in asa fel codul incat acesta sa fie executat intr-o bucla infinita. Pentru acest lucru vom executa codul intr-o bucla While conform exemplului de mai jos:
from machine import Pin, PWM
from time import sleep
while True:
buzzer = PWM(Pin(15))
buzzer.freq(500)
buzzer.duty_u16(1600)
sleep(1)
buzzer.duty_u16(0)
sleep(1)
Putem folosi si o bucla for pentru a reda mai multe frecvente. Codul folosit in acest caz este urmatorul:
from machine import Pin, PWM
from time import sleep
buzzer = PWM(Pin(15))
for i in range (500, 5000, 250):
buzzer.freq(i)
buzzer.duty_u16(1600)
sleep(0.1)
buzzer.duty_u16(0)
sleep(0.1)