int buzzerPin = 8; int tempo = 200; char notes[] = "eeeeeeegcde fffffeeeeddedg"; int duration[] = {1, 1, 2, 1, 1, 2, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2}; void playTheShit(char note, int duration) { char notesName[] = { 'c', 'd', 'e', 'f', 'g' }; int tones[] = { 261, 293, 329, 349, 392 }; for (int i = 0; i < sizeof(tones); i++) { // Bind the note took from the char array to the array notesName if (note == notesName[i]) { // Bind the notesName to tones tone(buzzerPin, tones[i], duration); } } } void setup() { pinMode(buzzerPin, OUTPUT); } void loop() { // Scan each char from "notes" for (int i = 0; i < sizeof(notes)-1; i++) { if (notes[i] == ' ') { // If find a space it rests delay(duration[i] * tempo); } else { playTheShit(notes[i], duration[i] * tempo); } // Pauses between notes delay((tempo*2)*duration[i]); } }