Input file name type .csv and use local file system to store data taken from 4 ADC inputs.
Fork of LocalFileSystem_HelloWorld by
main.cpp@1:b71192bf4318, 2013-10-16 (annotated)
- 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?
User | Revision | Line number | New 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 | } |