Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
Using a Piezo Element and Arduino, you can play jingle bells using this code sample.
int speakerPin = 5;
int length = 26;
char notes[] = "eeeeeeegcde fffffeeeeddedg";
int beats[] = { 1, 1, 2, 1, 1, 2, 1, 1, 1, 1, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2};
int tempo = 300;
void playTone(int tone, int duration) {
for (long i = 0; i < duration * 1000L; i += tone * 2) {
digitalWrite(speakerPin, HIGH);
delayMicroseconds(tone);
digitalWrite(speakerPin, 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(speakerPin, 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);
}
}
@jemoeder123456

This comment has been minimized.

Copy link

jemoeder123456 commented Feb 26, 2018

Ha noob

@GangsterRapper3000

This comment has been minimized.

Copy link

GangsterRapper3000 commented Apr 25, 2018

this shit works! Thanks!
Ha Noob

@GangsterRapper3000

This comment has been minimized.

Copy link

GangsterRapper3000 commented Apr 25, 2018

I love your posts

@GangsterRapper3000

This comment has been minimized.

Copy link

GangsterRapper3000 commented Apr 25, 2018

you dirty little basterd

@GangsterRapper3000

This comment has been minimized.

Copy link

GangsterRapper3000 commented Apr 25, 2018

suck your mom

@GangsterRapper3000

This comment has been minimized.

Copy link

GangsterRapper3000 commented Apr 25, 2018

lol

@GangsterRapper3000

This comment has been minimized.

Copy link

GangsterRapper3000 commented Apr 25, 2018

edison picklerick

@shrekster2

This comment has been minimized.

Copy link

shrekster2 commented Jun 26, 2018

Nice! Idk what those people are talking about

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.