Arduino Uno – Passive Buzzer

Arduino tuottaa nappia painamalla äänen passiiviselle summerille, joka sitten toistaa sen lähdekoodissa määritellyllä taajuudella, samalla kuin punainen LED välkkyy.

Tässä passiivisessa summerissa on kaksi jalkaa: maadoitus (ground) ja digital out. Käytin 100 ohm etuvastusta (resistor) summerin digitaaliselle signaalille. LED taas tarvitsee vähintään 220 ohm etuvastuksen. Itse käytin 330 ohm, koska sellainen sattui olemaan saatavilla. Painikkeen maadoitusjalka on kytketty 10K ohm etuvastukseen.

Merkkaan kytkentäkaavioissa johdot seuraavasti:

Siniset johdot = maadoitus (ground)
Punaiset johdot = 5V power
Mustat johdot = Digital output

# Summerista lähtee kuvassa musta ja punainen johto. Kytkentäkaavion piirtämiseen käyttämästäni ohjelmasta ei löytynyt sitä summeria, joka itselläni oli käytössä. Tästä syystä en saanut sen johtojen värejäkään muutettua kuvaan. Mustasta johdosta lähtee kuitenkin ground ja punaisesta data.


Lähdekoodi:

Esimerkkikoodi löytyy GitHubista: https://github.com/PyhaMarkus/arduino-passive-buzzer

// Constants are read-only and do not change. Pin numbers are defined here.
const int buttonPin = 8; // the number of the pushbutton pin
const int ledPin = 13; // the number of the LED pin
const int buzzerPin = 7; // the number of the buzzer pin

// Variable for button state. This will change.
int buttonState = 0; // button status

void setup() {
// Initialize LED pin as output:
pinMode(ledPin, OUTPUT);
// initialize button pin as input:
pinMode(buttonPin, INPUT);
// initialize buzzer pin as output:
pinMode(buzzerPin, OUTPUT);
}

void loop() {
// Read the state of the button value:
buttonState = digitalRead(buttonPin);

// Check whether the button has been pressed. If yes, the buttonState is HIGH:
if (buttonState == HIGH) {

// Alarm
digitalWrite(ledPin, HIGH);
delay(1000);
tone(buzzerPin, 1000, 500);
delay(1000);
digitalWrite(ledPin, LOW);

delay(1000);

digitalWrite(ledPin, HIGH);
delay(1000);
tone(buzzerPin, 1000, 500);
delay(1000);
digitalWrite(ledPin, LOW);

delay(1000);

digitalWrite(ledPin, HIGH);
delay(10000);
} else {
// Turn off the LED
digitalWrite(ledPin, LOW);
}
}

Käytetyt osat:

KappalemääräOsan nimi
1Arduino Uno Rev3
1Passive Buzzer
1Button
1100 ohm Resistor
1330 ohm Resistor
110K ohm Resistor
1Red LED
1Large Breadboard
A lotJumper Wire

Käytetyt kirjastot:

Ei mitään.

 

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top