Arduino Buzzer Module for Sensor shield

Arduino Add comments

Arduino Buzzer Module for Sensor Shield

Original Ebay post.

This is a small buzzer for the Sensor Shield. It creates different noises based on the different frequency of I/O toggling. All you need to do is to plug in the buzzer module to sensor shield, and tell the function which pin you’d like to use, the frequency you want to hear, and the duration to play that frequency.

Building interactive work is as easy as piling bricks, just plug it to our Buzzer Module with a buckled cable, and make it looks professional and neat.

Example code to play melody:


int BuzzerPin = 9;
int length = 15; // the number of noteschar notes[] = "ccggaagffeeddc "; // a space represents a rest
int beats[] = { 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 2, 4 };
int tempo = 300;
void playTone(int tone, int duration) {
for (long i = 0; i < duration * 1000L; i += tone * 2) {
digitalWrite(BuzzerPin, HIGH);

delayMicroseconds(tone);

digitalWrite(BuzzerPin, LOW);

delayMicroseconds(tone);

}

}

void playNote(char note, int duration) {

char names[] = { 'c', 'd', 'e', 'f', 'g', 'a', 'b', 'C' };

int tones[] = { 1915, 1700, 1519, 1432, 1275, 1136, 1014, 956 };

// play the tone corresponding to the note name

for (int i = 0; i < 8; i++) {

if (names[i] == note) {

playTone(tones[i], duration);

}

}

}

void setup() {

pinMode(BuzzerPin, OUTPUT);

}

void loop() {

for (int i = 0; i < length; i++) {

if (notes[i] == ' ') {

delay(beats[i] * tempo); // rest

} else {

playNote(notes[i], beats[i] * tempo);

}

// pause between notes

delay(tempo / 2);

}

}

Share and Enjoy:
  • Digg
  • del.icio.us
  • Netvouz
  • DZone
  • ThisNext
  • MisterWong
  • Wists

Leave a Reply

WP Theme & Icons by N.Design Studio
Entries RSS Comments RSS Log in