GPS Program for Eco Car
Dependencies: MBed_Adafruit-GPS-Library SDFileSystem SDWriteTestShellEco TextLCD mbed
Fork of SDWriteTestShellEco by
main.cpp@1:4eff6f5ccb2b, 2015-03-30 (annotated)
- Committer:
- mburns1
- Date:
- Mon Mar 30 19:06:43 2015 +0000
- Revision:
- 1:4eff6f5ccb2b
- Parent:
- 0:d96c133bf9d2
3/30/15
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
mburns1 | 0:d96c133bf9d2 | 1 | #include "mbed.h" |
mburns1 | 0:d96c133bf9d2 | 2 | #include "SDFileSystem.h" |
mburns1 | 0:d96c133bf9d2 | 3 | #include "stdio.h" |
mburns1 | 0:d96c133bf9d2 | 4 | #include "string.h" |
mburns1 | 1:4eff6f5ccb2b | 5 | #include "TextLCD.h" |
mburns1 | 0:d96c133bf9d2 | 6 | |
mburns1 | 0:d96c133bf9d2 | 7 | DigitalOut myled(LED1); //initialize on board LED |
mburns1 | 1:4eff6f5ccb2b | 8 | DigitalIn toggle(p21); //initialize toggle switch |
mburns1 | 0:d96c133bf9d2 | 9 | Serial GPS(p9, p10); //initialize gps board |
mburns1 | 0:d96c133bf9d2 | 10 | Serial pc(USBTX, USBRX);//initialize serial pc connection |
mburns1 | 1:4eff6f5ccb2b | 11 | SDFileSystem sd(p5,p6,p7,p11,"sd"); //Initializes filesystem (DI, D0, CLK, CS) |
mburns1 | 1:4eff6f5ccb2b | 12 | TextLCD lcd(p15, p16, p17, p18, p19, p20); // rs, e, d4-d7 |
mburns1 | 0:d96c133bf9d2 | 13 | int hasbeenopened = 1; |
mburns1 | 0:d96c133bf9d2 | 14 | int haslooped = 0; |
mburns1 | 0:d96c133bf9d2 | 15 | |
mburns1 | 0:d96c133bf9d2 | 16 | int main() { |
mburns1 | 0:d96c133bf9d2 | 17 | char cc; |
mburns1 | 0:d96c133bf9d2 | 18 | toggle.mode(PullUp); |
mburns1 | 0:d96c133bf9d2 | 19 | FILE *fp = fopen("/sd/gpsdata.txt", "a"); |
mburns1 | 0:d96c133bf9d2 | 20 | while(1){ |
mburns1 | 0:d96c133bf9d2 | 21 | while(toggle==1){ |
mburns1 | 0:d96c133bf9d2 | 22 | if (hasbeenopened==0){ |
mburns1 | 0:d96c133bf9d2 | 23 | FILE *fp = fopen("/sd/gpsdata.txt", "a"); |
mburns1 | 0:d96c133bf9d2 | 24 | hasbeenopened=1; |
mburns1 | 0:d96c133bf9d2 | 25 | } |
mburns1 | 0:d96c133bf9d2 | 26 | myled=1; |
mburns1 | 0:d96c133bf9d2 | 27 | cc = GPS.getc(); |
mburns1 | 0:d96c133bf9d2 | 28 | fprintf(fp,"%c", cc); |
mburns1 | 1:4eff6f5ccb2b | 29 | char str1[2] = {cc , '\0'}; |
mburns1 | 1:4eff6f5ccb2b | 30 | char str2[5] = ""; |
mburns1 | 1:4eff6f5ccb2b | 31 | lcd.printf(strcpy(str2,str1)); |
mburns1 | 0:d96c133bf9d2 | 32 | haslooped=1; |
mburns1 | 0:d96c133bf9d2 | 33 | } |
mburns1 | 0:d96c133bf9d2 | 34 | myled=0; |
mburns1 | 0:d96c133bf9d2 | 35 | if (haslooped==1){ |
mburns1 | 0:d96c133bf9d2 | 36 | fclose(fp); |
mburns1 | 0:d96c133bf9d2 | 37 | hasbeenopened=0; |
mburns1 | 0:d96c133bf9d2 | 38 | haslooped=1; |
mburns1 | 0:d96c133bf9d2 | 39 | } |
mburns1 | 0:d96c133bf9d2 | 40 | } |
mburns1 | 0:d96c133bf9d2 | 41 | } |