Music Player for LPC1768 and MAPLE Board
Dependencies: SDFileSystem mbed
Diff: main.cpp
- Revision:
- 0:b347ed8fee7f
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/main.cpp Mon Feb 03 08:58:23 2014 +0000 @@ -0,0 +1,44 @@ +#include "mbed.h" +#include "SDFileSystem.h" +#include "wave_player.h" + +#include <iostream> +#include <vector> +#include <string> + +SDFileSystem sd(p5, p6, p7, p20, "sd"); //SD card Slot +AnalogOut DACout(p18); //Analog Output +PwmOut sounder(p26); //PWM Sounder Output +wave_player waver(&DACout, &sounder); //wave player object + +int main() { + string DIRPATH("/sd/Music"); + DIR *dir; + struct dirent *entry; + FILE *wave_file; + vector<string> file_list; + int num_file,i; + string file_name; + + dir = opendir(DIRPATH.c_str()); + if ( dir != NULL ) { + while ( (entry = readdir(dir)) != NULL ) { + file_list.push_back(entry -> d_name); + } + num_file = file_list.size(); + for(i = 0; i < num_file; i++){ + std::cout << "File No." << i + 1 << " " << file_list[i] << std::endl; + } + sounder.period(1.0/400000.0); + while(1){ + std::cout << "Input File Number:"; + std::cin >> i; + file_name = file_name.erase() + DIRPATH + "/" +file_list[i-1]; + wave_file=fopen(file_name.c_str(),"r"); + waver.play(wave_file); + fclose(wave_file); + } + } + closedir(dir); + return 0; +} \ No newline at end of file