Pablo Clemente
/
blip_playnotes
updated blip_playnotes with notes.h
Fork of blip_playnotes by
main.cpp@4:e80a13a4e8eb, 2015-11-30 (annotated)
- 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?
User | Revision | Line number | New 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 |