Big Mouth Billy Bass player that takes raw wavefiles and decision list text files from an SD card
Dependencies: SDFileSystem mbed BillyBass
billybass.hpp
- Committer:
- bikeNomad
- Date:
- 2013-06-15
- Revision:
- 5:5b846ef42702
- Child:
- 6:e90a12ca056f
File content as of revision 5:5b846ef42702:
#ifndef __included_billybass_hpp #define __included_billybass_hpp #include "mbed.h" #include "SDFileSystem.h" #include <list> #include <cmath> struct Song; #define SD_NAME "sd" #define SD_ROOT "/" SD_NAME #define BASS_DIRECTORY SD_ROOT "/SD_Files" typedef int16_t Sample_t; // 16-bit raw, LE samples const size_t BUFFER_SIZE = 512; const float SAMPLE_RATE_HZ = 8000.0; #define MAX_BASENAME_LENGTH 30 #define MAX_ACTION_LINE_LENGTH 100 #define SERIAL_BAUD 115200 const unsigned SAMPLE_PERIOD_USEC = (unsigned)(1.0e6/SAMPLE_RATE_HZ); const size_t SAMPLES_PER_BUFFER = BUFFER_SIZE / sizeof(Sample_t); const float SECONDS_PER_CHUNK = SAMPLES_PER_BUFFER / SAMPLE_RATE_HZ; extern DigitalOut tail; // J3/2 extern DigitalOut mouth; // J3/1 extern DigitalOut head; // J3/3 extern DigitalIn pushbutton; // J3/4 extern PwmOut redLED; extern PwmOut greenLED; extern PwmOut blueLED; extern AnalogOut speaker; // J10/11 extern SDFileSystem sd; extern Serial pc; extern std::list<Song> songs; #endif