Nota
Ciao, benvenuto nella Community di SunFounder Raspberry Pi & Arduino & ESP32 Enthusiasts su Facebook! Approfondisci le tue conoscenze su Raspberry Pi, Arduino ed ESP32 insieme ad altri appassionati.
Perché Unirsi?
Supporto da Esperti: Risolvi i problemi post-vendita e le sfide tecniche con l’aiuto della nostra community e del nostro team.
Impara e Condividi: Scambia consigli e tutorial per migliorare le tue competenze.
Anteprime Esclusive: Ottieni accesso anticipato agli annunci di nuovi prodotti e alle anteprime.
Sconti Speciali: Approfitta di sconti esclusivi sui nostri prodotti più recenti.
Promozioni Festive e Giveaway: Partecipa a giveaway e promozioni festive.
👉 Pronto a esplorare e creare con noi? Clicca [Qui] e unisciti oggi stesso!
3.2 Tono Personalizzato
Abbiamo utilizzato il cicalino attivo nel progetto precedente, questa volta useremo il cicalino passivo.
Come il cicalino attivo, anche il cicalino passivo utilizza il fenomeno dell’induzione elettromagnetica per funzionare. La differenza è che un cicalino passivo non ha una sorgente di oscillazione, quindi non emetterà un suono se vengono utilizzati segnali DC. Tuttavia, ciò consente al cicalino passivo di regolare la propria frequenza di oscillazione ed emettere diverse note come «do, re, mi, fa, sol, la, si».
Facciamo emettere una melodia al cicalino passivo!
Componenti Necessari
In questo progetto, abbiamo bisogno dei seguenti componenti.
È sicuramente conveniente acquistare un kit completo, ecco il link:
Nome |
ELEMENTI IN QUESTO KIT |
LINK |
|---|---|---|
Kepler Kit |
450+ |
Puoi anche acquistarli separatamente dai link sottostanti.
SN |
COMPONENTE |
QUANTITÀ |
LINK |
|---|---|---|---|
1 |
1 |
||
2 |
Cavo Micro USB |
1 |
|
3 |
1 |
||
4 |
Diversi |
||
5 |
1(S8050) |
||
6 |
1(1KΩ) |
||
7 |
Passive Cicalino |
1 |
Schema Elettrico

Quando l’uscita GP15 è alta, dopo il resistore limitatore di corrente da 1K (per proteggere il transistor), l’S8050 (transistor NPN) si condurrà, facendo suonare il cicalino.
Il ruolo dell’S8050 (transistor NPN) è di amplificare la corrente e rendere il suono del cicalino più forte. In realtà, puoi anche collegare il cicalino direttamente a GP15, ma noterai che il suono del cicalino sarà più debole.
Collegamenti
Il kit include due cicalini, utilizziamo un cicalino passivo (quello con un PCB esposto sul retro).
Il cicalino necessita di un transistor per funzionare, qui utilizziamo l’S8050.
Codice
Nota
Apri il file
3.2_custom_tone.pynel percorsokepler-kit-main/micropythono copia questo codice in Thonny, poi clicca su «Esegui Script Corrente» o semplicemente premi F5 per eseguirlo.Non dimenticare di selezionare l’interprete «MicroPython (Raspberry Pi Pico)» nell’angolo in basso a destra.
Per tutorial dettagliati, fai riferimento a Aprire ed Eseguire Codice Direttamente.
import machine
import utime
buzzer = machine.PWM(machine.Pin(15))
def tone(pin,frequency,duration):
pin.freq(frequency)
pin.duty_u16(30000)
utime.sleep_ms(duration)
pin.duty_u16(0)
tone(buzzer,440,250)
utime.sleep_ms(500)
tone(buzzer,494,250)
utime.sleep_ms(500)
tone(buzzer,523,250)
Come funziona?
Se al cicalino passivo viene dato un segnale digitale, può solo continuare a spingere il diaframma senza produrre suono.
Pertanto, utilizziamo la funzione tone() per generare il segnale PWM e far suonare il cicalino passivo.
Questa funzione ha tre parametri:
pin, il pin GPIO che controlla il cicalino.
frequenza, l’intonazione del cicalino è determinata dalla frequenza, maggiore è la frequenza, più alta sarà l’intonazione.
Durata, la durata della nota.
Utilizziamo la funzione duty_u16() per impostare il ciclo di lavoro a 30000 (circa il 50%). Può essere un altro valore, purché generi un segnale elettrico discontinuo per oscillare.
Approfondisci
Possiamo simulare un tono specifico in base alla frequenza fondamentale del pianoforte, in modo da suonare un brano musicale completo.
Nota
Apri il file
3.2_custom_tone_2.pynel percorsokepler-kit-main/micropythono copia questo codice in Thonny, poi clicca su «Esegui Script Corrente» o semplicemente premi F5 per eseguirlo.Non dimenticare di selezionare l’interprete «MicroPython (Raspberry Pi Pico)» nell’angolo in basso a destra.
Per tutorial dettagliati, fai riferimento a Aprire ed Eseguire Codice Direttamente.
import machine
import utime
NOTE_C4 = 262
NOTE_G3 = 196
NOTE_A3 = 220
NOTE_B3 = 247
melody =[NOTE_C4,NOTE_G3,NOTE_G3,NOTE_A3,NOTE_G3,NOTE_B3,NOTE_C4]
buzzer = machine.PWM(machine.Pin(15))
def tone(pin,frequency,duration):
pin.freq(frequency)
pin.duty_u16(30000)
utime.sleep_ms(duration)
pin.duty_u16(0)
for note in melody:
tone(buzzer,note,250)
utime.sleep_ms(150)

