untested

Dependencies:   SDFileSystem mbed

Committer:
nnguyen45
Date:
Fri Nov 10 02:48:53 2017 +0000
Revision:
2:1ee5d99a9bae
Parent:
0:276de3654c32
Child:
3:734f4f80832c
restructured logic

Who changed what in which revision?

UserRevisionLine numberNew contents of line
nnguyen45 0:276de3654c32 1 #include "mbed.h"
nnguyen45 0:276de3654c32 2 #include <string>
nnguyen45 0:276de3654c32 3 #include <iostream>
nnguyen45 0:276de3654c32 4 using namespace std;
nnguyen45 0:276de3654c32 5 //Emic 2 Hello Speech World Demo
nnguyen45 0:276de3654c32 6 #include "SDFileSystem.h"
nnguyen45 2:1ee5d99a9bae 7 Serial pc(USBTX,USBRX);
nnguyen45 0:276de3654c32 8
nnguyen45 0:276de3654c32 9 SDFileSystem sd(p5, p6, p7, p8, "sd"); // the pinout on the mbed Cool Components workshop board
nnguyen45 0:276de3654c32 10
nnguyen45 0:276de3654c32 11 DigitalOut myled(LED1);
nnguyen45 0:276de3654c32 12
nnguyen45 0:276de3654c32 13 int main()
nnguyen45 0:276de3654c32 14 {
nnguyen45 0:276de3654c32 15 char delimiter = ',';
nnguyen45 0:276de3654c32 16 string letter[2];
nnguyen45 0:276de3654c32 17 string word[1];
nnguyen45 0:276de3654c32 18 char check;
nnguyen45 0:276de3654c32 19 string temp;
nnguyen45 0:276de3654c32 20 string tempword;
nnguyen45 0:276de3654c32 21 int counter = 0;
nnguyen45 0:276de3654c32 22 FILE *fp = fopen("/sd/plan.txt", "r"); //create file
nnguyen45 0:276de3654c32 23 while (!feof(fp)) { // while not end of file
nnguyen45 2:1ee5d99a9bae 24 check = fgetc(fp); //grabs a char from file
nnguyen45 2:1ee5d99a9bae 25 while(check != '\n') { //while not at the end of line for letters
nnguyen45 2:1ee5d99a9bae 26 if((check == delimiter) && (temp.length() == 1)) { //at a comma and have a letter stored
nnguyen45 2:1ee5d99a9bae 27 letter[counter] = temp; //write letter
nnguyen45 2:1ee5d99a9bae 28 counter = counter + 1; //increment counter
nnguyen45 2:1ee5d99a9bae 29 } else {
nnguyen45 2:1ee5d99a9bae 30 temp = check; //store letter
nnguyen45 2:1ee5d99a9bae 31 }
nnguyen45 2:1ee5d99a9bae 32 check = fgetc(fp); //grabs next char
nnguyen45 2:1ee5d99a9bae 33 }
nnguyen45 2:1ee5d99a9bae 34 counter = 0; //reset counter
nnguyen45 2:1ee5d99a9bae 35 check = fgetc(fp); //grabs next char
nnguyen45 2:1ee5d99a9bae 36 while(check != '\n') { //while not at the end of line for words
nnguyen45 2:1ee5d99a9bae 37 if((check == delimiter) && (tempword.length() != 0)) { //when at the comma at the end of a word
nnguyen45 2:1ee5d99a9bae 38 word[counter] = tempword; //write word
nnguyen45 2:1ee5d99a9bae 39 counter = counter + 1; //increment counter
nnguyen45 2:1ee5d99a9bae 40 } else {
nnguyen45 2:1ee5d99a9bae 41 tempword = tempword + check; //concatenate letters to build word
nnguyen45 2:1ee5d99a9bae 42 }
nnguyen45 2:1ee5d99a9bae 43 check = fgetc(fp); //grabs next char
nnguyen45 2:1ee5d99a9bae 44 }
nnguyen45 2:1ee5d99a9bae 45 }
nnguyen45 2:1ee5d99a9bae 46
nnguyen45 2:1ee5d99a9bae 47
nnguyen45 2:1ee5d99a9bae 48
nnguyen45 2:1ee5d99a9bae 49
nnguyen45 2:1ee5d99a9bae 50
nnguyen45 2:1ee5d99a9bae 51 /*
nnguyen45 2:1ee5d99a9bae 52 while (!feof(fp)) { // while not end of file
nnguyen45 0:276de3654c32 53 check = fgetc(fp); // get data from the file
nnguyen45 2:1ee5d99a9bae 54 pc.printf("%s", check);
nnguyen45 0:276de3654c32 55 if(check == '\n') {
nnguyen45 0:276de3654c32 56 counter = 0;
nnguyen45 2:1ee5d99a9bae 57 pc.printf("%s", check);
nnguyen45 0:276de3654c32 58 check = fgetc(fp);
nnguyen45 0:276de3654c32 59 tempword = check;
nnguyen45 0:276de3654c32 60 } else if(tempword.length() != 0) {
nnguyen45 0:276de3654c32 61 tempword = tempword + check;
nnguyen45 0:276de3654c32 62 } else if(check != delimiter) {
nnguyen45 0:276de3654c32 63 temp = check;
nnguyen45 0:276de3654c32 64 } else if((check == delimiter) && (temp.length() == 1)) {
nnguyen45 0:276de3654c32 65 letter[counter] = temp;
nnguyen45 0:276de3654c32 66 counter = counter + 1;
nnguyen45 0:276de3654c32 67 } else {
nnguyen45 0:276de3654c32 68 word[counter] = tempword;
nnguyen45 0:276de3654c32 69 counter = counter + 1;
nnguyen45 0:276de3654c32 70 }
nnguyen45 2:1ee5d99a9bae 71 }*/
nnguyen45 0:276de3654c32 72 fclose(fp); //close file
nnguyen45 2:1ee5d99a9bae 73
nnguyen45 0:276de3654c32 74 }