Input file name type .csv and use local file system to store data taken from 4 ADC inputs.

Dependencies:   mbed

Fork of LocalFileSystem_HelloWorld by mbed official

Committer:
cvitas
Date:
Wed Oct 16 18:14:15 2013 +0000
Revision:
1:b71192bf4318
Parent:
0:cc465aef98cf
First time ever published

Who changed what in which revision?

UserRevisionLine numberNew contents of line
mbed_official 0:cc465aef98cf 1 #include "mbed.h"
cvitas 1:b71192bf4318 2
mbed_official 0:cc465aef98cf 3 LocalFileSystem local("local"); // Create the local filesystem under the name "local"
cvitas 1:b71192bf4318 4 DigitalOut myled(LED1);
cvitas 1:b71192bf4318 5 AnalogIn AinSensA(p17);
cvitas 1:b71192bf4318 6 AnalogIn AinSensB(p18);
cvitas 1:b71192bf4318 7 AnalogIn AinSensC(p19);
cvitas 1:b71192bf4318 8 AnalogIn AinSensD(p20);
cvitas 1:b71192bf4318 9
cvitas 1:b71192bf4318 10 Serial pc(USBTX, USBRX); // comms to host PC
cvitas 1:b71192bf4318 11 int ADCdata1, ADCdata2, ADCdata3, ADCdata4;
cvitas 1:b71192bf4318 12 char ime[20];
cvitas 1:b71192bf4318 13 char staza[20];
cvitas 1:b71192bf4318 14 char ekstenzija[20];
cvitas 1:b71192bf4318 15 int mjeri;
cvitas 1:b71192bf4318 16 int i=0;
cvitas 1:b71192bf4318 17
cvitas 1:b71192bf4318 18 int main()
cvitas 1:b71192bf4318 19 {
cvitas 1:b71192bf4318 20 while (1){
cvitas 1:b71192bf4318 21 pc.printf("\n\rUpisi ime datoteke\n\r");
cvitas 1:b71192bf4318 22 pc.scanf( " %s", ime);
cvitas 1:b71192bf4318 23 pc.printf("\n\rDatoteka je %s\n\r",ime);
cvitas 1:b71192bf4318 24
cvitas 1:b71192bf4318 25 strcpy(staza, "/local/");
cvitas 1:b71192bf4318 26 strcpy(ekstenzija, ".csv");
cvitas 1:b71192bf4318 27
cvitas 1:b71192bf4318 28 strcat(staza,ime);
cvitas 1:b71192bf4318 29 strcat(staza,ekstenzija);
cvitas 1:b71192bf4318 30 //pc.printf("\n\rOdrediste je %s\n\r",staza);
cvitas 1:b71192bf4318 31 mjeri=1;
cvitas 1:b71192bf4318 32 i=0;
cvitas 1:b71192bf4318 33
cvitas 1:b71192bf4318 34 FILE *fp = fopen(staza, "w"); // Open "xxx.cvs" on the local file system for writing
cvitas 1:b71192bf4318 35 while (mjeri==1) {
cvitas 1:b71192bf4318 36 pc.printf("\n\rPodesi polozaj senzora.... Unesi M - mjeri, S - stop\n\r");
cvitas 1:b71192bf4318 37 char c = pc.getc(); // get keyboard data (note numerical ascii range)
cvitas 1:b71192bf4318 38
cvitas 1:b71192bf4318 39 if (c=='s'or c=='S') {
cvitas 1:b71192bf4318 40 mjeri=0;
cvitas 1:b71192bf4318 41 }
cvitas 1:b71192bf4318 42 if (c=='m'or c=='M') {
cvitas 1:b71192bf4318 43 mjeri=1;
cvitas 1:b71192bf4318 44 myled=1;
cvitas 1:b71192bf4318 45 i++;
cvitas 1:b71192bf4318 46 ADCdata1 = AinSensA*1000;
cvitas 1:b71192bf4318 47 ADCdata2 = AinSensB*1000;
cvitas 1:b71192bf4318 48 ADCdata3 = AinSensC*1000;
cvitas 1:b71192bf4318 49 ADCdata4 = AinSensD*1000;
cvitas 1:b71192bf4318 50
cvitas 1:b71192bf4318 51 fprintf(fp, "%d ,%d ,%d ,%d , %d\n", ADCdata1,ADCdata2,ADCdata3,ADCdata4, i);
cvitas 1:b71192bf4318 52 printf("\n\rSa %d Sb %d Sc %d Sd %d zapis br. %d\n\r", ADCdata1, ADCdata2, ADCdata3,ADCdata4, i);
cvitas 1:b71192bf4318 53
cvitas 1:b71192bf4318 54 wait(0.5);
cvitas 1:b71192bf4318 55 myled=0;
cvitas 1:b71192bf4318 56 }
cvitas 1:b71192bf4318 57 }
cvitas 1:b71192bf4318 58
mbed_official 0:cc465aef98cf 59 fclose(fp);
cvitas 1:b71192bf4318 60 myled= 1;
cvitas 1:b71192bf4318 61 pc.printf("\n\rSTOP\n\r");
cvitas 1:b71192bf4318 62 }
mbed_official 0:cc465aef98cf 63 }