Xiaoyuan Yu / Mbed 2 deprecated Ex_FileSystem

Dependencies:   SDFileSystem mbed

Fork of wmx_laser by w mx

Committer:
Dennis_Yu
Date:
Fri Sep 07 13:06:09 2018 +0000
Revision:
8:edb685e9d93e
Parent:
6:48c44bebe8fb
Child:
10:40d607be2e87
to write a file and read one

Who changed what in which revision?

UserRevisionLine numberNew contents of line
zhangyx 0:1170747a672f 1 #include "mbed.h"
zhangyx 4:ae6f380a5b41 2 #include <math.h>
zhangyx 4:ae6f380a5b41 3 #include <cstring>
zhangyx 4:ae6f380a5b41 4 #include <stdlib.h>
zhangyx 4:ae6f380a5b41 5 #include "SDFileSystem.h"
zhangyx 0:1170747a672f 6
zhangyx 4:ae6f380a5b41 7 Serial pc(PA_9, PA_10);
Dennis_Yu 8:edb685e9d93e 8 //Serial serial(PA_2, PA_3);
zhangyx 4:ae6f380a5b41 9
Dennis_Yu 8:edb685e9d93e 10 char fileName[64];
Dennis_Yu 8:edb685e9d93e 11 char buff[1024];
Dennis_Yu 8:edb685e9d93e 12
Dennis_Yu 8:edb685e9d93e 13 FILE * fp_open;
Dennis_Yu 8:edb685e9d93e 14
zhangyx 4:ae6f380a5b41 15 // mosi, miso, sclk, cs, name
zhangyx 4:ae6f380a5b41 16 SDFileSystem sd(PB_15, PB_14, PB_13, PB_12, "sd");
zhangyx 4:ae6f380a5b41 17
Dennis_Yu 8:edb685e9d93e 18 void getFileName ()
zhangyx 4:ae6f380a5b41 19 {
Dennis_Yu 8:edb685e9d93e 20 pc.printf("type in a file name:\r\n");
Dennis_Yu 8:edb685e9d93e 21 pc.scanf("%s", fileName);
Dennis_Yu 8:edb685e9d93e 22 pc.printf("got file name:%s\r\n", fileName);
zhangyx 4:ae6f380a5b41 23 }
zhangyx 4:ae6f380a5b41 24
Dennis_Yu 8:edb685e9d93e 25 void readFile(char * name)
zhangyx 4:ae6f380a5b41 26 {
Dennis_Yu 8:edb685e9d93e 27 fp_open = fopen(name, "r");
Dennis_Yu 8:edb685e9d93e 28 pc.printf("reading\r\n");
Dennis_Yu 8:edb685e9d93e 29 for (int i = 0; fscanf(fp_open, "(%s)", buff) == 1; i++)
Dennis_Yu 8:edb685e9d93e 30 {
Dennis_Yu 8:edb685e9d93e 31 pc.printf("(%s)\r\n", buff);
zhangyx 4:ae6f380a5b41 32 }
Dennis_Yu 8:edb685e9d93e 33 pc.printf("read done.\r\n");
zhangyx 4:ae6f380a5b41 34 }
zhangyx 4:ae6f380a5b41 35
Dennis_Yu 8:edb685e9d93e 36 void writeFile(char * name)
zhangyx 4:ae6f380a5b41 37 {
Dennis_Yu 8:edb685e9d93e 38 int a = 0,
Dennis_Yu 8:edb685e9d93e 39 b = 0,
Dennis_Yu 8:edb685e9d93e 40 c = 0;
Dennis_Yu 8:edb685e9d93e 41 fp_open = fopen(name, "w");
Dennis_Yu 8:edb685e9d93e 42 pc.printf("writing\r\n");
Dennis_Yu 8:edb685e9d93e 43 pc.printf("type in data(use '0 0 0' to end)\r\n");
Dennis_Yu 8:edb685e9d93e 44 while(1)
Dennis_Yu 8:edb685e9d93e 45 {
Dennis_Yu 8:edb685e9d93e 46 pc.scanf("%d %d %d", &a, &b, &c);
Dennis_Yu 8:edb685e9d93e 47 if (a == 0 && b == 0 && c == 0)
Dennis_Yu 8:edb685e9d93e 48 break;
Dennis_Yu 8:edb685e9d93e 49 else
Dennis_Yu 8:edb685e9d93e 50 {
Dennis_Yu 8:edb685e9d93e 51 pc.printf("writing data: (%d,%d,%d)\r\n", a, b, c);
Dennis_Yu 8:edb685e9d93e 52 fprintf(fp_open, "(%d,%d,%d)", a, b, c);
zhangyx 4:ae6f380a5b41 53 }
zhangyx 4:ae6f380a5b41 54 }
Dennis_Yu 8:edb685e9d93e 55 fclose(fp_open);
Dennis_Yu 8:edb685e9d93e 56 pc.printf("write done.\r\n");
zhangyx 0:1170747a672f 57 }
zhangyx 2:a50b794b8ede 58
Dennis_Yu 8:edb685e9d93e 59 int main ()
zhangyx 4:ae6f380a5b41 60 {
Dennis_Yu 8:edb685e9d93e 61 pc.baud(115200);
Dennis_Yu 8:edb685e9d93e 62 pc.printf("hello\r\n");
Dennis_Yu 8:edb685e9d93e 63 getFileName();
Dennis_Yu 8:edb685e9d93e 64 writeFile(fileName);
Dennis_Yu 8:edb685e9d93e 65 readFile(fileName);
zhangyx 0:1170747a672f 66 }