Dependencies: TextLCD mbed VS1002_controler SDFileSystem
main.cpp@0:1152f41f7f73, 2012-03-14 (annotated)
- Committer:
- nameless129
- Date:
- Wed Mar 14 14:09:26 2012 +0000
- Revision:
- 0:1152f41f7f73
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
nameless129 | 0:1152f41f7f73 | 1 | #include "mbed.h" |
nameless129 | 0:1152f41f7f73 | 2 | #include "VS1002.h" |
nameless129 | 0:1152f41f7f73 | 3 | |
nameless129 | 0:1152f41f7f73 | 4 | /* |
nameless129 | 0:1152f41f7f73 | 5 | VS1002 MP3Player |
nameless129 | 0:1152f41f7f73 | 6 | 2012/03/14 |
nameless129 | 0:1152f41f7f73 | 7 | |
nameless129 | 0:1152f41f7f73 | 8 | このプログラムは以下のURLのソースコードを元に作成しています |
nameless129 | 0:1152f41f7f73 | 9 | http://mbed.org/cookbook/VS1002-MP3-Decoder |
nameless129 | 0:1152f41f7f73 | 10 | |
nameless129 | 0:1152f41f7f73 | 11 | 接続方法 |
nameless129 | 0:1152f41f7f73 | 12 | VS1002 | mbed |
nameless129 | 0:1152f41f7f73 | 13 | --------------------------------------- |
nameless129 | 0:1152f41f7f73 | 14 | D2(BSYNC)------------17 |
nameless129 | 0:1152f41f7f73 | 15 | D3(DREQ)-------------16 |
nameless129 | 0:1152f41f7f73 | 16 | |
nameless129 | 0:1152f41f7f73 | 17 | D9(CS)---------------14 |
nameless129 | 0:1152f41f7f73 | 18 | |
nameless129 | 0:1152f41f7f73 | 19 | D11(MOSI)------------11 |
nameless129 | 0:1152f41f7f73 | 20 | D12(MISO)------------12 |
nameless129 | 0:1152f41f7f73 | 21 | D13(SCK)-------------13 |
nameless129 | 0:1152f41f7f73 | 22 | |
nameless129 | 0:1152f41f7f73 | 23 | GND------------------GND(1) |
nameless129 | 0:1152f41f7f73 | 24 | 5V-------------------VU(39) |
nameless129 | 0:1152f41f7f73 | 25 | RESET----------------15 |
nameless129 | 0:1152f41f7f73 | 26 | |
nameless129 | 0:1152f41f7f73 | 27 | ボリュームはp20の電圧によって制御しますが、Arduino_MP3_Shield_MP3Playerライブラリの |
nameless129 | 0:1152f41f7f73 | 28 | VS1002.hファイル内の#define FIXED_VOLのコメントを外すことによってp20の電圧に関係なく最大の音量となります |
nameless129 | 0:1152f41f7f73 | 29 | */ |
nameless129 | 0:1152f41f7f73 | 30 | |
nameless129 | 0:1152f41f7f73 | 31 | |
nameless129 | 0:1152f41f7f73 | 32 | //PinName mmosi, PinName mmiso, PinName ssck, PinName ccs, const char *name, |
nameless129 | 0:1152f41f7f73 | 33 | // PinName mosi, PinName miso, PinName sck, PinName cs, PinName rst, |
nameless129 | 0:1152f41f7f73 | 34 | // PinName dreq, PinName dcs, PinName vol) |
nameless129 | 0:1152f41f7f73 | 35 | VS1002 mp3(p5, p6, p7, p8, "sd", |
nameless129 | 0:1152f41f7f73 | 36 | p11, p12, p13, p14, p15, |
nameless129 | 0:1152f41f7f73 | 37 | p16, p17, p20); //p14 in BoB non-functional so replace with p18 |
nameless129 | 0:1152f41f7f73 | 38 | |
nameless129 | 0:1152f41f7f73 | 39 | |
nameless129 | 0:1152f41f7f73 | 40 | int main () |
nameless129 | 0:1152f41f7f73 | 41 | { |
nameless129 | 0:1152f41f7f73 | 42 | // make debug port Fast |
nameless129 | 0:1152f41f7f73 | 43 | Serial pc(USBTX, USBRX); |
nameless129 | 0:1152f41f7f73 | 44 | // pc.baud(9600); |
nameless129 | 0:1152f41f7f73 | 45 | pc.baud(115200); |
nameless129 | 0:1152f41f7f73 | 46 | // pc.baud(230400); |
nameless129 | 0:1152f41f7f73 | 47 | printf("Power ON\r\n"); |
nameless129 | 0:1152f41f7f73 | 48 | |
nameless129 | 0:1152f41f7f73 | 49 | /*============================================================ |
nameless129 | 0:1152f41f7f73 | 50 | * MP3 Initialising |
nameless129 | 0:1152f41f7f73 | 51 | *==========================================================*/ |
nameless129 | 0:1152f41f7f73 | 52 | #ifndef FS_ONLY |
nameless129 | 0:1152f41f7f73 | 53 | mp3._RST = 1; |
nameless129 | 0:1152f41f7f73 | 54 | mp3.cs_high(); //chip disabled |
nameless129 | 0:1152f41f7f73 | 55 | mp3.sci_initialise(); //initialise MBED |
nameless129 | 0:1152f41f7f73 | 56 | mp3.sci_write(0x00,(SM_SDINEW+SM_STREAM+SM_DIFF)); |
nameless129 | 0:1152f41f7f73 | 57 | mp3.sci_write(0x03, 0x9800); |
nameless129 | 0:1152f41f7f73 | 58 | mp3.sdi_initialise(); |
nameless129 | 0:1152f41f7f73 | 59 | #endif |
nameless129 | 0:1152f41f7f73 | 60 | /*============================================================ |
nameless129 | 0:1152f41f7f73 | 61 | * This is the good part |
nameless129 | 0:1152f41f7f73 | 62 | *==========================================================*/ |
nameless129 | 0:1152f41f7f73 | 63 | printf("MP3 init OK\r\n"); |
nameless129 | 0:1152f41f7f73 | 64 | |
nameless129 | 0:1152f41f7f73 | 65 | for(int a=1; a<24; a++) |
nameless129 | 0:1152f41f7f73 | 66 | { |
nameless129 | 0:1152f41f7f73 | 67 | printf("Song#:%d\r\n",a); |
nameless129 | 0:1152f41f7f73 | 68 | mp3.play_song(a); |
nameless129 | 0:1152f41f7f73 | 69 | wait(1); |
nameless129 | 0:1152f41f7f73 | 70 | } |
nameless129 | 0:1152f41f7f73 | 71 | printf("Done.\r\n"); |
nameless129 | 0:1152f41f7f73 | 72 | } |