エレキジャック Web版 mbedで初めてのマイコン開発 メモリカードを使ったデータの読み書き<2/3> 音符データをSDから読み込んで音楽を鳴らすプログラムです。 音楽データはエレキジャックのサイトに置いてあります。 music.txt http://www.eleki-jack.com/arm/2010/12/mbed-6.html

Dependencies:   TextLCD mbed SDFileSystem

Committer:
sunifu
Date:
Fri Feb 04 15:09:01 2011 +0000
Revision:
0:f0cd2b9de695

        

Who changed what in which revision?

UserRevisionLine numberNew contents of line
sunifu 0:f0cd2b9de695 1 #include "mbed.h"
sunifu 0:f0cd2b9de695 2 #include "TextLCD.h"
sunifu 0:f0cd2b9de695 3 #include "SDFileSystem.h"
sunifu 0:f0cd2b9de695 4 #include "MySound.h"
sunifu 0:f0cd2b9de695 5
sunifu 0:f0cd2b9de695 6 TextLCD lcd(p24, p26, p27, p28, p29, p30);
sunifu 0:f0cd2b9de695 7 SDFileSystem sd(p5, p6, p7, p8, "sd") ;
sunifu 0:f0cd2b9de695 8 MySound music(p21) ;
sunifu 0:f0cd2b9de695 9
sunifu 0:f0cd2b9de695 10
sunifu 0:f0cd2b9de695 11 int main() {
sunifu 0:f0cd2b9de695 12 char pitch ;
sunifu 0:f0cd2b9de695 13 int scale;
sunifu 0:f0cd2b9de695 14 char ln;
sunifu 0:f0cd2b9de695 15 FILE *fp;
sunifu 0:f0cd2b9de695 16 int n;
sunifu 0:f0cd2b9de695 17
sunifu 0:f0cd2b9de695 18 if ( (fp = fopen("/sd/music.txt","r")) == NULL ) {
sunifu 0:f0cd2b9de695 19 printf("Open Failed. \n") ;
sunifu 0:f0cd2b9de695 20 return -1;
sunifu 0:f0cd2b9de695 21 }
sunifu 0:f0cd2b9de695 22 lcd.printf("Silent Night");
sunifu 0:f0cd2b9de695 23
sunifu 0:f0cd2b9de695 24 while( (n = fscanf(fp,"%c %d %c ",&pitch,&scale,&ln)) != EOF ){
sunifu 0:f0cd2b9de695 25 printf("%d %c %d %c\n",n,pitch,scale,ln);
sunifu 0:f0cd2b9de695 26 music.play(pitch, scale, ln) ;
sunifu 0:f0cd2b9de695 27 }
sunifu 0:f0cd2b9de695 28
sunifu 0:f0cd2b9de695 29 fclose(fp) ;
sunifu 0:f0cd2b9de695 30 }