mbeduino MP3 Sheild player MP3 player that runs on mebeduin with MP3 Shield. Regarding mbeduino, refer to: http://mbed.org/users/okini3939/notebook/mbeduino/ Regarding MP3 Shiled, refer to: http://www.sparkfun.com/commerce/product_info.php?products_id=9736

Dependencies:   mbed SDFileSystem

Committer:
xshige
Date:
Tue Oct 12 14:11:52 2010 +0000
Revision:
0:67cb2f650c15
Child:
1:c47269f0e9e1

        

Who changed what in which revision?

UserRevisionLine numberNew contents of line
xshige 0:67cb2f650c15 1 #ifndef VS1053_H
xshige 0:67cb2f650c15 2 #define VS1053_H
xshige 0:67cb2f650c15 3
xshige 0:67cb2f650c15 4 #define FIXED_VOL
xshige 0:67cb2f650c15 5
xshige 0:67cb2f650c15 6 #include "mbed.h"
xshige 0:67cb2f650c15 7 //#include "SDFileSystem.h"
xshige 0:67cb2f650c15 8 #include "string"
xshige 0:67cb2f650c15 9 #include "string.h"
xshige 0:67cb2f650c15 10
xshige 0:67cb2f650c15 11 //SCI_MODE register bits as of p.38 of the datasheet
xshige 0:67cb2f650c15 12 #define SM_DIFF 0x0001
xshige 0:67cb2f650c15 13 #define SM_LAYER12 0x0002
xshige 0:67cb2f650c15 14 #define SM_RESET 0x0004
xshige 0:67cb2f650c15 15 #define SM_CANCEL 0x0008
xshige 0:67cb2f650c15 16 #define SM_EARSPEAKER_LO 0x0010
xshige 0:67cb2f650c15 17 #define SM_TESTS 0x0020
xshige 0:67cb2f650c15 18 #define SM_STREAM 0x0040
xshige 0:67cb2f650c15 19 #define SM_EARSPEAKER_HI 0x0080
xshige 0:67cb2f650c15 20 #define SM_DACT 0x0100
xshige 0:67cb2f650c15 21 #define SM_SDIORD 0x0200
xshige 0:67cb2f650c15 22 #define SM_SDISHARE 0x0400
xshige 0:67cb2f650c15 23 #define SM_SDINEW 0x0800
xshige 0:67cb2f650c15 24 #define SM_ADPCM 0x1000
xshige 0:67cb2f650c15 25 #define SM_B13 0x2000
xshige 0:67cb2f650c15 26 #define SM_LINE1 0x4000
xshige 0:67cb2f650c15 27 #define SM_CLK_RANGE 0x8000
xshige 0:67cb2f650c15 28
xshige 0:67cb2f650c15 29 class VS1053 {
xshige 0:67cb2f650c15 30
xshige 0:67cb2f650c15 31 public:
xshige 0:67cb2f650c15 32 VS1053(
xshige 0:67cb2f650c15 33 //PinName _mmosi, PinName _mmiso, PinName _ssck, PinName _ccs, const char* _name,
xshige 0:67cb2f650c15 34 PinName _mosi, PinName _miso, PinName _sck, PinName _cs, PinName _rst, PinName _dreq,
xshige 0:67cb2f650c15 35 PinName _dcs, PinName _vol);
xshige 0:67cb2f650c15 36
xshige 0:67cb2f650c15 37 void cs_low(void);
xshige 0:67cb2f650c15 38 void cs_high(void);
xshige 0:67cb2f650c15 39 void dcs_low(void);
xshige 0:67cb2f650c15 40 void dcs_high(void);
xshige 0:67cb2f650c15 41 void sci_en(void);
xshige 0:67cb2f650c15 42 void sci_dis(void);
xshige 0:67cb2f650c15 43 void sdi_en(void);
xshige 0:67cb2f650c15 44 void sdi_dis(void);
xshige 0:67cb2f650c15 45
xshige 0:67cb2f650c15 46 void sci_initialise(void);
xshige 0:67cb2f650c15 47 void sdi_initialise(void);
xshige 0:67cb2f650c15 48 void reset(void);
xshige 0:67cb2f650c15 49 void power_down(void);
xshige 0:67cb2f650c15 50
xshige 0:67cb2f650c15 51 void sci_write(unsigned char, unsigned short int);
xshige 0:67cb2f650c15 52 void sdi_write(unsigned char);
xshige 0:67cb2f650c15 53 unsigned short int read(unsigned short int);
xshige 0:67cb2f650c15 54 void sine_test_activate(unsigned char);
xshige 0:67cb2f650c15 55 void volume(void);
xshige 0:67cb2f650c15 56 void sine_test_deactivate(void);
xshige 0:67cb2f650c15 57 void writeStream(unsigned char *, int);
xshige 0:67cb2f650c15 58 #if 0
xshige 0:67cb2f650c15 59 void putcStream(unsigned char);
xshige 0:67cb2f650c15 60 #endif
xshige 0:67cb2f650c15 61 void terminateStream(void);
xshige 0:67cb2f650c15 62
xshige 0:67cb2f650c15 63 DigitalIn _DREQ;
xshige 0:67cb2f650c15 64 DigitalOut _RST;
xshige 0:67cb2f650c15 65 AnalogIn _VOL;
xshige 0:67cb2f650c15 66
xshige 0:67cb2f650c15 67 protected:
xshige 0:67cb2f650c15 68 SPI _spi;
xshige 0:67cb2f650c15 69 DigitalOut _CS;
xshige 0:67cb2f650c15 70 DigitalOut _DCS;
xshige 0:67cb2f650c15 71
xshige 0:67cb2f650c15 72 };
xshige 0:67cb2f650c15 73 #endif