#13Principiante

Uso del cicalino

4.7(88)
148 completato
Uso del cicalino
Progetto di base che utilizza il cicalino per emettere un suono con una certa frequenza e intervalli. Insegna l'uso delle funzioni tone() e noTone().

Video

Schema circuito

Uso del cicalino - Circuit

Codice sorgente

Arduino (C++)
1int frequency = 400;
2int buzzerPin = 7;
3
4void setup() {
5}
6
7void loop() {  
8  tone(buzzerPin, frequency);
9  delay(300);
10  noTone(buzzerPin);
11  delay(300);
12}

FAQ

Qual è la differenza tra un buzzer attivo e uno passivo?▾

Il buzzer attivo è dotato di un oscillatore interno; emette un suono costante solo quando viene alimentato con tensione. Il buzzer passivo richiede una frequenza esterna; con la funzione tone() è possibile riprodurre note diverse. Per i progetti musicali è necessario utilizzare un buzzer passivo.

Come si usa la funzione tone()?▾

tone(pin, frequenza) emette un suono alla frequenza specificata, mentre noTone(pin) lo interrompe. È possibile specificare anche la durata utilizzando il formato tone(pin, frequenza, durata). Ad esempio, corrisponde alla nota La a 440 Hz.

Il volume è troppo basso, come posso aumentarlo?▾

I pin di Arduino pilotano il cicalino con una corrente limitata. Per ottenere un suono più forte, puoi pilotare il cicalino tramite un transistor NPN (ad es. BC547) oppure scegliere una disposizione che non copra il foro del cicalino.

L'uso della funzione tone() può causare problemi sugli altri pin?▾

In Uno, la funzione tone() utilizza il Timer 2; pertanto, durante la riproduzione, il PWM (analogWrite) sui pin 3 e 11 non funziona correttamente. Se è necessario utilizzare il PWM contemporaneamente, scegli pin diversi.

Uso del cicalino | BlueGrays