This tutorial of EngineersGallery is on Peizo Buzzer. Here two examples are included one plays beep sound and other one plays a song.
Detailed Tutorial
1. Introduction:
2. Required Hardware
3. Building Circuit
4. Programming 1 – Playing a beep sound.
5. Programming 2 – Playing a song:
6. Output:
- Introduction:
- This tutorial of EngineersGallery explains how to use a Peizo Buzzer on Arduino. When voltages are supplied to its terminal it generates beep sound. This buzzer is used to give beep sound to various embedded systems.
-
Buzzers can be found in alarm devices, computers, timers and confirmation of user input such as a mouse click or keystroke.
You will also learn how to use tone() and noTone() function.
So, let’s get started!
- Required Hardware or What you will need
- Arduino Uno Microcontroller Board
- Bread Board
- Jumper Wire
- 9v Battery
- 5v Buzzer
- 100 Ohm Resistor
- Building Circuit
- Make following circuit with the help of above mentioned components. We have included two examples here both of them use the following circuit.
- Programming 1 – Playing a beep sound.
-
/* Beep sound generation Tutorial By EngineersGallery engineersgallery.com */ const int Buzzer = 9; void setup() { pinMode(Buzzer, OUTPUT); } void loop() { digitalWrite(Buzzer, HIGH); delay(400); digitalWrite(Buzzer, LOW); delay(2000); }
-
- Programming 2 – Playing a song:
-
/* Tone generation Tutorial By EngineersGallery engineersgallery.com note frequency c 262 Hz d 294 Hz e 330 Hz f 349 Hz g 392 Hz a 440 Hz b 494 Hz C 523 Hz */ const int Buzzer = 9; const int songLength = 18; char notes[] = "cdfda ag cdfdg gf "; // a space represents a rest int beats[] = {1,1,1,1,1,1,4,4,2,1,1,1,1,1,1,4,4,2}; int tempo = 150; // Speed of tempo void setup() { pinMode(Buzzer, OUTPUT); } void loop() { int i, duration; for (i = 0; i < songLength; i++) // step through the song arrays { duration = beats[i] * tempo; // length of note/rest in ms if (notes[i] == ' ') // is this a rest? { delay(duration); // then pause for a moment } else // otherwise, play the note { tone(Buzzer, frequency(notes[i]), duration); delay(duration); // wait for tone to finish } delay(tempo/10); // brief pause between notes } while(true){} // Remove this line if you want to play this song for ever. } int frequency(char note) { int i; const int numNotes = 8; // number of notes we're storing char names[] = { 'c', 'd', 'e', 'f', 'g', 'a', 'b', 'C' }; int frequencies[] = {262, 294, 330, 349, 392, 440, 494, 523}; for (i = 0; i < numNotes; i++) { if (names[i] == note) { return(frequencies[i]); } } return(0); }
-