Piezo Exercise | 6 emotions
Produced 6 emotions to portray Hello, Goodbye, Leaving, Sad, Dead and Thank you.#include "pitches.h" //Goodbye int melody[] = { NOTE_E4, NOTE_E4, NOTE_E4, NOTE_E4,NOTE_D8, NOTE_D8,0}; // note durations: 4 = quarter note, 8 = eighth note, etc.: int noteDurations[] = { // 4, 8, 8, 4,4,4,4,4 }; 4, 4,4,4,8,8,4 }; //hello int melody[] = { NOTE_D8, NOTE_D8, NOTE_A7, NOTE_D8,NOTE_D8, NOTE_D8,0}; // note durations: 4 = quarter note, 8 = eighth note, etc.: int noteDurations[] = { // 4, 8, 8, 4,4,4,4,4 }; 8, 8,8,4,8,8,4 }; //leaving int melody[] = { NOTE_C4, NOTE_G1,NOTE_G1, NOTE_A3, NOTE_G3,0}; // note durations: 4 = quarter note, 8 = eighth note, etc.: int noteDurations[] = { // 4, 8, 8, 4,4,4,4,4 }; 8, 4,4,8,8,4 }; //Thank you int melody[] = { NOTE_F4, NOTE_A4,NOTE_F4, NOTE_A4, NOTE_F4,0}; // note durations: 4 = quarter note, 8 = eighth note, etc.: int noteDurations[] = { // 4, 8, 8, 4,4,4,4,4 }; 4, 4,4,4,8,8 }; //sad int melody[] = { NOTE_D1, NOTE_D1,NOTE_D1, NOTE_A1, NOTE_D1,NOTE_D1,0}; // note durations: 4 = quarter note, 8 = eighth note, etc.: int noteDurations[] = { // 4, 8, 8, 4,4,4,4,4 }; 8, 8,8,4,8,8,4 }; //Dead: int melody[] = { NOTE_G1, NOTE_G1,NOTE_G1, NOTE_G1, NOTE_C1,0}; // note durations: 4 = quarter note, 8 = eighth note, etc.: int noteDurations[] = { // 4, 8, 8, 4,4,4,4,4 }; 4, 4,4,4,8,8 }; void setup() { // iterate over the notes of the melody: for (int thisNote = 0; thisNote < 8; thisNote++) { // to calculate the note duration, take one second // divided by the note type. //e.g. quarter note = 1000 / 4, eighth note = 1000/8, etc. int noteDuration = 1000/noteDurations[thisNote]; tone(8, melody[thisNote],noteDuration); // to distinguish the notes, set a minimum time between them. // the note's duration + 30% seems to work well: int pauseBetweenNotes = noteDuration * 1.30; delay(pauseBetweenNotes); // stop the tone playing: noTone(8); } } void loop() { // no need to repeat the melody. } <code>
Reply