Writing to micro SD only.
Dependencies: SDFileSystem mbed
Fork of SDFileSystem_HelloWorld by
main.cpp@2:ee19d6b4dc98, 2017-05-30 (annotated)
- Committer:
- aaaaaYukiaaaaa
- Date:
- Tue May 30 05:01:36 2017 +0000
- Revision:
- 2:ee19d6b4dc98
- Parent:
- 1:3d3fb5f81373
This program is writing to micro SD only.
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
mbed_official | 0:bdbd3d6fc5d5 | 1 | #include "mbed.h" |
mbed_official | 0:bdbd3d6fc5d5 | 2 | #include "SDFileSystem.h" |
mbed_official | 0:bdbd3d6fc5d5 | 3 | |
mbed_official | 0:bdbd3d6fc5d5 | 4 | SDFileSystem sd(p5, p6, p7, p8, "sd"); // the pinout on the mbed Cool Components workshop board |
aaaaaYukiaaaaa | 1:3d3fb5f81373 | 5 | DigitalIn enable(p30); |
aaaaaYukiaaaaa | 1:3d3fb5f81373 | 6 | AnalogIn inpt(p20); |
aaaaaYukiaaaaa | 1:3d3fb5f81373 | 7 | DigitalOut myled(LED1); |
mbed_official | 0:bdbd3d6fc5d5 | 8 | |
aaaaaYukiaaaaa | 2:ee19d6b4dc98 | 9 | void SD(int num, double btry); |
aaaaaYukiaaaaa | 1:3d3fb5f81373 | 10 | |
aaaaaYukiaaaaa | 1:3d3fb5f81373 | 11 | int main() { |
aaaaaYukiaaaaa | 1:3d3fb5f81373 | 12 | float btry_lg = 0; |
aaaaaYukiaaaaa | 1:3d3fb5f81373 | 13 | int nmbr_lg = 0; |
aaaaaYukiaaaaa | 1:3d3fb5f81373 | 14 | |
aaaaaYukiaaaaa | 1:3d3fb5f81373 | 15 | FILE *fp_csv = fopen("/sd/mydir/sdtest.csv", "w"); |
aaaaaYukiaaaaa | 1:3d3fb5f81373 | 16 | if(fp_csv == NULL) { |
mbed_official | 0:bdbd3d6fc5d5 | 17 | error("Could not open file for write\n"); |
mbed_official | 0:bdbd3d6fc5d5 | 18 | } |
aaaaaYukiaaaaa | 1:3d3fb5f81373 | 19 | fprintf(fp_csv, "baterry,number\n"); |
aaaaaYukiaaaaa | 1:3d3fb5f81373 | 20 | fclose(fp_csv); |
aaaaaYukiaaaaa | 1:3d3fb5f81373 | 21 | |
aaaaaYukiaaaaa | 1:3d3fb5f81373 | 22 | |
aaaaaYukiaaaaa | 1:3d3fb5f81373 | 23 | // FILE *fp_txt = fopen("/sd/mydir/sdtest.txt", "a"); |
aaaaaYukiaaaaa | 1:3d3fb5f81373 | 24 | // if(fp_txt == NULL) { |
aaaaaYukiaaaaa | 1:3d3fb5f81373 | 25 | // error("Could not open file for write\n"); |
aaaaaYukiaaaaa | 1:3d3fb5f81373 | 26 | // } |
aaaaaYukiaaaaa | 1:3d3fb5f81373 | 27 | // fclose(fp_txt); |
aaaaaYukiaaaaa | 1:3d3fb5f81373 | 28 | |
aaaaaYukiaaaaa | 1:3d3fb5f81373 | 29 | |
aaaaaYukiaaaaa | 1:3d3fb5f81373 | 30 | while(1){ |
aaaaaYukiaaaaa | 1:3d3fb5f81373 | 31 | // test the voltage on the initialized analog pin |
aaaaaYukiaaaaa | 1:3d3fb5f81373 | 32 | // and if greater than 0.3 * VCC set the digital pin |
aaaaaYukiaaaaa | 1:3d3fb5f81373 | 33 | // to a logic 1 otherwise a logic 0 |
aaaaaYukiaaaaa | 1:3d3fb5f81373 | 34 | btry_lg = inpt.read()*3.3; |
aaaaaYukiaaaaa | 1:3d3fb5f81373 | 35 | |
aaaaaYukiaaaaa | 1:3d3fb5f81373 | 36 | //if(ain > 0.3f) { |
aaaaaYukiaaaaa | 1:3d3fb5f81373 | 37 | |
aaaaaYukiaaaaa | 1:3d3fb5f81373 | 38 | //} else { |
aaaaaYukiaaaaa | 1:3d3fb5f81373 | 39 | |
aaaaaYukiaaaaa | 1:3d3fb5f81373 | 40 | //} |
aaaaaYukiaaaaa | 1:3d3fb5f81373 | 41 | |
aaaaaYukiaaaaa | 1:3d3fb5f81373 | 42 | // print the percentage and 16 bit normalized values |
aaaaaYukiaaaaa | 1:3d3fb5f81373 | 43 | //printf("percentage: %3.3f%%\n", ain.read()*100.0f); |
aaaaaYukiaaaaa | 1:3d3fb5f81373 | 44 | //printf("normalized: 0x%04X \n", ain.read_u16()); |
aaaaaYukiaaaaa | 1:3d3fb5f81373 | 45 | //wait(0.2f); |
aaaaaYukiaaaaa | 1:3d3fb5f81373 | 46 | |
aaaaaYukiaaaaa | 1:3d3fb5f81373 | 47 | nmbr_lg++; |
aaaaaYukiaaaaa | 1:3d3fb5f81373 | 48 | SD(nmbr_lg, btry_lg); |
aaaaaYukiaaaaa | 1:3d3fb5f81373 | 49 | |
aaaaaYukiaaaaa | 1:3d3fb5f81373 | 50 | wait(0.1); |
aaaaaYukiaaaaa | 1:3d3fb5f81373 | 51 | } |
mbed_official | 0:bdbd3d6fc5d5 | 52 | } |
aaaaaYukiaaaaa | 2:ee19d6b4dc98 | 53 | |
aaaaaYukiaaaaa | 2:ee19d6b4dc98 | 54 | void SD(int num, double btry){ |
aaaaaYukiaaaaa | 2:ee19d6b4dc98 | 55 | myled = 1; |
aaaaaYukiaaaaa | 2:ee19d6b4dc98 | 56 | |
aaaaaYukiaaaaa | 2:ee19d6b4dc98 | 57 | printf("Hello World!\n"); |
aaaaaYukiaaaaa | 2:ee19d6b4dc98 | 58 | |
aaaaaYukiaaaaa | 2:ee19d6b4dc98 | 59 | mkdir("/sd/mydir", 0777); |
aaaaaYukiaaaaa | 2:ee19d6b4dc98 | 60 | |
aaaaaYukiaaaaa | 2:ee19d6b4dc98 | 61 | FILE *fp_csv = fopen("/sd/mydir/sdtest.csv", "a"); |
aaaaaYukiaaaaa | 2:ee19d6b4dc98 | 62 | if(fp_csv == NULL) { |
aaaaaYukiaaaaa | 2:ee19d6b4dc98 | 63 | error("Could not open file for write\n"); |
aaaaaYukiaaaaa | 2:ee19d6b4dc98 | 64 | } |
aaaaaYukiaaaaa | 2:ee19d6b4dc98 | 65 | |
aaaaaYukiaaaaa | 2:ee19d6b4dc98 | 66 | fprintf(fp_csv, "%f,%f\n", btry, (float)num); |
aaaaaYukiaaaaa | 2:ee19d6b4dc98 | 67 | |
aaaaaYukiaaaaa | 2:ee19d6b4dc98 | 68 | fclose(fp_csv); |
aaaaaYukiaaaaa | 2:ee19d6b4dc98 | 69 | |
aaaaaYukiaaaaa | 2:ee19d6b4dc98 | 70 | ///////////////// |
aaaaaYukiaaaaa | 2:ee19d6b4dc98 | 71 | |
aaaaaYukiaaaaa | 2:ee19d6b4dc98 | 72 | // FILE *fp_txt = fopen("/sd/mydir/sdtest.txt", "a"); |
aaaaaYukiaaaaa | 2:ee19d6b4dc98 | 73 | // if(fp_txt == NULL) { |
aaaaaYukiaaaaa | 2:ee19d6b4dc98 | 74 | // error("Could not open file for write\n"); |
aaaaaYukiaaaaa | 2:ee19d6b4dc98 | 75 | // } |
aaaaaYukiaaaaa | 2:ee19d6b4dc98 | 76 | // fprintf(fp_txt, "Hello fun SD Card World!\n"); |
aaaaaYukiaaaaa | 2:ee19d6b4dc98 | 77 | // fprintf(fp_txt, "Hello fun SD Card World!\n"); |
aaaaaYukiaaaaa | 2:ee19d6b4dc98 | 78 | // fprintf(fp_txt, "%f,%f\n", btry, (float)num); |
aaaaaYukiaaaaa | 2:ee19d6b4dc98 | 79 | // |
aaaaaYukiaaaaa | 2:ee19d6b4dc98 | 80 | // fclose(fp_txt); |
aaaaaYukiaaaaa | 2:ee19d6b4dc98 | 81 | |
aaaaaYukiaaaaa | 2:ee19d6b4dc98 | 82 | |
aaaaaYukiaaaaa | 2:ee19d6b4dc98 | 83 | printf("Goodbye World!\n"); |
aaaaaYukiaaaaa | 2:ee19d6b4dc98 | 84 | myled = 0; |
aaaaaYukiaaaaa | 2:ee19d6b4dc98 | 85 | } |