updated blip_playnotes with notes.h

Dependencies:   mbed

Fork of blip_playnotes by Alberto Piganti

Committer:
paclema
Date:
Mon Nov 30 11:10:51 2015 +0000
Revision:
4:e80a13a4e8eb
Parent:
3:a6355b9de221
updated playnotes program

Who changed what in which revision?

UserRevisionLine numberNew contents of line
pighixxx 2:85d8ce475baa 1 // miniblip play notes with interrupts - Not tested with led matrix
pighixxx 2:85d8ce475baa 2 // For documentation see http://mbed.org/users/4180_1/notebook/using-a-speaker-for-audio-output/
pighixxx 2:85d8ce475baa 3
4180_1 0:b2fdf3770282 4 #include "mbed.h"
4180_1 1:2e6ea42675c7 5 #include "SongPlayer.h"
paclema 3:a6355b9de221 6 #include "notes.h"
paclema 3:a6355b9de221 7
4180_1 0:b2fdf3770282 8
4180_1 1:2e6ea42675c7 9 //Set up notes and durations for sample song to play
4180_1 1:2e6ea42675c7 10 // A 0.0 duration note at end terminates song play
4180_1 1:2e6ea42675c7 11 float note[18]= {1568.0,1396.9,1244.5,1244.5,1396.9,1568.0,1568.0,1568.0,1396.9,
4180_1 1:2e6ea42675c7 12 1244.5,1396.9,1568.0,1396.9,1244.5,1174.7,1244.5,1244.5, 0.0
4180_1 1:2e6ea42675c7 13 };
paclema 4:e80a13a4e8eb 14 float duration[32]= {0.48,0.24,0.72,0.48,0.24,0.48,0.24,0.24,0.24,
paclema 4:e80a13a4e8eb 15 0.24,0.24,0.24,0.24,0.48,0.24,0.48,0.48, 0.0,
paclema 4:e80a13a4e8eb 16 0.48,0.24,0.72,0.48,0.24,0.48,0.24,0.24,0.24,
paclema 4:e80a13a4e8eb 17 0.24,0.24,0.24
4180_1 1:2e6ea42675c7 18 };
4180_1 1:2e6ea42675c7 19
paclema 3:a6355b9de221 20
paclema 3:a6355b9de221 21 //Mario main theme melody
paclema 4:e80a13a4e8eb 22 float melody[32] = {
paclema 3:a6355b9de221 23 NOTE_E7, NOTE_E7, 0, NOTE_E7,
paclema 3:a6355b9de221 24 0, NOTE_C7, NOTE_E7, 0,
paclema 3:a6355b9de221 25 NOTE_G7, 0, 0, 0,
paclema 3:a6355b9de221 26 NOTE_G6, 0, 0, 0,
paclema 3:a6355b9de221 27
paclema 3:a6355b9de221 28 };
paclema 3:a6355b9de221 29 //Mario main them tempo
paclema 4:e80a13a4e8eb 30 float tempo[] = {
paclema 3:a6355b9de221 31 12, 12, 12, 12,
paclema 3:a6355b9de221 32 12, 12, 12, 12,
paclema 3:a6355b9de221 33 12, 12, 12, 12,
paclema 3:a6355b9de221 34 12, 12, 12, 12,
paclema 3:a6355b9de221 35
paclema 3:a6355b9de221 36 12, 12, 12, 12,
paclema 3:a6355b9de221 37 12, 12, 12, 12,
paclema 3:a6355b9de221 38 12, 12, 12, 12,
paclema 3:a6355b9de221 39 12, 12, 12, 12,
paclema 3:a6355b9de221 40
paclema 3:a6355b9de221 41 9, 9, 9,
paclema 3:a6355b9de221 42 12, 12, 12, 12,
paclema 3:a6355b9de221 43 12, 12, 12, 12,
paclema 3:a6355b9de221 44 12, 12, 12, 12,
paclema 3:a6355b9de221 45
paclema 3:a6355b9de221 46 12, 12, 12, 12,
paclema 3:a6355b9de221 47 12, 12, 12, 12,
paclema 3:a6355b9de221 48 12, 12, 12, 12,
paclema 3:a6355b9de221 49 12, 12, 12, 12,
paclema 3:a6355b9de221 50
paclema 3:a6355b9de221 51 9, 9, 9,
paclema 3:a6355b9de221 52 12, 12, 12, 12,
paclema 3:a6355b9de221 53 12, 12, 12, 12,
paclema 3:a6355b9de221 54 12, 12, 12, 12,
paclema 3:a6355b9de221 55 };
paclema 3:a6355b9de221 56
paclema 3:a6355b9de221 57
4180_1 0:b2fdf3770282 58 int main()
4180_1 0:b2fdf3770282 59 {
pighixxx 2:85d8ce475baa 60 // Buzzer pin
pighixxx 2:85d8ce475baa 61 SongPlayer mySpeaker(P0_8);
pighixxx 2:85d8ce475baa 62 // Start song and return once playing starts
paclema 3:a6355b9de221 63 //mySpeaker.PlaySong(note,duration);
paclema 3:a6355b9de221 64
paclema 4:e80a13a4e8eb 65 mySpeaker.PlaySong(melody,duration);
paclema 3:a6355b9de221 66
4180_1 1:2e6ea42675c7 67 // loops forever while song continues to play to end using interrupts
4180_1 0:b2fdf3770282 68 while(1) {
4180_1 1:2e6ea42675c7 69 wait(.1);
4180_1 0:b2fdf3770282 70 }
4180_1 0:b2fdf3770282 71 }
4180_1 1:2e6ea42675c7 72