Dependencies:   4DGL-uLCD-SE SDFileSystem mbed

Fork of vs1011e by Erick Cardenas

Committer:
ecardenas8
Date:
Sat Dec 10 23:20:32 2016 +0000
Revision:
0:8a46c5988d62
Child:
1:9c5643903657
vs1011e code

Who changed what in which revision?

UserRevisionLine numberNew contents of line
ecardenas8 0:8a46c5988d62 1 #include "mbed.h"
ecardenas8 0:8a46c5988d62 2 #include "SDFileSystem.h"
ecardenas8 0:8a46c5988d62 3
ecardenas8 0:8a46c5988d62 4 DigitalOut led1(LED1);
ecardenas8 0:8a46c5988d62 5 DigitalOut led2(LED2);
ecardenas8 0:8a46c5988d62 6 DigitalOut led3(LED3);
ecardenas8 0:8a46c5988d62 7 DigitalOut led4(LED4);
ecardenas8 0:8a46c5988d62 8
ecardenas8 0:8a46c5988d62 9 DigitalIn Dreq(p26);
ecardenas8 0:8a46c5988d62 10 DigitalOut XDCS(p25);
ecardenas8 0:8a46c5988d62 11 DigitalOut reset(p23);
ecardenas8 0:8a46c5988d62 12 DigitalOut XCS(p22);
ecardenas8 0:8a46c5988d62 13
ecardenas8 0:8a46c5988d62 14 SPI mp3Board(p11, p12, p13);
ecardenas8 0:8a46c5988d62 15 SDFileSystem sd(p5, p6, p7, p8, "sd"); //SD card
ecardenas8 0:8a46c5988d62 16
ecardenas8 0:8a46c5988d62 17 int killLoop = 1;
ecardenas8 0:8a46c5988d62 18 int mp3Chunk;
ecardenas8 0:8a46c5988d62 19 int fileSize;
ecardenas8 0:8a46c5988d62 20
ecardenas8 0:8a46c5988d62 21 long getFileSize(FILE *fp) {
ecardenas8 0:8a46c5988d62 22 fseek(fp, 0, SEEK_END);
ecardenas8 0:8a46c5988d62 23 int size = ftell(fp);
ecardenas8 0:8a46c5988d62 24 fseek(fp, 0, SEEK_SET);
ecardenas8 0:8a46c5988d62 25
ecardenas8 0:8a46c5988d62 26 return size;
ecardenas8 0:8a46c5988d62 27 }
ecardenas8 0:8a46c5988d62 28
ecardenas8 0:8a46c5988d62 29 int main() {
ecardenas8 0:8a46c5988d62 30 led1=0;
ecardenas8 0:8a46c5988d62 31 led2=0;
ecardenas8 0:8a46c5988d62 32 led3=0;
ecardenas8 0:8a46c5988d62 33 led4=0;
ecardenas8 0:8a46c5988d62 34
ecardenas8 0:8a46c5988d62 35
ecardenas8 0:8a46c5988d62 36 XCS=1;
ecardenas8 0:8a46c5988d62 37 XCS=0; //pull xcs low to begin sci write. Sets mode to vs1002,
ecardenas8 0:8a46c5988d62 38 mp3Board.write(0x02); //0x02 is the write opcode
ecardenas8 0:8a46c5988d62 39 mp3Board.write(0x00); //0x00 is the address of the sci mode register
ecardenas8 0:8a46c5988d62 40 mp3Board.write(0x0A); //0x0A (11 in dec) is the SM_SDINEW bit
ecardenas8 0:8a46c5988d62 41 XCS=1; //pulled high to end write sequence
ecardenas8 0:8a46c5988d62 42
ecardenas8 0:8a46c5988d62 43 led1=1;
ecardenas8 0:8a46c5988d62 44
ecardenas8 0:8a46c5988d62 45 FILE *mp3_file;
ecardenas8 0:8a46c5988d62 46 //printf("\n\n\nHello, wave world!\n");
ecardenas8 0:8a46c5988d62 47 mp3_file=fopen("/sd/Putties.mp3","rb");
ecardenas8 0:8a46c5988d62 48
ecardenas8 0:8a46c5988d62 49 XDCS = 1;
ecardenas8 0:8a46c5988d62 50 XDCS = 0;
ecardenas8 0:8a46c5988d62 51
ecardenas8 0:8a46c5988d62 52
ecardenas8 0:8a46c5988d62 53 /*
ecardenas8 0:8a46c5988d62 54 fseek(mp3_file, 0, SEEK_END);
ecardenas8 0:8a46c5988d62 55 fileSize=ftell(mp3_file);
ecardenas8 0:8a46c5988d62 56 fseek(mp3_file, 0, SEEK_SET);
ecardenas8 0:8a46c5988d62 57 */
ecardenas8 0:8a46c5988d62 58
ecardenas8 0:8a46c5988d62 59 fileSize=getFileSize(mp3_file);
ecardenas8 0:8a46c5988d62 60
ecardenas8 0:8a46c5988d62 61 led2=1;
ecardenas8 0:8a46c5988d62 62
ecardenas8 0:8a46c5988d62 63 fread(&mp3Chunk, 1, 100, mp3_file);
ecardenas8 0:8a46c5988d62 64 led3=1;
ecardenas8 0:8a46c5988d62 65 mp3Board.write(mp3Chunk);
ecardenas8 0:8a46c5988d62 66
ecardenas8 0:8a46c5988d62 67
ecardenas8 0:8a46c5988d62 68
ecardenas8 0:8a46c5988d62 69 fclose(mp3_file);
ecardenas8 0:8a46c5988d62 70 XDCS=1;
ecardenas8 0:8a46c5988d62 71
ecardenas8 0:8a46c5988d62 72 led4=1;
ecardenas8 0:8a46c5988d62 73
ecardenas8 0:8a46c5988d62 74 }